LINUX.ORG.RU
решено ФорумAdmin

Не пигнуются компьютеры по доменому имени

 ,


0

1

Здравствуйте товарищи! Поставил ubuntu 12.04.2, network-manager автоматически получил ip адрес, днс, шлюз. Но при попытке пропинговать какой либо хост по доменому имени сразу появляется сообщение

ping: unknown host 
. По ip все хосты пингуются нормально.

Содержимое файла /etc/network/interfaces

auto lo
iface lo inet loopback

Содержимое файла /etc/resolv.conf

# 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.0.1
search tri-z.local
Если я правильно понимаю в resolv.conf хранятся днс, но вручную его редактировать нельзя. Вопрос: Почему network-manager не прописывает в этот файл днс, которые получает по dhcp? И откуда береться эта запись
nameserver 127.0.0.1
?

Заранее благодарен за помощь.



Последнее исправление: Lark (всего исправлений: 1)

Ты локальные хосты хочешь пропинговать ?
Если да, то пропиши всё в /etc/hosts
в resolv.conf хранятся днс, но вручную его редактировать нельзя - бред какой-то.

dada ★★★★★
()

Вопрос: Почему network-manager не прописывает в этот файл днс, которые получает по dhcp?

Прописывает, скорее всего, но

И откуда берется эта запись

Какая-то программа прописывает свои представления об идеальном DNS туда.

i-rinat ★★★★★
()
Ответ на: комментарий от dada

Нет, цель заключается в другом. Я редактировал его вручную, но после перезагрузки все встает по прежнему. Вы можете подсказать какая служба прописвывает

nameserver 127.0.0.1

Lark
() автор топика
Ответ на: комментарий от Lark

/etc/resolvconf/resolv.conf.d/head

Даже можешь и не благодарить меня.

DALDON ★★★★★
()

В убунте NetworkManager запускает dnsmasq, который занимается пробросом DNS запросов на реальный DNS сервер. Советчиков, рекомендующих прописать локальные хосты в hosts при наличии DHCP и DNS, лучше не слушать.

Проверь при помощи nslookup, разрешаются ли имена?

Kiborg ★★★
()
Ответ на: комментарий от Lark

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

Kiborg ★★★
()
Ответ на: комментарий от Lark

не думаю, однако ты сможешь его всегда установить вновь

r0ck3r ★★★★★
()
Последнее исправление: r0ck3r (всего исправлений: 1)
Ответ на: комментарий от i-rinat

Найти бы этого паразита. В syslog тольео сообщение от network-manager, что он производит запись в этот файл и все...

Lark
() автор топика
Ответ на: комментарий от Kiborg

Результат работы команды:

ubuntu-user@workstation:~$ nslookup srv1
Server:		127.0.0.1
Address:	127.0.0.1#53

** server can't find srv1: NXDOMAIN
Но почему-то один раз имя разрешило:
ubuntu-user@workstation:~$ nslookup srv1
Server:		127.0.0.1
Address:	127.0.0.1#53

Name:	srv1.tri-z.local
Address: 192.168.1.5

И хосты на определенное время стали пинговаться по имени, но потом снова все постарому. Я понять не могу за этот файл борьба какая-то идет?

Lark
() автор топика
Ответ на: комментарий от Lark

можно попробовать audit настроить, но я не знаю, как это делается. Можно попробовать записать в файл нужное содержание и запретить его изменение (chattr +i).

i-rinat ★★★★★
()
Ответ на: комментарий от Lark

А вот так что будет:

nslookup srv1 1.1.1.1
где 1.1.1.1 - адрес ДНС, полученный по DHCP?

Еще можно посмотреть tcpdump-ом, какие пакеты ходят по сети во время nslookup. А еще можно «grep dnsmasq /var/log/syslog{,.1}» - проверить, что NM действительно выдал нормальный адрес DNS для dnsmasq.

Kiborg ★★★
()
Ответ на: комментарий от Kiborg

Результат nslookup srv1 192.168.1.252, если днс не указать то результат прежний.

ubuntu-user@workstation:~$ nslookup srv1 192.168.1.252
Server:		192.168.1.252
Address:	192.168.1.252#53

