web-dev-qa-db-fra.com

Ubuntu 18.04 incapable d'atteindre le DNS après la mise à niveau

J'ai récemment mis à niveau ma machine virtuelle Ubuntu (VirtualBox 5.2.8) d'ubuntu 16.04 à 18.04 à l'aide de do-release-upgrade -d. Il y avait beaucoup de problèmes lors de la mise à niveau. Je continuais à devoir redémarrer/reprendre la mise à jour en utilisant apt-get install -f et apt-get dist-upgrade. Cependant, il a finalement fini.

Maintenant, pour une raison quelconque, je dois exécuter manuellement Sudo dhclient enp0s3 chaque fois que je redémarre afin que le réseau soit correctement capturé.

Comment puis-je le configurer pour qu'il démarre correctement?

Je remarque ce qui suit in /var/log/syslog

11291 May  2 13:24:07 my-vm dhclient[1416]: /var/lib/NetworkManager/dhclient-enp0s3.conf line 47: semicolon expected.
11292 May  2 13:24:07 my-vm dhclient[1416]: send
11293 May  2 13:24:07 my-vm dhclient[1416]: ^
11294 May  2 13:24:07 my-vm dhclient[1416]: /var/lib/NetworkManager/dhclient-enp0s3.conf line 47: expecting a statement.
11295 May  2 13:24:07 my-vm dhclient[1416]: send Host-name "my-vm";
11296 May  2 13:24:07 my-vm dhclient[1416]:                        ^
11297 May  2 13:24:07 my-vm dhclient[1416]: /var/lib/NetworkManager/dhclient-enp0s3.conf line 50: semicolon expected.
11298 May  2 13:24:07 my-vm dhclient[1416]: option
11299 May  2 13:24:07 my-vm dhclient[1416]:  ^
11300 May  2 13:24:07 my-vm dhclient[1416]: /var/lib/NetworkManager/dhclient-enp0s3.conf line 71: no option named ms-classless-static-routes in space dhcp
11301 May  2 13:24:07 my-vm dhclient[1416]: also request ms-classless-static-routes;
11302 May  2 13:24:07 my-vm dhclient[1416]:               ^
11303 May  2 13:24:07 my-vm dhclient[1416]: /var/lib/NetworkManager/dhclient-enp0s3.conf line 71: ms-classless-static-routes: expected option name.
11304 May  2 13:24:07 my-vm dhclient[1416]: also request ms-classless-static-routes;
11305 May  2 13:24:07 my-vm dhclient[1416]:                                         ^
11306 May  2 13:24:07 my-vm dhclient[1416]: DHCPREQUEST of 10.0.2.15 on enp0s3 to 255.255.255.255 port 67 (xid=0x20425ef9)
11307 May  2 13:24:07 my-vm dhclient[1416]: DHCPACK of 10.0.2.15 from 10.0.2.2

en exécutant dhcpclient enp0s3 manuellement, je vois des problèmes sur différentes lignes.

13097 May  2 15:37:32 my-vm dhclient[5756]: /etc/dhcp/dhclient.conf line 28: semicolon expected.
13098 May  2 15:37:32 my-vm dhclient[5756]: timeout
13099 May  2 15:37:32 my-vm dhclient[5756]: ^
13100 May  2 15:37:32 my-vm dhclient[5756]: /etc/dhcp/dhclient.conf line 28: expecting a statement.
13101 May  2 15:37:32 my-vm dhclient[5756]: timeout 300;
13102 May  2 15:37:32 my-vm dhclient[5756]:             ^
13103 May  2 15:37:32 my-vm dhclient[5756]: /etc/dhcp/dhclient.conf line 28: semicolon expected.
13104 May  2 15:37:32 my-vm dhclient[5756]: 
13105 May  2 15:37:32 my-vm dhclient[5756]: ^
13106 May  2 15:37:32 my-vm dhclient[5756]: DHCPREQUEST of 10.0.2.15 on enp0s3 to 255.255.255.255 port 67 (xid=0x392381bf)
13107 May  2 15:37:32 my-vm dhclient[5756]: DHCPACK of 10.0.2.15 from 10.0.2.2

EDIT

J'ai corrigé l'erreur dans le fichier var/log/syslog. Il me manquait un point-virgule sur une ligne dans /etc/dhcp/dhclient.conf

Cependant, cela n'a pas résolu le problème.

Et j'ai trouvé ceci:

15687 May  2 16:30:12 mds-vm dnsmasq[1424]: chown of PID file /run/NetworkManager/dnsmasq.pid failed: Operation not permitted
...
15690 May  2 16:30:12 mds-vm NetworkManager[897]: <info>  [1525293012.4308] dnsmasq[0x5601285fd1e0]: dnsmasq appeared as :1.26

EDIT

J'ai essayé de réinstaller:

Sudo apt-get install --reinstall dnsmasq dnsmasq-base network-manager network-manager-config-connectivity-ubuntu isc-dhcp-client

mais cela n'a pas résolu le problème.

EDIT J'ai enlevé dns=dnsmasq de /etc/NetworkManager/NetworkManager.conf et les choses semblent fonctionner.

1
Wanderer

Après la mise à niveau de 16.04 (xenial) à 18.04 (bionique), Network Manager n’avait aucun DNS.

Bien que j'ai écrit le DNS dans l'interface graphique.

Vraiment, enlever dns=dnsmasq m'a aidé.

Merci beaucoup!

2
Terentev Maksim

J'ai retiré dns = dnsmasq de /etc/NetworkManager/NetworkManager.conf et les choses semblent fonctionner.

L'utilisation de dnsmasq est en effet 'déconseillée' car Ubuntu 18.04 LTS passe à l'aide de systemd-resovled par défaut. Bien qu'il soit encore possible de revenir en arrière et d'utiliser dnsmasq avec NetworkManager, il peut également être nécessaire de désactiver ou de reconfigurer systemd pour résoudre les conflits. Par exemple. Je devais revenir à l'utilisation de dnsmasq à cause de resolvconf: utilisez /run/systemd/resolve/resolv.conf si systemd-resol gère DNS n'est pas encore rétroporté vers la version CE de docker dans Ubuntu 18.04 LTS et ce qui en est la cause les conteneurs ne pouvant pas résoudre le DNS sur les réseaux d'entreprise bloquant l'accès au docker des serveurs DNS publics par défaut.

chown of PID file /run/NetworkManager/dnsmasq.pid failed: Operation not permitted

L’avertissement ci-dessus n’est pas un problème fatal et Dnsmasq peut toujours être utilisé avec NetworkManager. Ce problème a été résolu dans la version du package de base dnsmasq-base 2.79-1 (et 2.78-3) en rétrogradant l'action d'échec chown comme un simple avertissement. Voir: Journaux du rapport de bogue Debian - Message 889857 1 .

En outre, diff de 2,78-2 à 2,78- . La ligne de code génère un avertissement à la place:

my_syslog(LOG_WARNING, "chown of PID file %s failed: %s", daemon->runfile, strerror(chown_warn));
1
JPvRiel