Netzwerk-Probleme beim Raspberry Pi lösen

ELektronik-KOmpendium.de
Online

Preis auf Anfrage
Vergleichen Sie diesen Kurs mit ähnlichen Kursen
Mehr ansehen

Wichtige informationen

  • Kurs
  • Online
Beschreibung

Netzwerk-Probleme beim Raspberry Pi lösen Folgende Hinweise sollen bei einer Reihe typischer Netzwerk-Probleme mit dem Raspberry Pi helfen.

Wichtige informationen

Themenkreis

Übersicht: Netzwerk-Troubleshooting

Hilft bei folgenden Problemen:

  • Sporadische Netzwerk-Verbindungsprobleme
    • Instabile Stromversorgung
  • Internet geht nicht mehr
    • IP-Konfiguration prüfen
    • Standard-Gateway prüfen
    • Namensauflösung prüfen
  • Keine Netzwerk-Verbindung möglich
    • IP-Konfiguration prüfen
    • Temporäre IPv4-Konfiguration
  • Raspberry Pi bekommt zwei IP Adressen zugewiesen
    • Problem: IPv4-Konfiguration mit zwei IPv4-Adressen
Hauptursache bei Netzwerk-Problemen: Instabile Stromversorgung

Oft stehen Netzwerk-Probleme beim Raspberry Pi im Zusammenhang mit einer instabilen Stromversorgung. So kann es passieren, dass bei einer zu geringen Betriebsspannung, unter 5 Volt, der Raspberry Pi zur Stabilisierung, den Stromverbrauch reduziert, in dem er einzelne Komponenten abschaltet. Zum Beispiel den USB. Dort hängen nicht nur die üblichen Peripherie-Geräte dran, sondern intern auch noch der Ethernet-Port. Geht der interne USB außer Betrieb, dann betrifft das auch die Netzwerk-Verbindung. Die geht bei stabiler Betriebsspannung wieder in Betrieb. Doch das bedeutet nicht, dass danach alles wieder so funktioniert, wie gewünscht.

Bei sporadischen Ausfällen und Netzwerk-Problemen sollte man zuerst das Netzteil tauschen. Vor allem dann, wenn die Netzwerk-Konfiguration schon mal funktioniert hat, und dann auf einmal nicht mehr. Oft ist dann das Netzteil Schuld.

  • Raspberry Pi: Das richtige Netzteil
  • Raspberry Pi: Grundlagen der Energieversorgung / Stromversorgung
Welche Linux-Distribution?

Am Anfang der Fehlersuche sollte klar sein, auf was für einem System man arbeitet. Denn je nach Linux-Distribution und -Version, kann es Unterschiede geben, wo etwas konfiguriert werden muss.

uname -a

Die folgende Fehlersuche und Troubleshooting ist auf Debian-basierte Linux-Distributionen ausgelegt. Also zum Beispiel Raspbian für den Raspberry Pi.

Welche Netzwerk-Schnittstellen gibt es und welche IP-Adressen haben sie?

Die erste Frage in Bezug auf Netzwerk-Probleme ist, welche Netzwerk-Schnittstellen wurden erkannt und welche dieser Schnittstellen wurden IP-Adressen zugeteilt?

ifconfig

oder

ip a

Standardmäßig hat ein Raspberry Pi Modell B(+) eine Ethernet-Schnittstelle für ein kabelgebundenes Netzwerk. Die Schnittstelle hat intern das Kürzel "eth0". Wenn diese Schnittstelle eine IP-Adresse zugeteilt bekommen hat, dann weist die Schnittstelle "eth0" eine Zeile mit "inet Adresse" und bei IPv6 auch eine oder mehrere Zeilen mit "inet6-Adresse" auf.
Genauso sieht es bei einer per WLAN-USB-Adapter hinzugefügten WLAN-Schnittstelle aus, die das Kürzel "wlan0" aufweist. Ist diese WLAN-Schnittstelle nicht vorhanden, dann hat es ein Problem mit der Hardware-Erkennung gegeben.

Sind beide oder eine von beiden Schnittstellen vorhanden, haben aber keine IP-Adresse oder nur eine in der Form "169.254.xxx.xxx.", dann ist die "IP-Konfiguration" fehlerhaft oder nicht vorhanden.

  • Lösung: IPv4-Konfiguration (Raspbian Jessie)
  • Lösung: IPv4-Konfiguration (Raspbian Wheezy)
  • Lösung: IPv6-Konfiguration
  • Lösung: WLAN-Konfiguration