Name:	srv1.tri-z.local
Address: 192.168.1.5
Результат «grep dnsmasq /var/log/syslog{,.1}»
/var/log/syslog:Aug 27 13:02:12 workstation NetworkManager[796]: <info> DNS: loaded plugin dnsmasq
/var/log/syslog:Aug 27 13:02:16 workstation NetworkManager[796]: <info> DNS: starting dnsmasq...
/var/log/syslog:Aug 27 13:02:16 workstation dnsmasq[1065]: started, version 2.59 cache disabled
/var/log/syslog:Aug 27 13:02:16 workstation dnsmasq[1065]: compile time options: IPv6 GNU-getopt DBus i18n DHCP TFTP conntrack IDN
/var/log/syslog:Aug 27 13:02:16 workstation dnsmasq[1065]: using nameserver 192.168.1.1#53
/var/log/syslog:Aug 27 13:02:16 workstation dnsmasq[1065]: using nameserver 192.168.1.252#53
/var/log/syslog:Aug 27 13:06:12 workstation NetworkManager[741]: <info> DNS: loaded plugin dnsmasq
/var/log/syslog:Aug 27 13:06:15 workstation NetworkManager[741]: <info> DNS: starting dnsmasq...
/var/log/syslog:Aug 27 13:06:15 workstation dnsmasq[1321]: started, version 2.59 cache disabled
/var/log/syslog:Aug 27 13:06:15 workstation dnsmasq[1321]: compile time options: IPv6 GNU-getopt DBus i18n DHCP TFTP conntrack IDN
/var/log/syslog:Aug 27 13:06:15 workstation dnsmasq[1321]: using nameserver 192.168.1.1#53
/var/log/syslog:Aug 27 13:06:15 workstation dnsmasq[1321]: using nameserver 192.168.1.252#53
/var/log/syslog:Aug 27 13:18:22 workstation NetworkManager[946]: <info> DNS: loaded plugin dnsmasq
/var/log/syslog:Aug 27 13:18:24 workstation NetworkManager[946]: <info> DNS: starting dnsmasq...
/var/log/syslog:Aug 27 13:18:24 workstation dnsmasq[1383]: started, version 2.59 cache disabled
/var/log/syslog:Aug 27 13:18:24 workstation dnsmasq[1383]: compile time options: IPv6 GNU-getopt DBus i18n DHCP TFTP conntrack IDN
/var/log/syslog:Aug 27 13:18:24 workstation dnsmasq[1383]: using nameserver 192.168.1.1#53
/var/log/syslog:Aug 27 13:18:24 workstation dnsmasq[1383]: using nameserver 192.168.1.252#53
/var/log/syslog:Aug 27 13:28:38 workstation NetworkManager[796]: <info> DNS: loaded plugin dnsmasq
/var/log/syslog:Aug 27 13:28:40 workstation NetworkManager[796]: <info> DNS: starting dnsmasq...
/var/log/syslog:Aug 27 13:28:40 workstation dnsmasq[1396]: started, version 2.59 cache disabled
/var/log/syslog:Aug 27 13:28:40 workstation dnsmasq[1396]: compile time options: IPv6 GNU-getopt DBus i18n DHCP TFTP conntrack IDN
/var/log/syslog:Aug 27 13:28:40 workstation dnsmasq[1396]: using nameserver 192.168.1.1#53
/var/log/syslog:Aug 27 13:28:40 workstation dnsmasq[1396]: using nameserver 192.168.1.252#53
/var/log/syslog:Aug 27 13:39:45 workstation NetworkManager[796]: <info> DNS: starting dnsmasq...
/var/log/syslog:Aug 27 13:39:45 workstation dnsmasq[1396]: exiting on receipt of SIGTERM
/var/log/syslog:Aug 27 13:39:45 workstation dnsmasq[2224]: started, version 2.59 cache disabled
/var/log/syslog:Aug 27 13:39:45 workstation dnsmasq[2224]: compile time options: IPv6 GNU-getopt DBus i18n DHCP TFTP conntrack IDN
/var/log/syslog:Aug 27 13:39:45 workstation dnsmasq[2224]: warning: no upstream servers configured
/var/log/syslog:Aug 27 13:39:51 workstation dnsmasq[2224]: exiting on receipt of SIGTERM
/var/log/syslog:Aug 27 13:39:51 workstation NetworkManager[796]: <info> DNS: starting dnsmasq...
/var/log/syslog:Aug 27 13:39:51 workstation dnsmasq[2281]: started, version 2.59 cache disabled
/var/log/syslog:Aug 27 13:39:51 workstation dnsmasq[2281]: compile time options: IPv6 GNU-getopt DBus i18n DHCP TFTP conntrack IDN
/var/log/syslog:Aug 27 13:39:51 workstation dnsmasq[2281]: using nameserver 192.168.1.1#53
/var/log/syslog:Aug 27 13:39:51 workstation dnsmasq[2281]: using nameserver 192.168.1.252#53
/var/log/syslog:Aug 27 13:50:46 workstation NetworkManager[848]: <info> DNS: loaded plugin dnsmasq
/var/log/syslog:Aug 27 13:50:49 workstation NetworkManager[848]: <info> DNS: starting dnsmasq...
/var/log/syslog:Aug 27 13:50:49 workstation dnsmasq[1394]: started, version 2.59 cache disabled
/var/log/syslog:Aug 27 13:50:49 workstation dnsmasq[1394]: compile time options: IPv6 GNU-getopt DBus i18n DHCP TFTP conntrack IDN
/var/log/syslog:Aug 27 13:50:49 workstation dnsmasq[1394]: using nameserver 192.168.1.1#53
/var/log/syslog:Aug 27 13:50:49 workstation dnsmasq[1394]: using nameserver 192.168.1.252#53
/var/log/syslog:Aug 27 14:42:53 workstation NetworkManager[872]: <info> DNS: loaded plugin dnsmasq
/var/log/syslog:Aug 27 14:42:57 workstation NetworkManager[872]: <info> DNS: starting dnsmasq...
/var/log/syslog:Aug 27 14:42:57 workstation dnsmasq[1179]: started, version 2.59 cache disabled
/var/log/syslog:Aug 27 14:42:57 workstation dnsmasq[1179]: compile time options: IPv6 GNU-getopt DBus i18n DHCP TFTP conntrack IDN
/var/log/syslog:Aug 27 14:42:57 workstation dnsmasq[1179]: using nameserver 192.168.1.1#53
/var/log/syslog:Aug 27 14:42:57 workstation dnsmasq[1179]: using nameserver 192.168.1.252#53
/var/log/syslog:Aug 27 15:15:13 workstation NetworkManager[777]: <info> DNS: starting dnsmasq...
/var/log/syslog:Aug 27 15:15:13 workstation dnsmasq[1442]: started, version 2.59 cache disabled
/var/log/syslog:Aug 27 15:15:13 workstation dnsmasq[1442]: compile time options: IPv6 GNU-getopt DBus i18n DHCP TFTP conntrack IDN
/var/log/syslog:Aug 27 15:15:13 workstation dnsmasq[1442]: using nameserver 192.168.1.1#53
/var/log/syslog:Aug 27 15:15:13 workstation dnsmasq[1442]: using nameserver 192.168.1.252#53

