LINUX.ORG.RU
ФорумAdmin

pppd и /etc/resolv.conf


0

0

Что нужно дописать чтобы после поднятия сессии по ppp полученные DNS сервера на время сессии писались в /etc/resolv.conf? В скрипте для запуска pppd прописано usepeerdns, при поднятии сессии DNS сервера отдаются только не прописываются в системе.

Заранее спасибо


Можно, конечно, дописать в /etc/ppp/ip-up:

[ ! -f /etc/resolf.conf.np ] && cp /etc/resolv.conf /etc/resolv.conf.np
if [ -n "$DNS1" -o -n "$DNS2" ] ; then
> /etc/resolv.conv
[ -n "$DNS1" ] && echo nameserver $DNS1 >> /etc/resolv.conv
[ -n "$DNS2" ] && echo nameserver $DNS2 >> /etc/resolv.conv
fi

а в /etc/ppp/ip-down дописать:
mv -f /etc/resolv.conf.np /etc/resolv.conf

Но во всяких desktop ориентированных дистрибутивах типа Ubuntu лучше так не делать...

mky ★★★★★
()

Тоже столкнулся с подобной проблемой. Решения так и не нашел, поэтому забил на "стандартные" для моей слаквари методы настройки сети через rc.inet1.conf.

1) Т.к. у меня ноут, и в различных ситуациях требуются различные настройки сети, то нужны к.л. сетевые профили. 2) Я сделал набор сриптов, каждый из которых настраивает всю сеть. Один из них (для домашней сети) после поднятия интерфейсов запускает pptp и пишет echo "nameserver 192.168.5.85" > resolv.conf. Другой (для работы) запускает dhcpcd, который в resolv.conf сам чтото пишет.

ierton ★★
()
Ответ на: комментарий от PashaP

> А почему во всяких desktop ориентированных дистрибутивах лучше так не делать?

там возможно есть какието гуёвые настроечные утилиты, которые не расчитывают, что конфиги могут поменять руками.

ierton ★★
()
Ответ на: комментарий от annoynimous

> А я использую pptpconfig

я тож пытался енто собрать, но ниасилил. вродебы оно хочет гномопитоновский модуль какойто, а мои кеды его неустраивают.

ierton ★★
()

apt-get install resolvconf (ну как там в Федоре7 сам сообразишь)

Description: nameserver information handler
 Resolvconf is a framework for keeping track of the system's
 information about currently available nameservers. It sets
 itself up as the intermediary between programs that supply
 nameserver information and programs that use nameserver
 information. Examples of programs that supply nameserver
 information are: ifupdown, DHCP clients, the PPP daemon and
 local nameservers. Examples of programs that use this
 information are: DNS caches, resolver libraries and the
 programs that use them.

З.Ы. надеюсь это не дебиан-специфичная приблуда.

sdio ★★★★★
()
Ответ на: комментарий от annoynimous

> А я использую pptpconfig

А что это за зверь?

PashaP
() автор топика
Ответ на: комментарий от ierton

Интересно то, что есть же какие-то встроенные средства для этого. Например в /etc/resolv.conf уже прописаны адреса, приходим в другое место где раздают вай-фай и адреса раздает dhcp. Подключаемся - все получаем, cat /etc/resolv.conf - нужные для той сети адреса днс серверов. Далее разрываем соединение - cat /etc/resolv.conf видим то, что было раньше. Тут можно предположить что некий скрипт скопировал старый файл и т.п. и т.д. Но ситуация такая, соединились получили адреса, а дальше все повисло. Кнопкой вырубаем комп, поднимаемся и в /etc/resolv.conf видим то, что было прописано руками...

PashaP
() автор топика
Ответ на: комментарий от sdio

>apt-get install resolvconf (ну как там в Федоре7 сам сообразишь)

>З.Ы. надеюсь это не дебиан-специфичная приблуда.

Видимо ебиан-специфичная приблуда :)

PashaP
() автор топика
Ответ на: комментарий от mky

> Можно, конечно, дописать в /etc/ppp/ip-up: [...] > а в /etc/ppp/ip-down дописать: > mv -f /etc/resolv.conf.np /etc/resolv.conf

Примерно так я и сделал, только одна непонятка. После того как этим скриптом файл копируется, у него изменяются права на 600, понятно что chmod 644 спасет, но вот почему они меняются?

PashaP
() автор топика

pppd вроде как пишет в /etc/ppp/resolv.conf
У меня всю жизнь просто симлинк /etc/ppp/resolv.conf -> /etc/resolv.conf и работает.

nnkd
()
Ответ на: комментарий от nnkd

> pppd вроде как пишет в /etc/ppp/resolv.conf > У меня всю жизнь просто симлинк /etc/ppp/resolv.conf -> > /etc/resolv.conf и работает.

И в правду создается /etc/ppp/resolv.conf :) Только по окончании работы pppd в /etc/ppp/resolv.conf остаются адреса полученные им от последней сессии, соответственно прописывание симлинка проблему не решает.

PashaP
() автор топика
Ответ на: комментарий от PashaP

в /etc/resolv.conf пишет dhcpcd. Причем старый вариант файла она сохраняет, а перед завершением своей работы ставит его на место. Чтото подобное можно организовать и ручками, через ip-up, ip-down и /etc/ppp/resolv.conf.

ierton ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.