Как работает разрешение DNS без записей сервера имен в resolv.conf?

У меня есть запрос по поводу файла resolv.conf.

Если я удалю запись сервера имен из файла /etc/resolv.conf, мой браузер все еще сможет выполнять DNS-запрос. Насколько я знаю, любой URL сначала ищется на сервере имен, который указан в этом файле.

Я где-то читал, что если запись resolv.conf установлена ​​на localhost, то это означает, что сервер имен работает на локальном хосте. Кто-то может указать, что это за услуга?

После удаления записи сервера имен из resolv.conf команды, подобные nslookup, не работают должным образом. Однако когда я пытаюсь открыть сайт из браузера, я вижу в wireshark, что запрос все еще отправляется на тот же IP-адрес сервера имен, хотя я удалил его из файла resolv.conf. Это явно означает, что запущена какая-то другая служба сервера имен.

Любая помощь?

3
задан 25 May 2015 в 14:34

1 ответ

Администратор сети использует динамично Ваш /etc/resolv.conf с dnsmasq. Каждому соединению можно было перечислить наш сервер DNS.

Если Вы хотите избежать этого поведения, можно сделать это

В /etc/NetworkManager/NetworkManager.conf прокомментируйте dns=dnsmasq

sudo nano /etc/NetworkManager/NetworkManager.conf

[main]
plugins=ifupdown,keyfile,ofono
#dns=dnsmasq

no-auto-default=00:22:64:4E:6F:70,

[ifupdown]
managed=fals

и перезапустите сервис NM

sudo restart network-manager

С этим /etc/resolv.conf больше не иждивенец на resolvconf пакете и обновляется на основе записей DNS каждого соединения в Администраторе сети

Также можно включить сервер имен /etc/resolv.conf. Если Вы не установили DNS в NM, для каждого подключения, это будет использоваться

sudo nano /etc/resolv.conf

nameserver 8.8.4.4
nameserver 8.8.8.8

Можно остановить и отключить resolvconf сервис и только использует статические определенные серверы DNS от /etc/resolv.conf

Остановите сервис resolvconf

sudo service resolvconf stop

отключите его

sudo update-rc.d resolvconf disable

отключить resolvconf перезаписывать resolv.conf

создать /etc/init/resolvconf.override с однострочным руководством

echo 'manual' | sudo tee /etc/init/resolvconf.override

удалите символьную ссылку /etc/resolv.conf

rm /etc/resolv.conf

создать resolv.conf со статической записью DNS

echo "namserver x.x.x.x." > /etc/resolv.conf
2
ответ дан 25 May 2015 в 14:34

Другие вопросы по тегам:

Похожие вопросы: