web-dev-qa-db-fra.com

Arch Linux - connect: le réseau est inaccessible

Après cinq installations infructueuses d'Arch Linux, j'en ai deux qui sont installés correctement. La première fois, le réseau a bien fonctionné et j'installais même Arch Linux sur SSH.

Après avoir démarré à partir du système installé au lieu du CD live, il ne peut pas se connecter au réseau, j'obtiens le message suivant lorsque j'essaie de cingler quoi que ce soit, même mon routeur:

se connecter: le réseau est inaccessible

J'ai essayé de réinstaller Arch, car rien sur Internet ne semblait résoudre mon problème. Après l'installation, je reçois le même problème.

Il semble qu'il ne démarre pas eth0 car il arrive à expiration.

22
Novicode

Le problème auquel j'étais confronté était qu'il n'y avait pas de eth0 (d'après ce que je peux comprendre.) Exécutez la commande ip link, cela devrait produire vos interfaces. Je n'avais pas le eth0 interface. Au lieu de cela, j'avais enp1s8.

Étant donné que j'utilisais de l'électricité statique, j'ai copié l'exemple de profil avec cd /etc/netctl puis cp examples/ethernet-static my-network. Après cela, j'ai édité my-network avec nano my-network, et a changé l'interface de eth0 à en1s8 (ou quel que soit votre adaptateur en ip link). Enfin, je lui ai permis d'utiliser ce profil au démarrage avec netctl enable my-network.

L'activation du profil garantit qu'il démarre au démarrage, mais il n'est pas nécessaire de redémarrer le système, exécutez simplement netctl start my-network pour l'initialiser immédiatement.

J'ai pu obtenir de l'aide sur les forums officiels d'Arch Linux, vous pouvez voir mon sujet .

26
Novicode

Réseau inaccessible signifie que vous n'avez pas de route vers le réseau. Si vous ne pouvez même pas cingler le routeur local, soit vous n'avez pas d'adresse IP, soit votre interface réseau est en panne.

netctl est l'utilitaire standard de gestion des interfaces réseau dans Arch. Si vous n'avez pas configuré cela (ou autre chose), vous n'aurez aucun réseau. Pas même DHCP.

4
David Baggerman

La configuration réseau pour ArchLinux est bien documentée dans le wiki ArchLinux à https://wiki.archlinux.org/index.php/Netctl

Une clarification importante de la réponse avec le plus grand nombre de votes - il n'est PAS nécessaire de recommencer. Si seule l'interface réseau est présente et que le nom et la configuration d'interface appropriés sont utilisés dans le fichier de profil dans/etc/netcl (laissez l'exemple de copie s'appeler mynet1), alors

netctl start mynet1

démarre le profil réseau mynet1 et la route réseau doit fonctionner.

Toutefois

netclt enable mynet1

permettra au service système d'être démarré par le gestionnaire de services systemd à chaque démarrage, c'est-à-dire qu'il créera un fichier d'unité dans /etc/systemd/system/netc@[mynetprofilename.

Notez également que si le profil réseau est modifié, il devra être réactivé netctl.

3
predmod

Archlinux dit, essayez dhcpcd au cas où votre installateur ne pourrait pas se connecter automatiquement. Cela a fonctionné pour moi APRÈS l'installation. Tapez simplement "dhcpcd" comme commande, attendez quelques secondes, puis "ip route" ou "ping 8.8.8.8" pour vérifier si cela fonctionne. J'ai même utilisé "watch ip address" pour voir à quelle vitesse ces adresses inet et inet6 apparaissent.

Au lieu d'utiliser dhcpcd, je peux également me connecter à partir de zéro avec:

modprobe e1000e

ip link set dev eth0 up
ip address add 192.168.0.16/24 dev eth0
ip route add 192.168.0.0/24 dev eth0
ip route add default via 192.168.0.1

e1000e est un "pilote réseau", explique modinfo. En chargeant ce module, j'obtiens un lien eth0 (non, ne le cherchez pas dans/dev). Les commandes "ip" activent le lien, choisissent une adresse et définissent un local (sous-réseau) puis une passerelle par défaut. Il m'a fallu un certain temps pour tester cela (aide de lien ip, aide d'adresse ip, aide de route ip ...).

C'est donc instructif, mais "dhcpcd" est plus rapide à taper et probablement plus robuste. Et vous pouvez l'arrêter proprement avec "dhcpcd -x".

Avec un ping fonctionnel et la liste miroir dans /etc/pacman.d/ vous avez tout ce dont vous avez besoin pour pacman ou pacstrap.

Et oui, j'ai vu un message du noyau renommer eth0 en enoxxx, vous devez donc d'abord vérifier avec "ip link" quelles interfaces sont déjà configurées par systemd. Cela se passe ici:

[    3.052354] e1000e 0000:00:1f.6 eth0: (PCI Express:2.5GT/s:Width x1) 94:c6:91:a5:39:b8
[    3.052360] e1000e 0000:00:1f.6 eth0: Intel(R) PRO/1000 Network Connection
[    3.052445] e1000e 0000:00:1f.6 eth0: MAC: 13, PHY: 12, PBA No: FFFFFF-0FF
[    3.055917] e1000e 0000:00:1f.6 eno1: renamed from eth0

Le .16 dans mon adresse est n'importe quel numéro (gratuit), et 192.168.0.1 devrait toujours être la passerelle. J'ai peut-être eu de la chance, mais c'est une bonne nouvelle que vous puissiez pirater sous systemd et inet6. J'essaierai cependant netctl.

Et maintenant, j'ai démarré avec systemd et j'ai démarré dhcpcd. J'ai obtenu l'adresse .15 sur "eno1" et trois adresses inet6, mais à part cela, le résultat est tout à fait le même qu'avec "ip" -hack ci-dessus.

3: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 94:c6:91:a5:39:b8 brd ff:ff:ff:ff:ff:ff
    inet 192.168.0.15/24 brd 192.168.0.255 scope global noprefixroute eno1
       valid_lft forever preferred_lft forever
    inet6 2a05:41c0:12:bf00::2/128 scope global dynamic noprefixroute 
       valid_lft 2559430sec preferred_lft 572230sec
    inet6 2a05:41c0:12:bf00:f51e:97c1:de6f:6f49/64 scope global dynamic mngtmpaddr noprefixroute 
       valid_lft 2591994sec preferred_lft 604794sec
    inet6 fe80::47cf:a2e4:af0b:b7cd/64 scope link 
       valid_lft forever preferred_lft forever 


 default via 192.168.0.1 dev eno1 proto dhcp src 192.168.0.15 metric 203 
 192.168.0.0/24 dev eno1 proto dhcp scope link src 192.168.0.15 metric 203 
2
user359065