Lark
() автор топика
Ответ на: комментарий от Turbid

Спасибо за наводку, почитал данный мануал, ничего не вычитал по поводу: Откуда в этом файле берется запись

nameserver 127.0.0.1 

Lark
() автор топика
Ответ на: комментарий от anonymous

Результат команды nm-tool

ubuntu-user@workstation:~$ nm-tool

NetworkManager Tool

State: connected (global)

- Device: eth0  [Проводное соединение 1] --------------------
  Type:              Wired
  Driver:            r8169
  State:             connected
  Default:           yes
  HW Address:        08:60:6E:7C:B4:83

  Capabilities:
    Carrier Detect:  yes
    Speed:           100 Mb/s

  Wired Properties
    Carrier:         on

  IPv4 Settings:
    Address:         192.168.1.194
    Prefix:          24 (255.255.255.0)
    Gateway:         192.168.1.1

    DNS:             192.168.1.252
    DNS:             192.168.1.1

Lark
() автор топика
Ответ на: комментарий от r0ck3r

настоящий лоровец не читает мануалов

Он в них отправляет

Lark
Почитай документацию по сети для дебиана, многие вопросы сами по себе отпадут.

mbwa
()
Ответ на: комментарий от Lark

Ковыряй настройки маршрутизатора, линукс тут не при чем. По факту днс есть, правда идет не основной, в любом случае - в настройки

anonymous
()
Ответ на: комментарий от anonymous

Ковыряй настройки маршрутизатора, линукс тут не при чем. По факту днс есть, правда идет не основной, в любом случае - в настройки

Анонимус совсем испортился. При чём тут

Ковыряй настройки маршрутизатора

А?

mbwa
()
Ответ на: комментарий от mbwa

ананимус видит маршрутизатор и видит его прекрасно. ананиму видить что маршрутизатор отдал свой адрес и согласен разрешить все имена. но С**к такой не разрешает. Если лор совсем съел мозг, то стоит сделать перерыв.

anonymous
()
Ответ на: комментарий от anonymous

Ребята ругаться не нужно. Я согласен с mbwa и считаю, что маршрутизатор не причем. Просто результат команды:

ubuntu-user@workstation:~$ nslookup srv1
Server:		127.0.0.1
Address:	127.0.0.1#53

** server can't find srv1: NXDOMAIN
и
ubuntu-user@workstation:~$ nslookup srv1 192.168.1.252
Server:		192.168.1.252
Address:	192.168.1.252#53

Name:	srv1.tri-z.local
Address: 192.168.1.5

