J'ai mis à niveau mon serveur de 14.04 à 16.04. Je peux voir l'erreur suivante sur syslog:
ifup[478]: Internet Systems Consortium DHCP Client 4.2.4
ifup[478]: Copyright 2004-2012 Internet Systems Consortium.
ifup[478]: All rights reserved.
ifup[478]: For info, please visit https://www.isc.org/software/dhcp/
ifup[478]: Usage: dhclient [-4|-6] [-SNTP1dvrx] [-nw] [-p <port>] [-D LL|LLT]
ifup[478]: [-s server-addr] [-cf config-file] [-lf lease-file]
ifup[478]: [-pf pid-file] [--no-pid] [-e VAR=val]
ifup[478]: [-sf script-file] [interface]
ifup[478]: Failed to bring up eth0.
systemd[1]: networking.service: Main process exited, code=exited, status=1/FAILURE
systemd[1]: Failed to start Raise network interfaces.
systemd[1]: networking.service: Unit entered failed state.
systemd[1]: networking.service: Failed with result 'exit-code'.
Je reçois aussi la même erreur si j'essaie de le faire manuellement
# ifup --verbose eth0
Configuring interface eth0=eth0 (inet)
/bin/run-parts --exit-on-error --verbose /etc/network/if-pre-up.d
run-parts: executing /etc/network/if-pre-up.d/ethtool
run-parts: executing /etc/network/if-pre-up.d/wireless-tools
run-parts: executing /etc/network/if-pre-up.d/wpasupplicant
/sbin/dhclient -1 -v -pf /run/dhclient.eth0.pid -lf /var/lib/dhcp/dhclient.eth0.leases -I -df /var/lib/dhcp/dhclient6.eth0.leases eth0
Usage: dhclient [-4|-6] [-SNTP1dvrx] [-nw] [-p <port>] [-D LL|LLT]
[-s server-addr] [-cf config-file] [-lf lease-file]
[-pf pid-file] [--no-pid] [-e VAR=val]
[-sf script-file] [interface]
Failed to bring up eth0.
Je peux cingler 8.8.8.8. Mais ne peut résoudre aucun nom de domaine.
Que puis-je faire pour rétablir la connexion réseau?
Je me suis heurté à cela lors d'une nouvelle installation du serveur 16.04 sur un Raspberry Pi. Pour une raison quelconque, Network Manager n'était pas installé par défaut, et après avoir exécuté dist-upgrade, puis redémarré, je n'avais plus de réseau.
J'ai suivi les étapes à ce blog pour le faire fonctionner à nouveau. Essentiellement, le mappage pour eth0 avait été corrompu. Normalement, Network Manager peut résoudre ce problème automatiquement, mais sans cela, vous devez le faire vous-même. Pour ce faire, j'ai d'abord couru:
Sudo networkctl
ce qui m'a montré toutes mes interfaces réseau comme lo, wlan0 et quelque chose appelé enc238897s9879c3, qui est en fait supposé être eth0.
Pour corriger le mapping, j'ai couru:
Sudo ip link set enc238897s9879c3 name eth0
Sudo systemctl restart networking
et cela l'a corrigé. Exécuter ifconfig
a montré que j'avais une adresse IP, et ping google.com
a montré que j'avais Internet.
J'ai rencontré le même problème. La réponse donnée par @rosencreuz est correcte, mais je l'ai réduite à cette seule commande.
# apt install isc-dhcp-client
Si vous souhaitez continuer à utiliser eth0
en tant que nom d'interface, vous devez ajouter /etc/default/grub
:
net.ifnames=0 biosdevname=0
dans GRUB_CMDLINE_LINUX=""
. Comme ça:
GRUB_CMDLINE_LINUX="net.ifnames=0 biosdevname=0 quiet"
Ensuite, lancez: update-grub
et redémarrez.
Il semble que la mise à niveau ait été en quelque sorte gâchée par des paquets liés au réseau. J'ai fait des démarches qui ont conduit à la résolution du problème. Je ne sais pas lesquels étaient nécessaires cependant.
# apt install network-manager
# systemctl enable systemd-networkd
# systemctl enable systemd-resolved
# systemctl start systemd-networkd
# systemctl start systemd-resolved
# apt install isc-dhcp-client
# dpkg-reconfigure resolvconf