Je suis passé à Ubuntu 17.04 et il semble qu’il existe maintenant un nouveau mécanisme de résolution DNS introduit pour la première fois dans Ubuntu 16.10.
Je reçois maintenant des erreurs de recherche DNS dans 50% des cas.Tous les deuxL'appel à nslookup échoue. La moitié des appels sont résolus avec précision et l'autre moitié donne ceci:
watch -n 1 nslookup google.com
Server: 127.0.0.53
Address: 127.0.0.53#53
** server can't find google.com: SERVFAIL
D'après ce que j'ai compris, cette adresse IP du serveur DNS est maintenant utilisée pour représenter la résolution de systemd, qui effectue une sorte de méta-recherche pour éviter les requêtes DNS plus lentes (ou quelque chose du genre ...). Je constate exactement le même comportement sur deux ordinateurs que j'ai mis à niveau vers 17.04 la semaine dernière.
Avez-vous une idée du problème et de la manière correcte de le résoudre?
Les choses fonctionnaient bien avant la mise à niveau (à partir de 16.04 ou 16.10, je ne me souviens plus lequel, désolé). Je pensais que 17.04 était une version LTS, mais maintenant je vois que j'ai sauté le pistolet et il ne sera pas considéré comme stable avant avril. Alors ... me voilà.
À noter également que les navigateurs ne semblent pas présenter de problèmes, mais que nslookup, ping, git, etc.
Ubuntu 17.04 ne peut pas résoudre les serveurs DNS avec prise en charge de DNSSEC à partir du 18/04/2017. Désactivez DNSSEC avec ce démon:
Sudo mkdir -p /etc/systemd/resolved.conf.d
printf "[Resolve]\nDNSSEC=no\n" | Sudo tee /etc/systemd/resolved.conf.d/no-dnssec.conf
Vous pouvez éventuellement reconfigurer resolvconf si vous vous êtes planté (dites oui à "préparer /etc/resolve.conf pour les mises à jour dynamiques?"):
Sudo dpkg-reconfigure resolvconf
Redémarrez systemd résolu:
Sudo systemctl restart systemd-resolved
Votre DNS devrait commencer à fonctionner. Vous pouvez vérifier en essayant systemd-resolve www.google.com
et en voyant une réponse.
J'ai alterné entre la gestion manuelle de /etc/resolv.conf, résolue par systemd, et je n'ai pas encore trouvé le mécanisme de résolution DNS systemd stable.
Il y a apparemment au moins un bogue libnss dans Ubuntu 16.10 et apparemment toujours dans 17.04. De nombreuses personnes ont des problèmes de DNS depuis qu'Ubuntu 16.10 a activé la résolution de systemd, ici est une analyse et ici est la solution de contournement d'une autre personne. Aucun d’entre eux n’a fonctionné pour moi jusqu’à ce que j’ai écrasé /etc/resolv.conf manuellement avec les serveurs DNS de Google.
nameserver 8.8.8.8 << or another if you don't trust google
nameserver 8.8.4.4
Ceci est un solution parfaitement valide }, si vous n'avez pas besoin d'une configuration DNS dynamique. Assurez-vous simplement d'arrêter et de désactiver systemd-resolu:
Sudo systemctl disable systemd-resolved.service
Sudo service systemd-resolved stop
Ubuntu 17.04 et d'autres distributions englobent systemd, qui inclut la résolution systemd, ce qui soumet les utilisateurs à une résolution DNS plutôt lourde.
Je ne pense pas que ce soit nécessairement un mauvais changement, c'est juste BEAUCOUP de changement. Je vais essayer de mettre à jour et d'élargir cette réponse à mesure que j'en apprends davantage.
En termes simples, vous devez simplement avoir la ligne "DNSSEC = no" dans la section [Résoudre] de /etc/systemd/resolved.conf.
https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1682499/
ajoutez simplement le serveur de noms /etc/systemd/resolved.conf DNS = 194.109.xxx.xxx (sur votre routeur, serveur de noms externe)
systemctl redémarrer systemd-résolu
pas besoin de changer Rand de 3 à 2, pas besoin de changer le réglage de DNSSEC sur off