В первом случае я не указывал днс сервер и он почему-то обратилсяк днсу по адресу 127.0.0.1 и соотвественно имя не разрешил, во втором случае я указал днс сервер и выполнение команды прошло успешно. Если я правильно понимаю команда nslookup srv1 тянет днс из resolv.conf, если днс не указан, а в resolv.conf

# 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.0.1
search tri-z.local

По логу network-manager пишет вродебы в этот файл днс, но какая-то служба все равно перезаписывает на 127.0.0.1

Lark
() автор топика
Ответ на: комментарий от Lark

nm и перезаписывает, марш читать мануалы. Если лень, отруби nm и сконфигури все руками

anonymous
()
Ответ на: комментарий от Lark

1. Я уже сказал, что 127.0.0.1 в resolv.conf пишет NetworkManager (точнее, на самом-то деле это dnsmasq пишет с его подачи при помощи resolvconf).

2. Сделай «nslookup srv1 192.168.1.1». Очень похоже, что твой DHCP сервер выдает два адреса DNS серверов, и чаще всего используется 192.168.1.1, который доменные имена, видимо, не знает.

Kiborg ★★★
()
Последнее исправление: Kiborg (всего исправлений: 2)
Ответ на: комментарий от Lark

Можешь посмотреть при помощи «ps -C dnsmasq -Fww», какой длинннющей командой запущен dnsmasq. А затем по PPID определить, что он был запущен NetworkManager-ом. А затем в мане по resolvconf прочитать, что dnsmasq пользуется этой штукой для изменения resolv.conf.

Kiborg ★★★
()

nameserver 127.0.0.1 добавляется network manager. В Ubuntu он идёт с dnsmasq в зависимостях. Это такой кеширующий DNS-сервер. Он у вас запущен? Проверьте, вдруг он не работает... Наберите sudo service dnsmasq status.

lucentcode ★★★★★
()
Ответ на: комментарий от Kiborg

Спасибо всем за помощь, ухожу разбираться, тему пока не закрываю, позже отпишу результаты!

Lark
() автор топика
Ответ на: комментарий от Kiborg

Да dhcp выдает два днс. Убрал на сервере dhcp 192.168.1.1 и теперь все нормально работает. Теперь надо понять, каким образом указывать в ubunte альтернативный и предпочтительный dns.

Lark
() автор топика
Ответ на: комментарий от lucentcode

Результат команды sudo service dnsmasq status:

ubuntu-user@workstation:~$ sudo service dnsmasq status
dnsmasq: unrecognized service
Похоже, что данной службы у меня нету.

Lark
() автор топика
Ответ на: комментарий от Kiborg

Погуглив немного решил проблему. В общем каковы в итоге были мои действия:

В файле /run/nm-dns-dnsmasq.conf были прописаны днс, которые получает НМ от dhcp. Возник вопрос как же эти саме днсы прописать в /etc/resolv.conf. Полез в файл конфигурации НМ /etc/NetworkManager/NetworkManager.conf, где-то должно быть указано, чтобы он вызывал dnsmasq. Собственно содержимое файла NetworkManager.conf

[main]
plugins=ifupdown,keyfile
dns=dnsmasq

[ifupdown]
managed=false
В данном файле я закоментировал строчку dns=dnsmasq. В итоге в /etc/resolv.conf получил свои днс сервера, которые получает НМ по dhcp
# 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 192.168.1.252
nameserver 192.168.1.1
search tri-z.local
И nameserver 127.0.0.1 больше не фегурирует. Почитав мануал понял, что на desktope dnsmasq не нужен, может я ошибаюсь. Таким образом я решил свою проблему. Жду вашей критики.

Lark
() автор топика
Ответ на: комментарий от Lark

Так в этом ваша проблема. DNS по адресу 127.0.0.1 - это локальный DNS(bind, dnsmasq). Network Manager использует dnsmasq. Установите его, и будет вам счастье.

lucentcode ★★★★★
()
Ответ на: комментарий от Lark

Я тоже вначале так сделал. Оказалось, что dnsmasq умеет кешировать DNS-записи. Что ускоряет обращение к часто набираемым url. При этом он настолько легковесен, что вы его просто не заметите в системе. Поэтому я раскомментировал его опять, и просто установил пакет dnsmasq. Зато когда я стал настраивать окружение для разработки сайтиков на связке virsh с kvm - у меня не было проблем. Потому, как virsh использует всё тот же dnsmasq. Ну, и команда dig говорит о том, что повторное обращение к любому хосту по hostname идёт гораздо быстрее с dnsmasq, чем без него:)

lucentcode ★★★★★
()
Ответ на: комментарий от Lark

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

Так что в данном случае возможны рецидивы. Но повторюсь, что стандарты не читал — просто наблюдал подобное на практике.

Kiborg ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.