DNS-сервер провайдера используется вместо локального DNS

Проблема

Во внутренней сети моей компании есть сервер разработки devserver.mycompany.com

Обычно я могу подключиться к этому серверу без проблем, но иногда (кажется мне случайным) Ubuntu не сможет разрешить адрес.

Другая информация и наблюдения

Когда я бегу nmcli dev list iface eth0 в терминале я вижу два настроенных DNS-сервера:

IP4.DNS[1]:                             192.168.50.103
IP4.DNS[2]:                             128.255.1.3

Второй DNS-сервер является сервером моего провайдера.

У меня никогда не было этой проблемы на моем разделе Windows, который настроен на использование тех же двух DNS-серверов.

Когда я испытываю проблему:

  • nslookup devserver.mycompany.com терпит неудачу
  • nslookup devserver.mycompany.com 128.255.1.3 все времятерпит неудачу (не удивительно, devserver не является публичным сервером)
  • nslookup devserver.mycompany.com 192.168.50.103 работает

Вот фактический результат nslookup:

Ubuntu-14:~$ nslookup devserver.mycompany.com
Server:     127.0.1.1
Address:    127.0.1.1#53

** server can't find devserver.mycompany.com: NXDOMAIN

Вопросы

  • Из вышеприведенного вывода похоже, что Ubuntu пытается использовать локальный DNS-сервер. Правильный? Это кэширует неудачный поиск на моей локальной машине?
    • Если это кеширование, как я могу очистить кеш?
  • Ubuntu иногда использует этот второй DNS-сервер? Зачем? Это балансировка нагрузки? Местный медленнее?
  • Как мне это исправить? Я не хочу удалять второй DNS-сервер в случае отказа основного.
  • И, наконец, почему я не испытываю эту проблему в Windows?

Информация о версии Ubuntu

Ubuntu 14.04 LTS без выдающихся обновлений.

Все сети были настроены более или менее автоматически. Используя DHCP

1 ответ

Из вышеприведенного вывода похоже, что Ubuntu пытается использовать локальный DNS-сервер. Правильный? Это кэширует неудачный поиск на моей локальной машине?

Да, Ubuntu использует все, что было предоставлено с арендой dhcp, более конкретно dnsmasq, плагин, который позаботится об этом для network-manager,

Ubuntu иногда использует этот второй DNS-сервер? Зачем? Это балансировка нагрузки? Местный медленнее?

Если первый днс не удается разрешить, то dnsmasq следует перенаправить запрос на вторичный днс. По крайней мере, это идея.

В случае, если вы хотите использовать свой собственный DNS-сервер Лично я всегда использую supersede domain-name-server xxx.xx.xxx.xxx в /etc/dhcp/dhclient.conf сказать моей системе Ubuntu заменить все днс, которые она получает через аренду dhcp, на мой собственный сервер. Вот выдержка из этого файла:

30)serg@ubuntu[/home/xieerqi]
>_ cat /etc/dhcp/dhclient.conf                                                 
# Configuration file for /sbin/dhclient, which is included in Debian's
#   dhcp3-client package.
#
# This is a sample configuration file for dhclient. See dhclient.conf's
#   man page for more information about the syntax of this file
#   and a more comprehensive list of the parameters understood by
#   dhclient.
#
# Normally, if the DHCP server provides reasonable information and does
#   not leave anything out (like the domain name, for example), then
#   few changes must be made to this file, if any.
#

option rfc3442-classless-static-routes code 121 = array of unsigned integer 8;

#send host-name "andare.fugue.com";
send host-name = gethostname();
#send dhcp-client-identifier 1:0:a0:24:ab:fb:9c;
#send dhcp-lease-time 3600;
#supersede domain-name "fugue.com home.vix.com";
supersede domain-name-servers 208.67.220.220;
#prepend domain-name-servers 127.0.0.1;
request subnet-mask, broadcast-address, time-offset, routers,
    domain-name, domain-name-servers, domain-search, host-name,
    dhcp6.name-servers, dhcp6.domain-search,
    netbios-name-servers, netbios-scope, interface-mtu,
    rfc3442-classless-static-routes, ntp-servers,
    dhcp6.fqdn, dhcp6.sntp-servers;

После настройки и повторного подключения или перезапуска network-managerвот что у меня есть:

31)serg@ubuntu[/home/xieerqi]
>_ nmcli dev list | grep -i dns                                                
IP4.DNS[1]:                             208.67.220.220

Nslookup сообщит Server: 127.0.1.1 а также Address: 127.0.1.1#53 так как это Network-Manager dsnmasq который прослушивает этот адрес и использует все, что было предоставлено dhcp (в данном случае замещенный dns)

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