web-dev-qa-db-fra.com

Pas de mise en réseau: Impossible d’afficher eth0

Le service de réseau ne parvient pas à démarrer/ne démarre pas au redémarrage.

Restarting networking (via systemctl): networking.serviceJob for networking.service failed because the control process exited with error code.

Je peux toujours accéder au serveur via la console distante, mais rien d’autre, car sans réseau, il n’ya pas d’entrée ni de sortie.

systemctl status networking.service dit:

● networking.service - Raise network interfaces
   Loaded: loaded (/lib/systemd/system/networking.service; enabled; vendor prese
t: enabled)
  Drop-In: /run/systemd/generator/networking.service.d
           └─50-insserv.conf-$network.conf
   Active: failed (Result: exit-code) since Mo 2016-04-18 06:53:11 UTC; 43s ago
     Docs: man:interfaces(5)
  Process: 3551 ExecStart=/sbin/ifup -a --read-environment (code=exited, status=
1/FAILURE)
  Process: 3546 ExecStartPre=/bin/sh -c [ "$CONFIGURE_INTERFACES" != "no" ] && [
 -n "$(ifquery --read-environment --list --exclude=lo)" ] && udevadm settle (cod
e=exited, status=0/SUCCESS)
 Main PID: 3551 (code=exited, status=1/FAILURE)

Apr 18 06:53:11 h2502988.stratoserver.net ifup[3551]: For info, please visit htt
ps://www.isc.org/software/dhcp/
Apr 18 06:53:11 h2502988.stratoserver.net ifup[3551]: Usage: dhclient [-4|-6] [-
SNTP1dvrx] [-nw] [-p <port>] [-D LL|LLT]
Apr 18 06:53:11 h2502988.stratoserver.net ifup[3551]:                 [-s server
-addr] [-cf config-file] [-lf lease-file]
Apr 18 06:53:11 h2502988.stratoserver.net ifup[3551]:                 [-pf pid-f
ile] [--no-pid] [-e VAR=val]
Apr 18 06:53:11 h2502988.stratoserver.net ifup[3551]:                 [-sf scrip
t-file] [interface]
Apr 18 06:53:11 h2502988.stratoserver.net ifup[3551]: Failed to bring up eth0.
Apr 18 06:53:11 h2502988.stratoserver.net systemd[1]: networking.service: Main p
rocess exited, code=exited, status=1/FAILURE
Apr 18 06:53:11 h2502988.stratoserver.net systemd[1]: Failed to start Raise netw
ork interfaces.
Apr 18 06:53:11 h2502988.stratoserver.net systemd[1]: networking.service: Unit e
ntered failed state.
Apr 18 06:53:11 h2502988.stratoserver.net systemd[1]: networking.service: Failed
 with result 'exit-code'.

Mon/etc/network/interfaces ressemble à ceci:

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet dhcp

Où puis-je commencer à déboguer?

Merci pour tout indice! Cordialement, K

# Sudo 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  
Internet Systems Consortium DHCP Client 4.2.4
Copyright 2004-2012 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/
Usage: dhclient <snip>
Failed to bring up eth0.
11
Katja Süss

Cela m'est juste arrivé. La raison en était qu’une incohérence dans la dépendance des paquets avait interrompu ma mise à niveau de trusty à xenial; certaines versions de paquets étaient donc incohérentes. Dans mon cas, l'incohérence a été causée par squid3 et ca-certificates-Java.

J'ai restauré la connexion réseau en exécutant simplement dhclient eth0. Après avoir résolu le problème d'incohérence du package en supprimant les packages incriminés et en exécutant apt-get install -f, j'ai exécuté apt-get dist-upgrade et apt-get install ubuntu-standard. Cela a complètement résolu mon problème.

Ce qui m'a amené à suspecter cette incohérence, c'est que /sbin/ifup binary contenait la ligne de commande obsolète dhclient avec l'option non supportée -I. Ce doit être une incohérence dans la version du paquet.

