Bekijk de volledige versie : pppd опции
Подскажите пожалуйста, или хотя бы намекните, как можно закомментировать строку usepeerdns в файле /tmp/ppp/options.wan0 или каким образом можно внести изменения, чтобы не использовалась данная опция. Понятно, что options.wan0 это временный файл, но никак не могу понять, откуда берутся и где хранятся изначальные настройки.
Роутер WL-500gP, прошивка 1.9.2.7-10. Флэшка и ЖД не используются.
за это отвечает переменная nvram dnsenable_x. Посмотреть текущее значение:
nvram show | grep dnsenable
изменить:
nvram set dnsenable_x=0 или 1
Выполнил данную команду, сохранил и перегрузил.
nvram set dnsenable_x=0
flashfs save && flashfs commit && flashfs enable && reboot
Также попробовал поставить переменные wan0_dnsenable_x=0, wan_dnsenable_x=0 и usepeerdns_x=0
[admin@WL-500gP root]$ nvram show | grep dnsenable
dnsenable_x=0
size: 11520 bytes (21248 left)
wan0_dnsenable_x=0
wan_dnsenable_x=0
[admin@WL-500gP root]$ nvram show | grep usepeerdns
usepeerdns_x=0
size: 11520 bytes (21248 left)
Ничего не изменилось, после перезагрузки все равно появляется usepeerdns в options.wan0
nvram commit надо, а не flashfs дергать.
nvram commit надо, а не flashfs дергать.
Вот так делал, это неправильно?
nvram set dnsenable_x=0
nvram commit
flashfs save && flashfs commit && flashfs enable && reboot
[admin@WL-500gP root]$ cat /tmp/ppp/options.wan0
noauth refuse-eap
user ' '
password ' '
nomppe nomppc
plugin rp-pppoe.so nic-vlan1
mru 1492 mtu 1492
maxfail 0
usepeerdns
persist
ipcp-accept-remote ipcp-accept-local noipdefault
ktune
default-asyncmap nopcomp noaccomp
novj nobsdcomp nodeflate
lcp-echo-interval 10
lcp-echo-failure 6
unit 0
А может есть какие нибудь другие способы?
вот сторка в исходниках, которая добавляет данную строку:
if (nvram_invmatch(strcat_r(prefix, "dnsenable_x", tmp), "0"))
fprintf(fp, "usepeerdns\n");
В первом посте я был слегка неправ, т.к. к dnsenable_x должен добавляться префикс
Т.е. правильный ответ должен быть такой:
nvram set wan_dnsenable_x=0
nvram set wan0_dnsenable_x=0
nvram commit
reboot
и вообще, в веб интерфейсе есть опция "Get DNS Server automatically" Уж хотябы вебморду то можно было просмотреть внимательно без необходимости залезания в исходники...
и вообще, в веб интерфейсе есть опция "Get DNS Server automatically" Уж хотябы вебморду то можно было просмотреть внимательно без необходимости залезания в исходники...
Все начинают с веб-морды, а потом, если не хватает функционала лезут в более тонкие настройки :)
IP Config - WAN & LAN - WAN IP Setting - WAN Connection Type: PPPoE
IP Config - WAN & LAN - WAN IP Setting - Get IP automatically? - Yes
IP Config - WAN & LAN - WAN DNS Setting - Get DNS Server automatically? - Yes
IP Config - WAN & LAN - PPPoE, PPTP or L2TP Account - User Name: Password:
IP Config - WAN & LAN - PPPoE, PPTP or L2TP Account - Service Name(option): ПУСТО
IP Config - WAN & LAN - Route - Use DHCP routes? - Yes
Начну сначала. Наш домашний провайдер, решил полностью перейти на DHCP + PPPoE. Соответственно по DHCP выдаются настройки локальный сети провайдера, а по PPPoE настройки интернет соединения.
В данной ситуации меня не устраивает, что при таких настройках используются внешние DNS сервера провайдера, а доступ к ним осуществляется через NAT сервер, что не очень удачно, особенно в прайм-тайм, т.к. значительно возрастают пинги до DNS серверов.
Мне необходимо сделать так, чтобы ипы DNS серверов (77.87.200.2 и 77.87.207.254) получаемые при PPPoE соединении, не записывались в файл resolv.conf, а использовались ипы DNS серверов (10.20.1.4 и 10.20.1.5) получаемые по DHCP. Для этого, как я понял из PPPD MAN, есть опция USEPEERDNS, которая разрешает или запрещает запись полученных настроек DNS. По умолчанию эта опция прописана в options.wan0, а я ее хочу закомментировать.
USEPEERDNS
Ask the peer for up to 2 DNS server addresses. The addresses supplied by the peer (if any) are passed to the /etc/ppp/ip-up script in the environment variables DNS1 and DNS2, and the environment variable USEPEERDNS will be set to 1. In addition, pppd will create an /var/run/ppp/resolv.conf file containing one or two nameserver lines with the address(es) supplied by the peer.
Искал по этому форуму и на поисковиках, но ничего подобного не нашел.
Может быть для решения данной задачи, я двигаюсь в неправильном направлении.
Вот кусок лога:
Jan 1 03:00:06 kernel: vlan1: Setting MAC address to 00 1a 92 7e XX XX.
Jan 1 03:00:06 kernel: VLAN (vlan1): Underlying device (eth0) has same MAC, not checking promiscious mode.
Jan 1 03:00:06 dhcp client: deconfig: lease is lost
Jan 1 03:00:10 dnsmasq[65]: read /etc/hosts - 2 addresses
Jan 1 03:00:10 dnsmasq[65]: using nameserver 10.20.1.5#53
Jan 1 03:00:10 dnsmasq[65]: using nameserver 10.20.1.4#53
Jan 1 03:00:10 dhcp client: bound IP : 10.20.4.XXX from 10.20.4.XXX (мой внутренний ИП)
Jan 1 03:00:10 pppd[95]: Plugin rp-pppoe.so loaded.
Jan 1 03:00:10 pppd[95]: RP-PPPoE plugin version 3.10 compiled against pppd 2.4.5
Jan 1 03:00:10 pppd[96]: pppd 2.4.5 started by admin, uid 0
Jan 1 03:00:10 pppd[96]: PPP session is 23593 (0x5c29)
Jan 1 03:00:10 pppd[96]: Connected to 00:15:17:50:bd:60 via interface vlan1
Jan 1 03:00:10 pppd[96]: Using interface ppp0
Jan 1 03:00:10 pppd[96]: Connect: ppp0 <--> vlan1
Jan 1 03:00:10 pppd[96]: CHAP authentication succeeded: Welcome!!
Jan 1 03:00:10 pppd[96]: CHAP authentication succeeded
Jan 1 03:00:10 pppd[96]: peer from calling number 00:15:17:50:BD:60 authorized
Jan 1 03:00:10 pppd[96]: local IP address 77.87.202.XXX (мой внешний ИП)
Jan 1 03:00:10 pppd[96]: remote IP address 2.2.2.2
Jan 1 03:00:10 pppd[96]: primary DNS address 77.87.207.254
Jan 1 03:00:10 pppd[96]: secondary DNS address 77.87.200.2
Jan 1 03:00:11 dnsmasq[65]: read /etc/hosts - 2 addresses
Jan 1 03:00:11 dnsmasq[65]: using nameserver 77.87.200.2#53
Jan 1 03:00:11 dnsmasq[65]: using nameserver 77.87.207.254#53
Oct 11 00:24:22 PPPoE: connected to ISP
Oct 11 00:24:22 pppd[96]: System time change detected.
Oct 11 00:24:32 ntp client: Synchronizing time with ru.pool.ntp.org ...
а если выключить эту фичу в вебморде что будет? Можно в добавок прописать требуемые значения DNS серверов
а если выключить эту фичу в вебморде что будет? Можно в добавок прописать требуемые значения DNS серверов
В том то и дело, что через веб-морду это не отключить и не закомментировать. Пробовал прописывать в Additional pppd options: #usepeerdns, но при этом добавляется новая строка в файле options.wan0, а существующая естественно не удаляется.
Конечно, можно прописать DNS сервера вручную, но провайдер предупредил, что внутренние адреса DNS и другие настройки, могут меняться в связи с изменением структуры сети.
поставьте первичное соединение по dhcp, а pppd запускайте самостоятельно из post-boot, например, с теми опциями какими надо.
поставьте первичное соединение по dhcp, а pppd запускайте самостоятельно из post-boot, например, с теми опциями какими надо.
Думал об этом, но тогда для этого надо использовать флэшку, а я не использую ее за ненадобностью. А возможно ли без флэшки куда нибудь прописать данные файлы и использовать их? Везде, кроме /tmp/ пишет, что файловая система только на чтение. Еще хочу попробовать скопировать файл options.wan0, изменить его и использовать его с опцией pppd file, т.е. подключение внешнего файла с настройками.
для этого есть flashfs. Почитайте тему про настройку с нуля, чтобы получить представление о ее функционировании