Диагностирование проблем поиска DNS - возможный плохой nsswitch.conf или другая проблема

tl:dr моя система человечности 16.04 часто изо всех сил пытается разрешить DNS, с которым у моих коллег (главным образом использующий OSX/mac) нет проблем. Мы все используем 8.8.8.8 из той же сети Wi-Fi. Рассматриваемые домены являются URL AWS, которые часто создаются или обновляются. Считав этот вопрос - я боюсь, что мой nsswitch.conf не имеет смысла.

/etc/nsswitch.conf содержит строку:

hosts:          files mdns4_minimal [NOTFOUND=return] dns

Это выглядит правильным? Если я понимаю справедливо, что это проверит (в порядок) файл hosts, mdns (локальный DNS?) затем перестали работать, прежде чем это проверило бы серверы DNS?

выполнение команды nmcli dev show | grep DNS (от этого вопроса - как знать то, что DNS я использую) возвращает следующее:

IP4.DNS[1]:                             8.8.8.8
IP4.DNS[2]:                             8.8.4.4

Я также проверил, что мой hostfile не содержит неожиданных сталкивающихся записей. Где еще я должен искать подсказки?

Поиски DNS последовательно перестали работать (т.е. - это не медленный сервер DNS, который перестал работать на первой попытке, пока значение не кэшируется).

Пример перестал работать, nslookup (с доменом, измененным для удаления домена работы), похож:

> nslookup example.somedomain.com:      127.0.1.1
Address:    127.0.1.1#53

Non-authoritative answer:
*** Can't find example.somedomain.com: No answer

nslookup инструменты онлайн могут разрешить URL правильно и показать, что время жизни составляет 59 секунд, довольно коротких, но не сумасшедшее.

Править: Больше информации (который я действительно не понимаю, но могу помочь эксперту) после чтения еще нескольких вопросов:

вышеупомянутое nslookup, кажется, использует локальный сервер DNS (127.0.1.1) использование nslookup, но явно установка сервера DNS разрешило URL правильно:

> nslookup example.somedomain.com 8.8.8.8
Server:     8.8.8.8
Address:    8.8.8.8#53

Non-authoritative answer:
Name:   example.somedomain.com
Address: 10.116.[blah].[blah]
Name:   example.somedomain.com
Address: 10.116.[blah].[blah]

/etc/NetworkManager/NetworkManager.conf похож на следующее:

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

[ifupdown]
managed=false
1
задан 9 May 2018 в 17:39

1 ответ

Кажется, существует проблема с локальным механизмом кэша DNS, обеспеченным dnsmasq (который работает в localhost, 127.0.1.1). Не уверенный точно, какой но если Вы отключаете dnsmasq кэш и всегда спрашиваете основное устройство (8.8.8.8) и вторичный (8.8.4.4) серверы DNS непосредственно вместо этого, это могло бы работать лучше.

Для отключения dnsmasq, Вы редактируете файл /etc/NetworkManager/NetworkManager.conf и прокомментируйте dns=dnsmasq как в конфигурации ниже:

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

Надежда это удается для Вас :)

1
ответ дан 7 December 2019 в 15:19

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

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