Как настроить локальный поиск DNS в Ubuntu 16.10?

Я недавно установил Ubuntu 16.10 и rsync'd резервное копирование моего предыдущего корневого каталога от kubuntu 16.04 до моей новой установки. Вещи работают хорошо, но я не смог разрешить локальные адреса несмотря на большой метод проб и ошибок.

Все сети, кажется, работают безупречно. Интернет-просмотр, поиск DNS внешних адресов, ssh, и т.д. является большим. Локально, я могу получить доступ к машинам через ssh с их адресами, но не их именами. Все это хорошо работает в наутилусе/самбе, означая работы WINS. Единственной проблемой, это появляется, является локальная сеть DNS. Мне установили avahi-демона и выполнение, поскольку оно шло с Ubuntu.

Я включал некоторый поиск и устранение неисправностей, использование <<>> для сокращения избыточных или правильно рабочих частей.

$ nmcli g
STATE      CONNECTIVITY  WIFI-HW  WIFI     WWAN-HW  WWAN    
connected  full          enabled  enabled  enabled  enabled 

$ ping tendril8 << or tendril8.local >>
ping: tendril8: Name or service not known

$ ping gateway
PING gateway (192.168.1.1) 56(84) bytes of data.
64 bytes from gateway (192.168.1.1): icmp_seq=1 ttl=64 time=4.16 ms

$ ping askubuntu.com
PING askubuntu.com (151.101.129.69) 56(84) bytes of data.
64 bytes from 151.101.129.69 (151.101.129.69): icmp_seq=1 ttl=49 time=43.0 ms

$ nslookup askubuntu.com
Server:     127.0.1.1
Address:    127.0.0.1#53
<< followed by several IP addresses >>

$ nslookup tendril8 << or tendril8.local >>
Server:     127.0.1.1
Address:    127.0.0.1#53
** server can't find tendril8: NXDOMAIN

$ cat /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.1.1

$ ls -la /etc/resolv.conf
lrwxrwxrwx 1 root root 29 Oct 15 19:30 /etc/resolv.conf -> ../run/resolvconf/resolv.conf

$ cat /etc/nsswitch.conf
# /etc/nsswitch.conf
#
# Example configuration of GNU Name Service Switch functionality.
# If you have the `glibc-doc-reference' and `info' packages installed, try:
# `info libc "Name Service Switch"' for information about this file.

passwd:         compat
group:          compat
shadow:         compat
gshadow:        files

hosts:          files resolve [!UNAVAIL=return] mdns4_minimal dns [NOTFOUND=return]
networks:       files

protocols:      db files
services:       db files
ethers:         db files
rpc:            db files

netgroup:       nis

Примечание: Я провел много времени, смотря на "более старые" решения до Ubuntu, переключающейся на systemd.resolved в 16,10. Они не работали на меня, и я не полагаю, что это дублирующийся вопрос подобным с предшествующими конфигурациями Ubuntu.

9
задан 16 October 2016 в 11:03

3 ответа

Если я понимаю Ваш вопрос правильно, Вы не можете разрешить свои локальные имена хостов.

, На котором, у меня была та же проблема с новой установкой 16,10, и это оказывается известной проблемой ( https://bugs.launchpad.net/ubuntu / + source/systemd / + ошибка/1624071 ) связанный с libnss-твердостью в systemd.

решение в моем случае состояло в том, чтобы рассмотреть Ваш/etc/nsswitch.conf файл и отметить конкретно, как NSS разрешает Ваши хосты:

hosts: files resolve [!UNAVAIL=return] mdns4_minimal [NOTFOUND=return] dns myhostname

Эта логика, кажется, приводит разрешение сетевых имен к сбою перед ровным получением к mDNS.

Редактирование строки хостов назад к пред16.10 выпускам фиксирует эту очевидную логическую ошибку:

hosts: files mdns4_minimal [NOTFOUND=return] dns myhostname

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

Rich

18
ответ дан 23 November 2019 в 04:46

Альтернативное решение, которое автоматически редактирует /etc/nsswitch.conf, удаляет [ редактирование: и переустанавливающий] libnss-resolve:

sudo apt purge libnss-resolve
sudo apt install libnss-resolve
7
ответ дан 23 November 2019 в 04:46

У меня была эта проблема с новой установкой Ubuntu 17.04. Я принял решение переключиться от использования, systemd-разрешенного к dnsmasq на моем ноутбуке (сервер имен также использует dnsmasq). Я выполнил шаги в , Как отключить systemd-разрешенный и разрешить DNS с dnsmasq?

1
ответ дан 23 November 2019 в 04:46

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

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