6
furstex

Je suppose que vous venez d'installer/de mettre à niveau vers un système d'exploitation plus récent, tel que Ubuntu 16.04, et qu'en raison du changement de schéma de nommage d'interface traditionnel, tel que eth0 ou eth1, le système ne peut pas démarrer votre interface.

Essayez de modifier votre /etc/network/interfaces afin d'utiliser soit ens32 ou ens192 au lieu de eth0 comme

# The loopback network interface
auto lo
iface lo inet loopback

# The Ethernet interface
auto ens192
iface ens192 inet dhcp

Cela devrait vous permettre de redémarrer l'interface réseau. J'espère que ça aide. Pour plus de détails sur les modifications prédictives de l'interface réseau

https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/

5
P. Ntende

Pas sûr que cela soit toujours utile: il semble que le dhclient n’ait plus les options "-I" ou "-df", ce qui, selon la page de manuel , est DDNS:

-I Utilisez le schéma standard DDNS des RFC 4701 et 4702.

Une fois que je supprime cette option de la ligne de commande, dhclient est capable d’afficher eth0.

[EDIT] : Maintenant, si je pouvais trouver où est l'option "-I" ...

2
Wei Wang

J'avais un problème similaire à OP et à Wei Wang, où ifup essayait de lancer dhclient avec l'option -I, mais mon dhclient était une version antérieure qui ne le supportait pas. Je suppose que cela était dû à mon ancien moyen hacky de télécharger/installer Xenial (16.04) Chromium tout en conservant mon système sous Trusty (14.04). Il doit également avoir mis à niveau certaines autres parties de mon système.

En résumé, ma solution consistait à télécharger et à installer manuellement les packages pertinents liés à dhclient dans Xenial en amont. Trois packages sont requis et il doit être installé dans l'ordre suivant:

  1. libisc-export160 ( https://ubuntu.pkgs.org/16.04/ubuntu-main-AMD64/libisc-export160_9.10.3.dfsg.P4-8_AMD64.deb.html )
  2. libdns-export162 ( https://ubuntu.pkgs.org/16.04/ubuntu-main-AMD64/libdns-export162_9.10.3.dfsg.P4-8_AMD64.deb.html )
  3. isc-dhcp-client_4.3.3 ( https://ubuntu.pkgs.org/16.04/ubuntu-main-AMD64/isc-dhcp-client_4.3.3-5ubuntu12_AMD64.deb.html )

Après cela, dhclient --version a montré que j’avais 4.3.3 qui prend en charge l’option -I, et j’ai pu utiliser ifup à nouveau.

1
TLin

Essaye ça:-

Sudo ifdown --exclude=lo -a && Sudo ifup --exclude=lo -a

Donc, remplacez networking restart par ifdown... && ifup....

Juste à part: ifconfig est également obsolète depuis longtemps - utilisez ip du paquet iproute2

Tu pourrais essayer aussi

ifconfig eth0 down && ifconfig eth0 up

(ou quelle que soit votre interface réseau) pour redémarrer le réseau.

0
Afaque

@jos mentionne dans un commentaire sur le message d'origine:

La présence des lignes "Usage: ..." donne l’impression que la commande dhclient échoue car il existe une erreur dans les paramètres ...

J'ai eu ce problème précis et la journalisation prolixe était l'indice.

ifup --verbose eth0

Recherchez la sortie expliquant les paramètres DHCP.

J'ai ensuite pris la sortie de:

/sbin/dhclient -4 -v -pf /run/dhclient.eth0.pid -if /var/lib/dhcp/dhclient.eth0.leases -I -df /var/lib/dhcp/dhclient6.eth0.leases eth0

simplement:

/sbin/dhclient -4 -v -pf /run/dhclient.eth0.pid eth0 et puis j'ai eu une adresse.

Je pense que certaines mises à jour logicielles ont empêché le client d'être synchronisé avec ce qui se passait sur mon système Debian 7.11.

0