J'ai fraîchement installé Ubuntu 16.10 et rsyncé une sauvegarde de mon répertoire personnel précédent de kubuntu 16.04 vers ma nouvelle installation. Les choses fonctionnent bien, mais je n'ai pas pu résoudre les adresses locales malgré de nombreux essais et erreurs.
Tout le réseautage semble fonctionner parfaitement. La navigation sur Internet, la recherche DNS d'adresses externes, ssh, etc. sont excellentes. Localement, je peux accéder aux machines via ssh avec leurs adresses, mais pas leurs noms. Tout fonctionne bien en nautilus / samba, ce qui signifie que WINS fonctionne. Il semble que le seul problème soit le DNS du réseau local. J'ai avahi-daemon installé et en cours d'exécution, comme il est venu avec Ubuntu.
J'ai inclus un dépannage, en utilisant << >> pour raccourcir les portions redondantes ou fonctionnant correctement.
$ 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
Remarque: J'ai passé beaucoup de temps à rechercher des solutions "plus anciennes", avant que Ubuntu ne passe à systemd.resolved en 16.10. Ils n'ont pas fonctionné pour moi et je ne pense pas que ce soit une question en double à des questions similaires avec des configurations Ubuntu antérieures.
la source
Réponses:
Si je comprends bien votre question, vous ne pouvez pas résoudre vos noms d'hôtes locaux.
Sur cela, j'ai eu le même problème avec une nouvelle installation de 16.10, et il s'avère que c'est un problème connu ( https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1624071 ) lié à libnss -résoudre dans systemd.
La solution dans mon cas était de revoir votre fichier /etc/nsswitch.conf et de noter spécifiquement comment NSS résout vos hôtes:
Cette logique semble échouer dans la résolution du nom d'hôte avant même d'accéder au mDNS.
La modification de la ligne d'hôtes vers une version antérieure à 16.10 corrige cette erreur logique apparente:
Le lien de rapport de bogue inclus suggère qu'une future version du package systemd pourrait éventuellement corriger ce problème.
Riches
la source
Une solution alternative qui modifie automatiquement
/etc/nsswitch.conf
supprime [ modifier: et réinstaller]libnss-resolve
:la source
J'ai eu ce problème avec une nouvelle installation d'Ubuntu 17.04. J'ai choisi de passer de l'utilisation résolue par systemd à dnsmasq sur mon ordinateur portable (le serveur de noms utilise également dnsmasq). J'ai suivi les étapes dans Comment désactiver DNS résolu par systemd et résoudre DNS avec DNSN?
la source