Nslookup разрешает поисковый домен, а ping - нет (14.10)
В моей компании многие из наших конфигурационных скриптов и т. Д. Используют только имя сервера. Например, http://server скорее, чем http://server.company.com, Я настроил поисковый домен в инструменте сетевых подключений GUI. Я также настроил это в /etc/resolvconf/resolv.conf.d/head, но это не работает правильно.
Странно то, что некоторые инструменты, такие как nslookup или host, разрешают корректный IP, но другие инструменты, такие как ssh, ping, git и веб-браузеры, этого не делают. Я могу подключиться, если я использую полное доменное имя. Что может помешать правильному разрешению поискового домена?
Ниже найдите соответствующий вывод некоторых команд.
Nslookup:
$ nslookup server
Server: 192.168.200.53
Address: 192.168.200.53#53
server.company.com canonical name = server001.company.com.
Name: server001.company.com
Address: 192.168.200.103
Ведущий:
$ host server
server.company.com is an alias for server001.company.com.
server001.company.com has address 192.168.200.103
Пинг:
$ ping server
ping: unknown host server
$ ping server.company.com
PING server001.company.com (192.168.200.103) 56(84) bytes of data.
64 bytes from server001.company.com (192.168.200.103): icmp_seq=1 ttl=64 time=4.61 ms
Я использую ping в качестве примера, потому что это просто, но большинство других инструментов, которые мне нужно использовать, показывают те же результаты, что и ping.
Дайте мне знать, если вам нужно больше конфигурационных файлов или информации.
В /etc/hosts нет информации, касающейся сервера, к которому я пытаюсь подключиться.
Вот /etc/resolv.conf, сгенерированный resolvconf.
# Add Company Nameservers and Domain
nameserver 192.168.200.53
nameserver 192.168.200.65
search company.com
nameserver 127.0.1.1
search company.com
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
# DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 127.0.1.1
search hsd1.co.comcast.net
И /etc/network/interfaces:
# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback
3 ответа
Ваш файл resolv.conf - беспорядок. Должно быть не более одного search строка в файле, например. Похоже, что-то отличное от resolvconf пишет в файл. Resolvconf всегда записывает файл resolv.conf в следующем формате:
head
base + dynamic content
tail
где head, base а также tail это файлы в /etc/resolvconf/resolv.conf.d/. Файл head обычно просто содержит комментарий # Dynamic resolv.conf(5) file... OVERWRITTEN, Вы говорите, что добавили search строка файла, но ваш файл resolv.conf содержит другие элементы над вышеупомянутым комментарием.
Я предполагаю, что /etc/resolv.conf больше не является символической ссылкой на /run/resolvconf/resolv.conf и / или что вы используете какое-то стороннее программное обеспечение для настройки сети, которое отображается в /etc/resolv.conf в Кстати, это не совместимо с Ubuntu.
Решение: прекратите использование этого программного обеспечения или исправьте его, а затем запустите sudo dpkg-reconfigure resolvconf восстановить символическую ссылку в /etc/resolv.conf.
Я уверен, что ping, ssh и, возможно, другие используют файл /etc/host. Возможно, вы захотите попытаться определить там и имена серверов. 192.168.1.100 server Затем либо создайте исходный файл, либо выйдите из системы и войдите снова. На этот раз, когда вы пингуете сервер или ssh user @ server Это должно работать. Что касается веб-сервера, вам нужно будет добавить запись A в IP-адрес вашего DNS-сервера. Затем вы сможете получить доступ через http://server/.
редактировать
Является ли какая-либо часть этой настройки с использованием Samba или Wins Server, или я что-то совершенно неправильно понял.
Пытаться
echo " dns-search company.com" >> /etc/network/interfaces
Затем следует перезагрузка (если вы не знаете, как сбросить все кэши DNS, в браузере и системе, перезагрузка сети будет недостаточной).