У меня следующая проблема:
если я пингую несуществующее доменное имя, я получаю ответ с IP-адреса
# ping nosuchdomain.common
PING nosuchdomain.common.myrealdomain.com (192.168.1.1) 56(84) bytes of data.
64 bytes from myrealdomain.com (192.168.1.1): icmp_req=1 ttl=59 time=0.184 ms
В любом случае, я бы хотел, чтобы преобразователь работал вот так
#ping nosuchdomain.common
ping: unknown host nosuchdomain.common
Мой /etc/resolv.conf теперь выглядит так:
# nameserver config
nameserver 8.8.8.8
Есть идеи, где мне искать, чтобы преобразователь возвращал «неизвестный хост»?
Спасибо всем за ваши предложения, я случайно нашел решение своей проблемы, а именно: явно добавить эту строку в /etc/resolv.conf
search .com
Как только я это сделал, все заработало, как ожидалось.
Я думаю, у решателя есть значение по умолчанию search
как область того, что определено в /etc/hostname
к которому он добавляет тот домен, который не может разрешить напрямую.
И поскольку мой DNS для этого домена был настроен с использованием подстановочного знака, это объясняет, почему созданные домены были разрешены на определенный IP-адрес.
Обычно вы должны заканчивать доменное имя точкой, если вы этого не сделаете, ваш преобразователь попытается присоединить поисковый домен из вашей сетевой конфигурации (например, из DHCP)
Ваш пример с nosuchdomain.common
следует записать как nosuchdomain.common.
Чтобы узнать причину, по которой установлен поисковый домен, вы можете использовать статический IP-адрес и установить другой DNS-сервер, и тогда вы не должны получать поисковый домен. Вам следует проверить конфигурацию / etc / network / interfaces на предмет параметра search-domain:
#/etc/network/interfaces
# The primary network interface
auto eth0
iface eth0 inet static
address 192.168.1.100
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 8.8.8.8
dns-search myrealdomain.com