LAN und WLAN – Konfiguration und Diagnose unter Linux
Das Netzwerk ist eine Komponente, die zur Kommunikation unter Rechnern eine große Rolle spielt. Es gibt im privatem Bereich meist ein LAN (Verkabeltes) oder WLAN (Funkverbindung – ohne Kabel) Normalerweise werden die Geräte von einer Distribution automatisch erkannt. Ich empfehle erst die Konfiguration des LANs zu veranlassen, auch wenn später vielleicht nur WLAN genutzt wird.
Bitte beachten: je nach verwendetem Init-System (systemd oder openrc) unterscheiden sich einige Befehle.
Steht die Verbindung vielleicht schon?
Führen Sie einen ping auf eine Internetadresse aus um zu testen, ob die Verbindung bereits funktioniert. Wenn Sie eine Antwort erhalten steht die Internetverbindung. Über netstat können Sie schauen, welche Seiten / Dienste momentan konnektiert werden-
Ein DHCP-Server kann für die automatische Vergabe einer IP Adresse sorgen. Die automatische Vergabe der IP erfolgt meist direkt vom Router. Wenn die DHCP IP Vergabe im Router vermerkt ist sollte die IP Adresse automatisch zugordnet werden. , aber keine Verbindung besteht überprüfen Sie bitte, ob das DHCP Plugin ( net-misc/dhcpcd ) in Gentoo installiert und gestartet ist. Es ist wichtig, den DHCP-Client neu zu starten bei Änderungen an diesem Dies erfolgt über
localhost ~ $ /etc/init.d/dhcpcd restart
oder einem Neustart des Rechners.
Unter systemd lautet der Befehl:
localhost /home/fridolin #systemctl start dhcpcd
Ein Test. ob die Verbindung aufgebaut werden kann und der Router oder Server die IP verteilt kann man über /etc/init.d/net.enp4s0 start testen. Der Adaptername net.enp4s0 muss evtl. angepasst werden.
localhost /home/fridolin # /etc/init.d/net.enp4s0 start * Bringing up interface enp4s0 * Caching network module dependencies need dbus * config_enp4s0 not specified; defaulting to DHCP * dhcp ... * Running dhcpcd ... sending commands to master dhcpcd process [ ok ] * received address 192.168.178.20/24
Falls der automatische Start / die automatische Einrichtung nicht erfolgreich war, können folgende Schritte helfen den Fehler zu finden: Als erstes ist zu überprüfen, ob die Hardware bereits erkannt wurde. Über den Befehl:
michi@localhost ~ $ ip -a
werden alle Geräte aufgelistet, die erkannt wurden. Ausführliche Infos zum Befehl ip gibt es hier
In der dmesg wird der Bootvorgang aufgezeichnet. Dort kann geschaut werden, welche Karte erkannt und welches Modul geladen wurde Es gibt in vielen Anleitungen die Angabe von net.eth0 für den Namen des Netzwerkadapters. Dies muss nicht unbedingt korrekt sein. Es ist sinnvoll die Suche nach einer LAN Karte in der Aufzeichnung des #dmesg durchzuführen. Hier lautet der Name enp4s0 :
localhost /home/michi # dmesg | grep renamed [ 9.258106] r8169 0000:04:00.0 enp4s0: renamed from eth0 localhost /home/michi # dmesg | grep Network [ 4.614176] e1000: Intel(R) PRO/1000 Network Driver - version 7.3.21-k8-NAPI [ 4.665133] ixgbe: Intel(R) 10 Gigabit PCI Express Network Driver - version 5.0.0-k [ 4.667214] ixgb: Intel(R) PRO/10GbE Network Driver - version 1.0.135-k2-NAPI
Ist der Name bekannt muss ein Link von der lokalen Schnittstelle net.lo auf den Netzwerkadapter gesetzt werden :
michi@localhost ~ $ cd /etc/init.d michi@localhost ~ $ su Passwort eingeben: localhost # ln -sf net.lo net.enp4s0
Mittels rfkill können Adapter mit dem jeweiligen Status abgerufen werden. Ein eventuell blockierter Adapter kann wieder aktiviert werden. rfkill bietet verschiedene Optionen. Eine Blockade kann durch den Befehl
localhost # rfkill list all
überprüft werden. Die Blockade kann durch
localhost # rfkill block wifi
bzw.
localhost # frkill unblock wifi
gesetzt oder gelöst werden. Die Bezeichnung wifi kann natürlich auch anders sein und muss ggf. angepasst werden. Beispiel:
0: phy0: Wireless LAN Soft blocked: no Hard blocked: no 1: tpacpi_bluetooth_sw: Bluetooth Soft blocked: no Hard blocked: no 2: tpacpi_wwan_sw: Wireless WAN Soft blocked: no Hard blocked: no 4: hci0: Bluetooth Soft blocked: no Hard blocked: no
Auswahl über die Gerätenummer
Alternativ kann man über die in der Ausgabe von rfkill list
gezeigte Nummer das zu schaltende Funkgerät auswählen:
rfkill block NUMMER # ausschalten rfkill unblock NUMMER # einschalten
Um das WLAN aus dem obigen Beispiel auszuschalten, verwendet man also:
rfkill block 0
Ist der Fehler nicht gelöst kann der Router / das Modem zurück gesetzt werden. Das unterscheidet sich je nach Gerät. Tipp: Die häufig verwendete FritzBox bietet einen Reset per Telefon an: Rufen Sie einfach die Nummer #991*15901590* an. Nach einiger Zeit , wenn die Box reagiert, fängt die Box Lampe an zu blinken. Es können 10-15 Sekunden vergehen. Der vollständige Reset dauert bis zu 2 Minuten. Danach ist die Box wieder auf die Werkseinstellungen zurück gesetzt und kann über fritz.box bzw. die dazugehörige IP-Adresse neu konfiguriert werden.
Eine Beispielanzeige der Netzkonfiguration bei genutztem VPN
michi-kiste /home/michi # ip
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.178.25 netmask 255.255.255.0 broadcast 192.168.178.255 inet6 fe80::fab8:20f3:e44b:8a09 prefixlen 64 scopeid 0x20<link> inet6 fd00::85e3:f698:d046:404e prefixlen 64 scopeid 0x0<global> inet6 2a02:8122:1bf:c6f8:ffa8:a8d4:bb11:7ca prefixlen 64 scopeid 0x0<global> ether a2:97:a2:55:53:be txqueuelen 1000 (Ethernet) RX packets 18739 bytes 18255586 (17.4 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 13103 bytes 2021689 (1.9 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo:
flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10<host> loop txqueuelen 1000 (Lokale Schleife) RX packets 60 bytes 4464 (4.3 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 60 bytes 4464 (4.3 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
tun0
: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST> mtu 1500 inet 10.8.8.112 netmask 255.255.255.0 destination 10.8.8.112 inet6 fe80::1822:9957:71ff:e07a prefixlen 64 scopeid 0x20<link> unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 txqueuelen 100 (UNSPEC) RX packets 18657 bytes 18818795 (17.9 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 13003 bytes 1159029 (1.1 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
route -n
Kernel IP Routentabelle Ziel Router Genmask Flags Metric Ref Use Iface 0.0.0.0 10.8.8.1 0.0.0.0 UG 50 0 0 tun0 0.0.0.0 192.168.178.10 0.0.0.0 UG 100 0 0 eth0 5.254.80.163 192.168.178.10 255.255.255.255 UGH 100 0 0 eth0 10.8.8.0 0.0.0.0 255.255.255.0 U 50 0 0 tun0 192.168.178.0 0.0.0.0 255.255.255.0 U 100 0 0 eth0 192.168.178.10 0.0.0.0 255.255.255.255 UH 100 0 0 eth0
WLAN
Die Konfiguration der wpa Datei für die Verschlüsselung kann über ein Script einfach durchgeführt werden:
localhost # wpa_passphrase | tee /etc/wpa_supplicant.conf
Nach Eingabe des Befehls einfach das Kennwort eingeben. Es wird über die Tastatureneingabe gelesen. Sie sehen nicht, was Sie schreiben.
Beispiel-Anzeige in der dmesg zum WLAN. Hier wurde erst 3x versucht eine Verbindung herstellen. Dies ist aufgrund fehlgeschlagener Authentifizierung nicht gelungen ( wlp2s0: authentication with c8:0e:15:95:8c:f1 timed out ) Dann war es erfolgreich.
localhost # dmesg [ 2018.950586] IPv6: ADDRCONF(NETDEV_CHANGE): wlp2s0: link becomes ready [ 2031.137058] wlp2s0: Connection to AP c8:0e:15:95:8c:f1 lost [ 2032.253515] wlp2s0: authenticate with c8:0e:15:95:8c:f1 [ 2032.273308] wlp2s0: send auth to c8:0e:15:95:8c:f1 (try 1/3) [ 2032.377160] wlp2s0: send auth to c8:0e:15:95:8c:f1 (try 2/3) [ 2032.481190] wlp2s0: send auth to c8:0e:15:95:8c:f1 (try 3/3) [ 2032.585162] wlp2s0: authentication with c8:0e:15:95:8c:f1 timed out [ 2039.994239] wlp2s0: authenticate with c8:0e:15:95:8c:f1 [ 2040.013915] wlp2s0: send auth to c8:0e:15:95:8c:f1 (try 1/3) [ 2040.016721] wlp2s0: authenticated [ 2040.017590] wlp2s0: associate with c8:0e:15:95:8c:f1 (try 1/3) [ 2040.022160] wlp2s0: RX AssocResp from c8:0e:15:95:8c:f1 (capab=0x31 status=0 aid=1) [ 2040.022557] wlp2s0: associated
Ist das WLAN im Kernel aktiv? In diesem Beispiel nicht : (is not set)
michi-kiste /home/michi # cat /usr/src/linux/.config | grep WLAN # CONFIG_WLAN is not set oder aktiviert:
localhost /home/fridolin # cat /usr/src/linux/.config | grep WLAN CONFIG_WLAN=y CONFIG_WLAN_VENDOR_ADMTEK=y CONFIG_WLAN_VENDOR_ATH=y CONFIG_WLAN_VENDOR_ATMEL=y CONFIG_WLAN_VENDOR_BROADCOM=y CONFIG_WLAN_VENDOR_CISCO=y CONFIG_WLAN_VENDOR_INTEL=y CONFIG_WLAN_VENDOR_INTERSIL=y CONFIG_WLAN_VENDOR_MARVELL=y CONFIG_WLAN_VENDOR_MEDIATEK=y CONFIG_WLAN_VENDOR_RALINK=y CONFIG_WLAN_VENDOR_REALTEK=y CONFIG_WLAN_VENDOR_RSI=y CONFIG_WLAN_VENDOR_ST=y CONFIG_WLAN_VENDOR_TI=y CONFIG_WLAN_VENDOR_ZYDAS=y # CONFIG_USB_NET_RNDIS_WLAN is not set
Das grundlegende Gentoo-Wiki zum Netzwerkbereich gibt es unter https://wiki.gentoo.org/wiki/Handbook:X86/Installation/Networking/de
Hinweis: diese Seite ist teilweise in Deutsch, teilweise in englisch
Eine Seite mit guter Erläuterung der Konfigurationsdateien unter Linux allgemein: http://www.linuxhaven.de/dlhp/HOWTO/DE-Netzwerk-HOWTO-4.html
systemctl start dhcpcd