Как получить адрес DNS-сервера, специфичный для каждого сеанса ppp. Например, у меня есть два сеанса ppp, каждый из которых подключен к другому поставщику услуг, как мне узнать IP-адрес DNS-сервера, назначенный каждым поставщиком услуг? Как правило, файл /etc/ppp/resolv.conf будет перезаписан новым IP-адресом DNS всякий раз, когда устанавливается новый сеанс ppp. Есть ли способ сохранить отдельные файлы для DNS-серверов для каждого поставщика услуг?
man pppd
:
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 /etc/ppp/
resolv.conf file containing one or two nameserver lines with the
address(es) supplied by the peer.
Поэтому просто оцените DNS1 и DNS2 в своем скрипте ip-up (который запускается один раз после установления PPP-соединения), и, если вам понадобится эта информация позже, сохраните ее где-нибудь.
Но, как писал mailq, от такого рода функций действительно мало пользы.