Haben die verwendeten Schnittstellen eine IP-Adresse kann man prüfen, ob generell eine Verbindung im Netzwerk möglich ist.

arp -av

Das Kommando braucht ein paar Sekunden und zeigt dann an, welche Stationen im lokalen Netzwerk erreichbar sind. Wenn aber keine Internet-Verbindung möglich ist, dann sollte man das Standard-Gateway prüfen.

Keine Internet-Verbindung: Standard-Gateway prüfen

Das Standard-Gateway ist in einem Netzwerk der Übergang in das Internet bzw. in den nächst höheren Teil des Netzwerks, der ins Internet führt. In der Regel ist das das Zugangsnetz des eigenen Internet-Providers. Die Verbindung ins Internet ist nur dann möglich, wenn ein Host die IP-Adresse des Standard-Gateways kennt. Ohne diese IP-Adresse sind nur Verbindungen im lokalen Netzwerk möglich.

route -n

Die Ausgabe sollte so oder so ähnlich sein:

Kernel-IP-Routentabelle Ziel Router Genmask Flags Metric Ref Use Iface 0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 eth0 192.168.1.1 0.0.0.0 255.255.255.0 U 0 0 0 eth0 netstat -r

Die Ausgabe sollte so oder so ähnlich sein:

Kernel-IP-Routentabelle Ziel Router Genmask Flags MMS Fenster irtt Iface default 192.168.1.1 0.0.0.0 UG 0 0 0 eth0 192.168.1.0 * 255.255.255.0 U 0 0 0 eth0

Jeweils die erste Zeile in beiden Tabellen ist wichtig. Sie beginnt mit "0.0.0.0" oder "default". Das ist die Standard- bzw. Default-Route, also das Ziel, dass immer dann gilt, wenn dem Host die Route zur Ziel-Adresse nicht bekannt ist. Für das Datenpaket ist dann das Standard-Gateway zuständig. Aber, dafür muss die IP-Adresse des Standard-Gateways dem Host bekannt sein. Das ist der Fall, wenn die IP-Adresse hier eingetragen ist. In dem Fall beispielhaft "192.168.1.1".

Wenn es keine Zeile mit "0.0.0.0" oder "default" gibt, oder hier eine falsche IP-Adresse eingetragen ist, dann wird in der Regel keine Verbindung ins Internet möglich sein.
Der Grund für das Fehlen des Standard-Gateways ist eine unvollständige manuelle IP-Konfiguration oder der DHCP-Server hat eine unvollständige IP-Konfiguration übermittelt. Oder es fand keine IP-Konfiguration statt.

  • Lösung: IPv4-Konfiguration (Raspbian Jessie)
  • Lösung: IPv4-Konfiguration (Raspbian Wheezy)

Weist die Tabelle eine Standard-Route auf und die IP-Adresse entspricht der des Standard-Gateways, und es ist trotzdem keine Internet-Verbindung möglich, dann kann es sein, dass das Standard-Gateway keine Verbindung zum Internet hat oder ausgeschaltet ist.

Das kann man mit einem Ping auf das Standard-Gateway klären.

ping -c 5 192.168.1.1

Ist das Standard-Gateway erreichbar, dann ist die Konfiguration bezüglich des Standard-Gateways korrekt.
Wenn trotzdem keine Internet-Verbindung möglich ist, dann liegt es eventuell an einer nicht funktionierenden Namensauflösung.

Keine Internet-Verbindung: Namensauflösung prüfen

Die Namensauflösung sorgt dafür, dass aus einem Domain-Namen, wie zum Beispiel http://www.elektronik-kompendium.de/ eine IP-Adresse wird. Denn Internet-Verbindungen sind nur auf Basis einer IP-Adresse möglich. Für die Namensauflösung ist ein DNS-Server zuständig, dessen IP-Adresse in der IP-Konfiguration angegeben sein muss.

Erst einmal prüfen wir die Namensauflösung:

host www.elektronik-kompendium.de

Die Ausgabe sollte eine IP-Adresse sein. Wenn das nicht funktioniert, dann funktioniert die lokale Namensauflösung nicht. Also prüfen wir, ob die Namensauflösung über einen externen Nameserver funktioniert.

host www.elektronik-kompendium.de 8.8.8.8

Wenn das nicht funktioniert, dann sollte man die Internet-Verbindung prüfen. Also in dem Fall den Internet-Zugangs-Router und den Internet-Anschluss.

