Der Befehl ping prueft, ob ein Host im Netzwerk erreichbar ist. Er sendet ICMP-Echo-Pakete an eine Zieladresse und misst, wie lange die Antwort braucht. Damit erkennst du Verbindungsprobleme, Latenzen und Paketverluste.
Syntax des ping-Befehls
ping [optionen] ziel
ziel- Eine IP-Adresse oder ein Hostname.optionen- Flags wie-cfuer die Anzahl der Pakete oder-ifuer das Intervall.
So funktioniert ping
ping sendet ICMP-Echo-Request-Pakete an das Ziel. Wenn der Host erreichbar ist, antwortet er mit einem Echo-Reply. Die Zeit zwischen Anfrage und Antwort ist die Latenz (Round-Trip-Time).
ping google.com
PING google.com (172.217.22.206) 56(84) bytes of data.
64 bytes from muc11s01-in-f14.1e100.net (172.217.22.206): icmp_seq=1 ttl=53 time=40.2 ms
64 bytes from muc11s01-in-f14.1e100.net (172.217.22.206): icmp_seq=2 ttl=53 time=41.8 ms
64 bytes from muc11s01-in-f14.1e100.net (172.217.22.206): icmp_seq=3 ttl=53 time=47.4 ms
^C
--- google.com ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 40.163/43.133/47.408/3.191 ms
Die Ausgabe zeigt fuer jedes empfangene Paket:
64 bytes- Groesse der Antworticmp_seq=1- Sequenznummer des Paketsttl=53- Time to Live, die Anzahl der verbleibenden Hopstime=40.2 ms- Antwortzeit in Millisekunden
Ohne die Option -c laeuft ping endlos weiter. Beende es mit Strg+C. Danach siehst du eine Zusammenfassung mit gesendeten und empfangenen Paketen, Paketverlust und Latenzstatistik.
Anzahl der Pakete begrenzen
Mit -c legst du fest, wie viele Pakete gesendet werden:
ping -c 5 google.com
Der Befehl sendet fuenf Pakete und beendet sich automatisch. Das ist praktisch fuer Skripte oder schnelle Tests.
Intervall zwischen Paketen aendern
Standardmaessig wartet ping eine Sekunde zwischen den Paketen. Mit -i aenderst du das Intervall:
ping -i 0.5 google.com
Fuer Intervalle unter 0.2 Sekunden brauchst du Root-Rechte:
sudo ping -i 0.1 google.com
Flood-Ping fuer Lasttests
Mit -f sendet ping Pakete so schnell wie moeglich. Das erfordert Root-Rechte:
sudo ping -f google.com
Fuer jeden gesendeten Ping wird ein Punkt ausgegeben, fuer jede Antwort wird ein Punkt entfernt. Viele Punkte bedeuten hohen Paketverlust. Nutze diese Option nur in deinem eigenen Netzwerk.
Paketgroesse festlegen
Mit -s aenderst du die Groesse des ICMP-Datenbereichs:
ping -s 1000 google.com
Das sendet Pakete mit 1000 Bytes Nutzdaten. Standardmaessig sind es 56 Bytes, was mit dem ICMP-Header 64 Bytes ergibt. Groessere Pakete helfen bei der Diagnose von MTU-Problemen.
Quellschnittstelle angeben
Wenn dein Rechner mehrere Netzwerkschnittstellen hat, waehle mit -I die gewuenschte aus:
ping -I eth0 google.com
Das ist nuetzlich auf Servern mit mehreren IP-Adressen oder bei VPN-Verbindungen.
IPv4 oder IPv6 erzwingen
Standardmaessig waehlt ping das Protokoll basierend auf der DNS-Aufloesung. Erzwinge IPv4 mit -4:
ping -4 google.com
Oder IPv6 mit -6:
ping -6 google.com
Alternativ gibt es die Aliase ping4 und ping6.
Nur den Exit-Code nutzen
Fuer Skripte interessiert oft nur, ob der Host erreichbar ist. Mit -c 1 -W 2 sendest du ein Paket mit zwei Sekunden Timeout:
ping -c 1 -W 2 server.example.com > /dev/null && echo "erreichbar" || echo "nicht erreichbar"
Der Exit-Code ist 0 bei Erfolg und 1 oder 2 bei Fehlern.
Wenn ping nicht antwortet
Keine Antwort bedeutet nicht automatisch, dass der Host offline ist. Moegliche Ursachen:
- Eine Firewall blockiert ICMP-Pakete
- Der Host ist so konfiguriert, dass er nicht auf Pings antwortet
- Routing-Probleme auf dem Weg zum Ziel
Bei Paketverlusten hilft traceroute, um herauszufinden, wo die Pakete verloren gehen.
Zusammenfassung
Der Befehl ping ist das Standardwerkzeug fuer Netzwerk-Tests. Mit wenigen Optionen pruefst du Erreichbarkeit, misst Latenzen und erkennst Verbindungsprobleme.