Не удалось заставить работать обратный DNS

Я изо всех сил пытался заставить работать обратный DNS, используя nslookup в Ubuntu 12.04. Вот выходные данные команды nslookup и содержимое различных сетевых файлов конфигурации.

Что может быть причиной того, что nslookup не работает? Кроме того, зачем мне подключение к Интернету, чтобы получить обратный поиск для записи в файле /etc/hosts?

training@guest1:/etc/network$ nslookup 192.168.1.101
Server:     8.8.8.8
Address:    8.8.8.8#53
server can't find 101.1.168.192.in-addr.arpa.: NXDOMAIN

training@guest1:/etc/network$ cat /etc/hosts
127.0.0.1   localhost
#127.0.1.1  Slave1
192.168.1.101 MyUbuntuLaptop

# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

training@guest1:/etc/network$ cat /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 192.168.1.201
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
dns-nameservers 8.8.8.8 8.8.4.4

training@guest1:/etc/network$ ping MyUbuntuLaptop
ping MyUbuntuLaptop (192.168.1.101) 56(84) bytes of data.
64 bytes from MyUbuntuLaptop (192.168.1.101): icmp_req=1 ttl=64 time=0.113 ms
64 bytes from MyUbuntuLaptop (192.168.1.101): icmp_req=2 ttl=64 time=0.222 ms
7
задан 26 January 2013 в 19:22

3 ответа

Краткий ответ: nslookup не использует файл /etc/hosts для выполнения каких-либо действий.

Длинный ответ:

Похоже, что при запуске nslookup будут использоваться только серверы имен, перечисленные в /etc/resolv.conf. Такое поведение также воспроизведено в host. Если у вас есть IP-адреса, перечисленные в файлах /etc/hosts, вам не нужно использовать обратный DNS или наоборот. Я полагаю, что так думали в этом процессе.

Устроив процесс, я увидел, что он даже не смотрит на файл /etc/hosts, хотя в моем /etc/nsswitch.conf DNS был установлен на files dns.

Источники: man host man nslookup

0
ответ дан 26 January 2013 в 19:22

Серверные приложения DNS для нахождения информаций DNS очень тверды, и берет больше раз, чем по сравнению с другими поисковыми сайтами поиска DNS в Интернете, который очень ясен и короток. Я всегда ищу свои запросы DNS по WhoisXY.com, где это простым поиском для идентификации деталей.

0
ответ дан 26 January 2013 в 19:22

О частных адресах

IP-адреса, которые вы пытаетесь разрешить в имена (обратный поиск), являются так называемыми частными адресами, как определено в RFC 1918 [ 118]. Короче говоря, здесь определен следующий диапазон адресов IPv4:

  • 10.0.0.0/8
  • 172.16.0.0/12
  • 192.168.0.0/16

В отличие от публичных адресов, они не маршрутизируются через Интернет и предназначены исключительно для использования за NAT в частной сети. Многие люди используют это, и поэтому абсолютно не уникальны. По этой причине неинтересно, чтобы публичные DNS-серверы отвечали на запросы обратного просмотра для частных.

Почему это не работает

Google и все другие общедоступные DNS-серверы в Интернете не заинтересованы в частных адресах, поскольку они не маршрутизируются через Интернет. Так что, по сути, вы делаете это неправильно, запрашивая сервер, который не несет ответственности за вашу сеть.

Если вы хотите переопределить это локальной конфигурацией, как в /etc/hosts, это не сработает:

Локальный DNS-сервер [ 1121]

Если вы хотите иметь возможность выполнять обратный поиск в вашей частной локальной сети, то вам придется настроить собственный DNS-сервер с соответствующими записями и использовать все локальные клиенты, использующие это DNS сервер Возможно, вы уже используете один, но вы не указали ничего из этого в своем вопросе, и если у вас есть, вы, похоже, не используете его.

Быстрое универсальное решение, которое я могу порекомендовать, это Dnsmasq Install Dnsmasq . Это сервер DHCP и DNS в одном 1 с преимуществом использования имени хоста для DHCP также в DNS. Из справочной страницы dnsmasq приведен следующий отрывок:

Dnsmasq принимает запросы DNS и отвечает на них из небольшого локального кэша или перенаправляет их на реальный рекурсивный сервер DNS. Он загружает содержимое /etc/hosts, чтобы можно было разрешить локальные имена хостов, которые не отображаются в глобальном DNS, и также отвечает на запросы DNS для хостов, настроенных по протоколу DHCP.

Настройка полного Dnsmasq здесь немного выходит за рамки, поскольку он заменит ваш текущий DHCP-сервер, который, как я не знаю, является приемлемым решением. В любом случае, для этой части конфигурации этот параметр будет важен:

domain=mydomain.lan,192.168.1.0/24,local

В котором вы указываете ему обслуживать сеть 192.168.1.0/24 с короткими именами хостов для использования доменного имени mydomain.lan и будет не будет перенаправлен на восходящий рекурсивный DNS-сервер. Результатом будет то, что машина с именем хоста myhost, запрашивающая динамический адрес, будет автоматически использоваться в локальном преобразователе и прослушивает запросы myhost.mydomain.lan, а обратный указатель будет разрешаться аналогичным образом.

Я не знаю, как "Как мне настроить Dnsmasq для домашней сети?" вопрос на этом сайте. Если вам или другим это интересно, я буду рад ответить на вопрос.

1 На самом деле, даже больше, например, TFTP-сервер. [ тысяча сто тридцать девять]

0
ответ дан 26 January 2013 в 19:22

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

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