Wenn die Namensauflösung nur über den externen Nameserver funktioniert, fehlt eventuell der Eintrag für den Nameserver in der IP-Konfiguration.

cat /etc/resolv.conf

In der Regel sollte die Ausgabe auch eine Zeile mit "nameserver" und einer IP-Adresse ergeben. Diese IP-Adresse stimmt in der Regel mit der IP-Adresse des Standard-Gateways übereinstimmt. In kleinen lokalen Netzwerken ist das Standard-Gateway auch der DNS-Server bzw. Nameserver.
Oft kommt es vor, dass aus früheren IP-Konfigurationen eine alte IP-Adresse oder auch keine eingetragen ist. In so einem Fall sollte man die IP-Konfiguration (manuell oder per DHCP) überprüfen.

Hinweis: Oft kommt es vor, dass der Raspberry Pi ganz plötzlich keine Internet-Verbindung mehr bekommt. Der Grund ist, bei der Erstinstallation zieht sich der Raspberry Pi per DHCP die IP-Konfiguration. Dabei wird der DNS-Server in die Datei "/etc/resolv.conf" geschrieben. Irgendwann später wird der DHCP-Client deaktiviert und die IP-Konfiguration manuell erstellt. Dabei wird die Angabe für den Nameserver vergessen. Der Eintrag in der Datei "/etc/resolv.conf" bleibt derweil erhalten. Irgendwann wird die Datei aus irgendeinem Grund überschrieben. Und plötzlich ist keine Internet-Verbindung mehr möglich, weil die Namensauflösung nicht mehr funktioniert.

  • Lösung: IPv4-Konfiguration (Raspbian Jessie)
  • Lösung: IPv4-Konfiguration (Raspbian Wheezy)
Temporäre IPv4-Konfiguration

Wenn man schnell eine IPv4-Konfiguration vornehmen will, ohne Dateien zu editieren, kann man das auch mit ein paar Kommandos auf der Kommandozeile machen. Die Einstellungen sind dann aber nach einem Neustart wieder weg.
Die IPv4-Adressen der folgenden Beispiel sind an die jeweiligen Erfordernisse anzupassen.

IP-Adresse und Subnetzmaske:

ip addr add 192.168.1.5/24 dev eth0

Standard-Gateway:

ip route add default via 192.168.1.1

Oder:

route add default gw 192.168.1.1 eth0

Der DNS-Server muss fest in die Datei "/etc/resolv.conf" eingetragen werden:

nameserver 192.168.1.1

Hinweis: Diese Konfiguration geht nach einem Neustart verloren.

Problem: IPv4-Konfiguration mit zwei IPv4-Adressen

Ein beliebter Fehler ist, dass der Raspberry Pi zwei IPv4-Adressen an einer Netzwerk-Schnittstelle hat. Das liegt daran, weil man unwissentlich zwei unterschiedliche Arten der IPv4-Konfiguration parallel betreibt. In der Regel hat man die IPv4-Konfiguration manuell gemacht (statische IPv4-Adresse) und gleichzeitig ist noch ein DHCP-Client aktiv, von dem man nichts weiß.

Hintergrund: Es gibt ab Raspbian Wheezy vom 2015-05-05 zwei Möglichkeiten eine statische (manuelle) IPv4-Konfiguration vorzunehmen. Die alte Vorgehensweise über die Datei "/etc/network/interfaces" und die neue Vorgehensweise über die Datei "/etc/dhcpcd.conf". Zu empfehlen ist die neue, weil in Zukunft die alte unter Umständen gar nicht mehr funktionieren wird.

Um festzustellen, ob das Problem tatsächlich vorliegt, prüfen wir, ob ein DHCP-Client installiert und aktiv ist.

sudo service dhcpcd status

Wenn ja, dann sollte die manuelle IP-Konfiguration NICHT in der Datei "/etc/network/interfaces", sondern in der Datei "/etc/dhcpcd.conf" erfolgen.

  • Lösung: IPv4-Konfiguration (Raspbian Jessie)
  • Lösung: IPv4-Konfiguration (Raspbian Wheezy)
  • Lösung: IPv6-Konfiguration

Es kann Gründe geben weiterhin die Datei "/etc/network/interfaces" für IP-Konfiguration zu verwenden. Dann muss man aber auch den Daemon "dhcpcd" außer Betrieb nehmen. Dazu gibt es zwei Möglichkeiten.

Entweder man schaltet den Start des Daemon "dhcpcd" beim Booten aus (empfohlen).

sudo update-rc.d -f dhcpcd remove

Oder, wenn man radikal sein will, dann entfernt man "dhcpcd" ganz (nicht empfohlen).

sudo apt-get remove dhcpcd

In beiden Fällen ist ein Neustart notwendig, um zu prüfen, ob der Daemon ausgeschaltet bleibt.

sudo reboot

Nach dem Neustart prüft man, ob der Raspberry Pi jetzt nur noch eine IPv4-Adresse hat.

ifconfig dhcpcd - DHCP Client Daemon

Status abfragen:

sudo service dhcpcd status

Stoppen:

sudo service dhcpcd stop

Starten:

sudo service dhcpcd start

Starten des Daemon beim Booten abschalten:

sudo update-rc.d -f dhcpcd remove

Starten des Daemon beim Booten einschalten:

sudo update-rc.d dhcpcd defaults

Oder, wenn man radikal sein will, dann entfernt man "dhcpcd" ganz (nicht empfohlen).

sudo apt-get remove dhcpcd

Um "dhcpcd" zu installieren:

sudo apt-get install dhcpcd5 raspberrypi-net-mods sudo reboot Inhalt der Datei "/etc/network/interfaces"

Gelegentlich kommt es vor, dass man seine Netzwerk-Konfiguration völlig zerschossen hat und einfach die Original-Datei wieder herstellen will.

Der Inhalt der Datei "/etc/network/interfaces" sieht im Original-Zustand wie folgt aus (vor Raspbian Wheezy vom 2015-05-05):

auto lo iface lo inet loopback iface eth0 inet dhcp allow-hotplug wlan0 iface wlan0 inet manual wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf iface default inet dhcp

Der Inhalt der Datei "/etc/network/interfaces" sieht im Original-Zustand wie folgt aus (ab Raspbian Wheezy vom 2015-05-05):

auto lo iface lo inet loopback auto eth0 allow-hotplug eth0 iface eth0 inet manual auto wlan0 allow-hotplug wlan0 iface wlan0 inet manual wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf auto wlan1 allow-hotplug wlan1 iface wlan1 inet manual wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf Was, wenn das alles nicht geholfen hat?

Es gibt manchmal ganz verzwickte Konstellationen, in deren Vorgänge man einfach nicht hineinblicken kann. Das heißt, dass man keinen Fehler findet, aber trotzdem ein Netzwerk-Problem vorliegt. Dann empfiehlt es sich, wirklich mal ein anderes Steckernetzteil zu verwenden. Wenn auch das nicht hilft, muss man zu ungewöhnlichen Mittel greifen.

Die folgenden Tipps zur Lösung von Netzwerk-Problemen mit dem Raspberry Pi sind nur als letzter Strohhalm zu betrachten. Es kann gut sein, dass es im einen oder anderen Fall hilft, muss es aber nicht. Es gibt also keine Erfolgsgarantie.

Manchmal hat es schon geholfen einfach mal eine Aktualisierung durchzuführen.

sudo apt-get update sudo apt-get upgrade sudo reboot

Grundsätzlich sollte man nicht ausschließen, dass das Problem nicht am Raspberry Pi liegt, sondern vielleicht im lokalen Netzwerk zu suchen ist, auch wenn man dort mit anderen Geräten keine Probleme hat.
Man sollte als auch mal einen Blick auf den eigenen Internet-Router werfen. Vielleicht hilft hier ein Neustart oder es ist etwas falsch konfiguriert. So mancher Internet-Router hat schon verrückt gespielt.

Weitere verwandte Themen:
  • Netzwerk- und IP-Konfiguration des Raspberry Pi ermitteln
  • Statische IPv4-Adresse für Raspbian Jessie (Raspberry Pi)
  • Statische IPv4-Adresse für Raspbian Wheezy (Raspberrry Pi)
  • IPv6 auf dem Raspberry Pi einschalten und konfigurieren
  • Feste IPv6-Adresse für den Raspberry Pi einrichten
  • WLAN-Adapter am Raspberry Pi einrichten

Hinweis: Dieses Tutorial ist Teil einer Aufgaben und Übungen mit dem Raspberry Pi-Reihe, die für Lern- und Ausbildungszwecke erstellt wurde. Die dargestellte Lösung ist Teil einer konkreten Aufgabenstellung, die Schüler, Auszubildende und Studenten, lösen sollen. Deshalb muss der hier aufgezeigte Weg nicht der Optimalfall sein.


Vergleichen Sie diesen Kurs mit ähnlichen Kursen
Mehr ansehen