Arch Linux – connect: Network is unreachable

Etter fem mislykkede Arch Linux-installasjoner har jeg to som ble installert riktig. Første gang fungerte nettverket bra , og jeg installerte til og med Arch Linux over SSH.

Etter oppstart fra det installerte systemet i stedet for live CD, kan det ikke koble til nettverket, jeg får følgende melding når jeg prøver å pinge noe , til og med ruteren min:

connect: Network is unreachable

I » Jeg har prøvd å installere Arch igjen, fordi ingenting på Internett så ut til å løse problemet mitt. Etter installasjonen får jeg det samme problemet.

Det ser ut til at det ikke klarer å starte eth0 fordi det går ut.

Kommentarer

  • Prøvde du dhcpcd eth0?
  • @uzsolt Ja, det gir et mislykket å utstede metodeanrop: Ingen slik fil eller katalogfeil. Jeg ‘ har også lagt ut et emne på tjenestemannen for ums, jeg legger ut svaret her hvis jeg finner et.
  • ifconfig eth0 up allerede gjort? Ser Linux nettverkskortet ditt (modulen er lastet inn)? Før noe, vær så snill systemctl stop netctl-eth0...
  • Damn … du ‘ har ingen eth0, du ‘ ve … Jeg kan ‘ t lese den 🙁 bbs.archlinux.org/viewtopic.php ? pid = 1291880 # p1291880 Så du bør sette opp NO eth0, du bør i stedet bruke enp1s0 (eller hva i helvete er det på bildet ditt :)).
  • Jeg ‘ er glad for å løse problemet ditt.

Svar

Problemet jeg sto overfor var at det ikke var eth0 (fra det jeg kan forstå.) Kjør kommandoen ip link, dette skal sende grensesnittene dine. Jeg hadde ikke eth0 grensesnittet. I stedet hadde jeg enp1s8.

Fordi jeg brukte statisk, kopierte jeg eksempelprofilen med cd /etc/netctl og deretter cp examples/ethernet-static my-network. Etter det redigerte jeg my-network med nano my-network, og endret grensesnittet fra eth0 til en1s8 (eller hva som helst adapteren din er i ip link). Til slutt aktiverte jeg den for å bruke den profilen ved oppstart med netctl enable my-network.

Aktivering av profilen vil sikre at den starter ved oppstart, men det er ikke nødvendig å starte på nytt systemet, bare kjør netctl start my-network for å initialisere det umiddelbart.

Jeg var i stand til å få hjelp på de offisielle Arch Linux-forumene, du kan se emnet mitt der .

Svar

Nettverk som ikke kan nås betyr at du ikke har en rute til nettverket. Hvis du ikke engang kan pinge den lokale ruteren, har du ikke en IP-adresse, eller så er nettverksgrensesnittet nede.

netctl er standardverktøyet for å administrere nettverksgrensesnitt i Arch. Hvis du ikke har satt opp det (eller noe annet), har du ikke noe nettverk Ikke engang DHCP.

Kommentarer

  • Jeg har kopiert en eksempelfil fra eksempler / ethernet-statisk til » mitt nettverk , endret den filen og aktiverte den ved oppstart med » netctl aktiverer mitt nettverk «. Det er ingen IP-konflikter i nettverket heller. Det skal være » Sett opp »
  • For å finne ut om du kan nå standard gateway (dette er ofte ruteren din), skriv inn ip route. Hvis det viser seg at du ikke har noen standard gateway, bør du legge til en enten per DHCP eller med ip route add default via xxx.xxx.x.xxx. For å gjøre standard gateway permanent, legg til IP-en i /etc/network/interfaces.

Svar

Archlinux sier, prøv dhcpcd i tilfelle installatøren ikke kan koble seg automatisk. Dette fungerte på stedet for meg ETTER installasjonen. Bare skriv» dhcpcd «som en kommando, vent noen sekunder, og deretter» ip rute » eller «ping 8.8.8.8» for å sjekke om det fungerer. Jeg brukte til og med «watch ip address» for å se hvor raskt disse inet- og inet6-adressene dukker opp.

I stedet for å bruke dhcpcd kan jeg også koble til fra null med:

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 er en «Network Driver», sier modinfo. Ved å laste inn denne modulen får jeg en eth0-lenke (nei, ikke se etter det i / dev). «Ip» -kommandoene aktiverer lenken, velger en adresse og definerer et lokalt (subnett) og deretter en standard gateway. Det tok meg ganske lang tid å teste dette ut (ip link help, ip address help, ip route help …).

Så dette er lærerikt, men «dhcpcd» er raskere å skrive, og sannsynligvis mer robust. Og du kan stoppe det rent med «dhcpcd -x».

Med et fungerende ping og speillisten i /etc/pacman.d/ har du alt du trenger for pacman eller pacstrap.

Og ja, jeg så en kjernemelding som omdøpte eth0 til enoxxx, så du må først sjekke med «ip link» hvilke grensesnitt som allerede er satt opp av systemd. Det skjer her:

[ 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 

.16 i adressen min er bare et hvilket som helst (gratis) nummer, og 192.168.0.1 skal alltid være porten. Kanskje jeg var heldig, men det er gode nyheter at du kan hacke rundt under systemd og inet6. Jeg vil prøve netctl, skjønt.

Og akkurat nå har jeg startet med systemd og har startet dhcpcd. Jeg fikk adresse .15 på «eno1» og tre inet6-adresser, men bortsett fra det er resultatet ganske det samme som med over «ip» -hack.

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 

Svar

Nettverksoppsett for ArchLinux er godt dokumentert i ArchLinux-wiki at https://wiki.archlinux.org/index.php/Netctl

En viktig presisering av svaret med høyest antall stemmer – der er INGEN behov for å starte på nytt. Hvis bare nettverksgrensesnitt er til stede og riktig grensesnittnavn og konfigurasjon brukes i profilfilen i / etc / netcl (la eksemplet heter mynet1), så

netctl start mynet1 

vil starte nettverksprofilen mynet1 og nettverksruten skal fungere.

Imidlertid

netclt enable mynet1 

vil muliggjøre at systemtjenesten startes av systemd servicemanager med hver oppstart, dvs. den vil opprette en enhetsfil i /etc/systemd/system/netc@[mynetprofilename ].service med enhetsdetaljene (enhetsbinding og avhengighet).

Merk også at nettverksprofilen er endret, den må aktiveres på nytt «d.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *