ping-Befehl: Linux-ping-Optionen und 100% packet loss prüfen
Ob Pakete von einem Linux-Server einen anderen Server erreichen und wie lange der Hin- und Rückweg dauert, prüfst du mit dem Befehl ping. Von Servern mit AlmaLinux 9 und Debian 12 aus mit einer per -c festgelegten Anzahl an example.com gesendet, lag die Round-Trip-Zeit bei 1–3 ms, und ein Server, der ICMP blockiert, zeigte bei ping 100% packet loss, obwohl er auf Web-Anfragen antwortete.
Die folgende Ausgabe stammt von einem AlmaLinux-9.8-Server (root-Konto) und einem Debian-12-Server (normales Konto). Jedes ping wurde mit einer per -c festgelegten Anzahl ausgeführt. Private IP-Adressen von Routern unterwegs wurden durch Beispielwerte ersetzt, Adressen, die aus öffentlichen Domains wie example.com aufgelöst wurden, blieben unverändert.
1️⃣ So verwendest du den Befehl ping
ping sendet eine ICMP-Echo-Anfrage an den anderen Server und gibt Zeile für Zeile aus, wie lange es bis zur Echo-Antwort gedauert hat. Ohne Anzahl per -c sendet ping unter Linux weiter, bis du es mit Strg+C stoppst (laut offiziellem Handbuch), deshalb startest du es von Anfang an mit einer Anzahl wie -c 4.
ping -c 4 example.comPING example.com (172.66.147.243) 56(84) bytes of data.
64 bytes from 172.66.147.243 (172.66.147.243): icmp_seq=1 ttl=58 time=1.46 ms
64 bytes from 172.66.147.243 (172.66.147.243): icmp_seq=2 ttl=58 time=1.30 ms
64 bytes from 172.66.147.243 (172.66.147.243): icmp_seq=3 ttl=58 time=1.28 ms
64 bytes from 172.66.147.243 (172.66.147.243): icmp_seq=4 ttl=58 time=1.30 ms
--- example.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3003ms
rtt min/avg/max/mdev = 1.279/1.336/1.464/0.074 msVom Debian-12-Server viermal an example.com gesendet, kamen alle vier Antworten zurück, mit Round-Trip-Zeiten von 1,28–1,46 ms. Was jede Zeile zeigt, steht unten.
| Ausgabe | Was er zeigt |
|---|---|
| PING example.com (172.66.147.243) 56(84) bytes of data. | Die aus dem Namen aufgelöste Adresse und die gesendete Größe — 56 Byte Daten plus 20 Byte IP-Header und 8 Byte ICMP-Header ergeben 84 Byte |
| 64 bytes from … | Größe der zurückgekommenen Antwort (56 Byte Daten + 8 Byte ICMP-Header) |
| icmp_seq=1 | Laufende Nummer des gesendeten Pakets |
| ttl=58 | TTL, die im Antwortpaket übrig ist — sinkt mit jedem Router, den das Paket passiert, um 1 |
| time=1.46 ms | Round-Trip-Zeit dieses Pakets |
| 4 packets transmitted, 4 received, 0% packet loss | Gesendete Pakete, empfangene Pakete und Anteil ohne Antwort |
| time 3003ms | Zeit vom ersten gesendeten Paket bis zum Ende |
| rtt min/avg/max/mdev | Minimum, Durchschnitt und Maximum der Round-Trip-Zeit sowie ihre Streuung (mdev) |
mdev zeigt, wie weit die Round-Trip-Zeiten vom Durchschnitt abweichen, und laut offiziellem Handbuch bedeutet ein größerer Wert ungleichmäßigere Round-Trip-Zeiten. In diesem Ergebnis, bei dem alle vier Antworten unter 1,5 ms lagen, war mdev 0,074 ms.
Derselbe Befehl auf dem AlmaLinux-9-Server sendete an die IPv6-Adresse von example.com, und in der ersten Zeile stand nur 56 data bytes ohne die 84.
ping -c 4 example.comPING example.com(2606:4700:10::ac42:93f3 (2606:4700:10::ac42:93f3)) 56 data bytes
64 bytes from 2606:4700:10::ac42:93f3 (2606:4700:10::ac42:93f3): icmp_seq=1 ttl=51 time=2.20 ms
64 bytes from 2606:4700:10::ac42:93f3 (2606:4700:10::ac42:93f3): icmp_seq=2 ttl=54 time=2.30 ms
64 bytes from 2606:4700:10::ac42:93f3 (2606:4700:10::ac42:93f3): icmp_seq=3 ttl=51 time=2.55 ms
64 bytes from 2606:4700:10::ac42:93f3 (2606:4700:10::ac42:93f3): icmp_seq=4 ttl=54 time=2.26 ms
--- example.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3004ms
rtt min/avg/max/mdev = 2.203/2.326/2.547/0.131 msDie installierte ping-Version prüfst du mit -V. Der Debian-12-Server hatte iputils 20221126, der AlmaLinux-9-Server iputils 20210202.
ping -Vping from iputils 20221126
libcap: yes, IDN: yes, NLS: no, error.h: yes, getrandom(): yes, __fpending(): yesping -Vping from iputils 202102022️⃣ ping-Optionen für Anzahl und Intervall
Unter den ping-Optionen ist -c die Anzahl der Pakete und -i der Abstand zwischen ihnen (Sekunden). Der Standardabstand beträgt 1 Sekunde, und mit -i 0.5 sank die Zeit für vier Pakete von 3003 ms auf 1502 ms.
ping -c 4 -i 0.5 example.comPING example.com (172.66.147.243) 56(84) bytes of data.
64 bytes from 172.66.147.243 (172.66.147.243): icmp_seq=1 ttl=58 time=1.26 ms
64 bytes from 172.66.147.243 (172.66.147.243): icmp_seq=2 ttl=58 time=1.31 ms
64 bytes from 172.66.147.243 (172.66.147.243): icmp_seq=3 ttl=58 time=1.37 ms
64 bytes from 172.66.147.243 (172.66.147.243): icmp_seq=4 ttl=58 time=1.44 ms
--- example.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 1502ms
rtt min/avg/max/mdev = 1.264/1.343/1.436/0.065 msLaut Handbuch von iputils 20210202 auf dem AlmaLinux-9-Server darf nur root einen Abstand unter 0,2 Sekunden setzen, das Handbuch von iputils 20221126 auf dem Debian-12-Server nennt als Grenze 2 ms. Kurze Abstände können den anderen Server und das Netzwerk belasten.
-w ist die Zeit (Sekunden), nach der ping ganz endet, egal wie viele Pakete gesendet wurden. Zusammen mit -c endet ping, sobald die festgelegte Zahl an Antworten da ist oder die -w-Zeit abläuft. Mit -c 10 -w 3 wurden nur drei Pakete gesendet, und nach 3 Sekunden war Schluss.
ping -c 10 -w 3 example.comPING example.com (172.66.147.243) 56(84) bytes of data.
64 bytes from 172.66.147.243 (172.66.147.243): icmp_seq=1 ttl=58 time=1.34 ms
64 bytes from 172.66.147.243 (172.66.147.243): icmp_seq=2 ttl=58 time=1.27 ms
64 bytes from 172.66.147.243 (172.66.147.243): icmp_seq=3 ttl=58 time=1.34 ms
--- example.com ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 1.272/1.318/1.342/0.032 msAlle drei Antworten kamen zurück, aber weil die festgelegten 10 nicht erreicht wurden, war der Exit-Code von ping 1. Auch das offizielle Handbuch erklärt, dass ping mit -c und -w zusammen mit 1 endet, wenn nicht die festgelegte Zahl an Antworten ankommt.
-W ist die Zeit (Sekunden), die ping auf eine einzelne Antwort wartet. Laut offiziellem Handbuch gilt dieser Wert nur, wenn gar keine Antwort kommt; bei einem Ziel, das antwortet, wartet ping das Doppelte der Round-Trip-Zeit.
Willst du nur die Zusammenfassung ohne Ergebniszeilen sehen, hängst du -q an. Nach vier Paketen blieben nur die erste Zeile und die Statistik am Ende übrig.
ping -c 4 -q example.comPING example.com (104.20.23.154) 56(84) bytes of data.
--- example.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3005ms
rtt min/avg/max/mdev = 1.551/1.649/1.715/0.060 ms3️⃣ ping-Optionen für Paketgröße und IPv6
Die Größe der gesendeten Daten änderst du mit -s. Mit -s 1000 wurde die erste Zeile zu 1000(1028) bytes und die Antwortzeilen zu 1008 bytes.
ping -c 2 -s 1000 example.comPING example.com (172.66.147.243) 1000(1028) bytes of data.
1008 bytes from 172.66.147.243 (172.66.147.243): icmp_seq=1 ttl=58 time=1.21 ms
1008 bytes from 172.66.147.243 (172.66.147.243): icmp_seq=2 ttl=58 time=1.31 ms
--- example.com ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1001ms
rtt min/avg/max/mdev = 1.214/1.262/1.311/0.048 ms1028 sind 1000 Byte Daten plus 20 Byte IP-Header und 8 Byte ICMP-Header, 1008 sind die Daten plus nur der ICMP-Header. Die Round-Trip-Zeit lag bei 1,21–1,31 ms, kaum anders als mit der Standardgröße (56 Byte).
-t legt die TTL der gesendeten Pakete fest. Die TTL sinkt mit jedem Router um 1, und bei 0 verwirft dieser Router das Paket und schickt [Time to live exceeded] zurück.
ping -c 2 -t 3 example.comPING example.com (172.66.147.243) 56(84) bytes of data.
From 192.0.2.103 (192.0.2.103) icmp_seq=1 Time to live exceeded
From 192.0.2.103 (192.0.2.103) icmp_seq=2 Time to live exceeded
--- example.com ping statistics ---
2 packets transmitted, 0 received, +2 errors, 100% packet loss, time 1001msMit der TTL auf 3 schickte der dritte Router beide Male [Time to live exceeded] zurück. Als die TTL von 1 an schrittweise erhöht wurde, kam von example.com bei 8 die erste Antwort.
-4 und -6 legen fest, ob an IPv4- oder IPv6-Adressen gesendet wird. Der AlmaLinux-9-Server sendete auch ohne Option an die IPv6-Adresse von example.com, deshalb wurde für die IPv4-Adresse -4 angehängt.
ping -4 -c 4 example.comPING (172.66.147.243) 56(84) bytes of data.
64 bytes from 172.66.147.243 (172.66.147.243): icmp_seq=1 ttl=54 time=2.64 ms
64 bytes from 172.66.147.243 (172.66.147.243): icmp_seq=2 ttl=54 time=2.55 ms
64 bytes from 172.66.147.243 (172.66.147.243): icmp_seq=3 ttl=54 time=2.57 ms
64 bytes from 172.66.147.243 (172.66.147.243): icmp_seq=4 ttl=54 time=2.58 ms
--- ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3003ms
rtt min/avg/max/mdev = 2.553/2.585/2.642/0.033 msMit iputils 20210202 auf dem AlmaLinux-9-Server blieb mit -4 das Namensfeld in der ersten Zeile und in der Statistikzeile leer. Derselbe Befehl mit iputils 20221126 auf dem Debian-12-Server zeigte example.com wie gewohnt.
Auf dem Debian-12-Server ohne IPv6-Standardroute endete ping mit -6 sofort mit [connect: Network is unreachable], ohne Antwortzeilen.
ping -6 -c 2 example.comping: connect: Network is unreachable🔲 Optionen des Befehls ping
📌 Wichtige Optionen: Ergebnisse aus diesem Artikel
| Option | Was es tut | Ergebnis in diesem Artikel | |
|---|---|---|---|
| -c Anzahl | Legt fest, wie viele Pakete gesendet werden, und endet danach | -c 4 auf dem Debian-12-Server: vier Pakete, vier Antworten, Round-Trip 1,28–1,46 ms | |
| -i Intervall | Abstand zwischen den Paketen (Sekunden), Standard 1 Sekunde | Mit -i 0.5 sank die Zeit für vier Pakete von 3003 ms auf 1502 ms | |
| -w Zeit | Zeit (Sekunden), nach der ping ganz endet, egal wie viele Pakete gesendet wurden | -c 10 -w 3 sendete nach 3 Sekunden nur drei Pakete und endete mit Exit-Code 1 | |
| -W Zeit | Zeit (Sekunden) für das Warten auf eine einzelne Antwort, wenn gar keine Antwort kommt | Zweimal an 192.0.2.1 mit -W 1: [100% packet loss], Exit-Code 1 | |
| -q | Gibt nur die erste Zeile und die Statistik am Ende aus, ohne Antwortzeilen | Nach vier Paketen blieben nur die erste Zeile und die Statistikzeile | |
| -s Größe | Größe der gesendeten Daten (Byte), Standard 56 | Mit -s 1000 zeigt die erste Zeile 1000(1028) bytes, die Antwortzeilen 1008 bytes | |
| -t TTL | TTL der gesendeten Pakete | Mit -t 3 schickte der dritte Router beide Male [Time to live exceeded] zurück | |
| -4 | Sendet nur an IPv4-Adressen | Auf dem AlmaLinux-9-Server an die IPv4- statt die IPv6-Adresse gesendet, das Namensfeld bleibt leer | |
| -6 | Sendet nur an IPv6-Adressen | Auf dem Debian-12-Server ohne IPv6-Standardroute: [connect: Network is unreachable] | |
| -D | Setzt vor jede Antwortzeile die Unix-Zeit (Sekunden.Mikrosekunden) | Vor jeder Antwortzeile steht ein Zeitstempel wie [1793227536.574201] | |
| -V | Gibt Versionsinformationen aus | Debian 12 hat iputils 20221126, AlmaLinux 9 hat iputils 20210202 |
📎 Weitere Optionen: laut offiziellem Handbuch
| Option | Was es tut | |
|---|---|---|
| -n | Gibt Adressen nur als Zahlen aus, ohne sie in Namen aufzulösen | |
| -I Schnittstelle | Legt die Schnittstelle oder Quelladresse fest, über die gesendet wird | |
| -A | Passt den Sendeabstand selbst an die Round-Trip-Zeit an; ohne root mindestens 200 ms Abstand | |
| -f | Flood-ping, das schnell sendet, ohne auf Antworten zu warten; Abstand 0 nur für root | |
| -l Anzahl | Zahl der Pakete, die vorab ohne Warten auf Antwort gesendet werden; mehr als 3 nur für root | |
| -M do | Legt den Modus für Path MTU Discovery fest; do verhindert Fragmentierung (want und dont gehen auch) | |
| -p Muster | Byte-Muster, mit dem die gesendeten Pakete gefüllt werden, bis 16 Byte | |
| -O | Meldet Anfragen ohne Antwort, bevor das nächste Paket gesendet wird; zusammen mit -D zum Protokollieren | |
| -R | Zeichnet den genommenen Weg auf (nur IPv4; viele Hosts ignorieren diese Option) | |
| -b | Erlaubt das Senden an eine Broadcast-Adresse | |
| -a | Gibt bei jeder Antwort einen Ton aus |
🔲 Simulator für den Befehl ping
Im Simulator unten kannst du selbst Befehle eingeben und die Ergebnisse für Anzahl und Intervall, Paketgröße und das Senden an eine Adresse ohne Antwort ausprobieren.
4️⃣ ping bekommt keine Antwort
[100% packet loss] bedeutet, dass auf die gesendeten Pakete keine einzige Antwort kam. Zweimal mit -W 1 an 192.0.2.1 gesendet, eine für Dokumentation reservierte Adresse, erschien nur die Statistik ohne Antwortzeilen.
ping -c 2 -W 1 192.0.2.1PING 192.0.2.1 (192.0.2.1) 56(84) bytes of data.
--- 192.0.2.1 ping statistics ---
2 packets transmitted, 0 received, 100% packet loss, time 1024msKam gar keine Antwort, war der Exit-Code von ping 1, mit Antworten war er 0. Skripte nutzen diesen Wert, um zu prüfen, ob ein anderer Server antwortet.
ping -c 2 -W 1 192.0.2.1 > /dev/null; echo $?; ping -c 1 example.com > /dev/null; echo $?1
0ping prüft nur ICMP, deshalb kann ein Server, der ICMP blockiert, auf Web-Anfragen antworten und ping trotzdem ignorieren. Vom Debian-12-Server zweimal an amazon.com gesendet, kam [100% packet loss], während eine Web-Anfrage per curl an dieselbe Adresse eine 301-Antwort bekam.
ping -c 2 -W 1 amazon.comPING amazon.com (98.82.161.185) 56(84) bytes of data.
--- amazon.com ping statistics ---
2 packets transmitted, 0 received, 100% packet loss, time 1002mscurl -sI https://amazon.com/ | head -1HTTP/1.1 301 Moved PermanentlyEin Server, der ICMP blockiert, ist wie ein Laden, der seine Türklingel abgeschraubt hat.
Manche Cloud-Server antworten erst auf ping, wenn ICMP in den Firewall-Regeln erlaubt ist. Eine VM-Instanz in Oracle Cloud antwortete auf ping, nachdem der ICMP-Typ in der Sicherheitsliste des öffentlichen Subnetzes auf 8 geändert wurde.
Kann ping den Namen nicht in eine IP-Adresse auflösen, endet es ohne erste Zeile sofort mit [Name or service not known], und der Exit-Code war 2. .invalid ist ein Name, der so reserviert ist, dass er nirgends aufgelöst wird, deshalb wurde er für diesen Fehler verwendet.
ping -c 1 no-such-host.invalidping: no-such-host.invalid: Name or service not knownTritt dieser Fehler bei einer echten Domain auf, prüfe mit dem Befehl nslookup, ob der DNS-Server für diesen Namen eine Adresse zurückgibt. Die vier Ausgaben ohne Antwort und was du als Nächstes prüfst, stehen unten.
| Ausgabe | Bedeutung | Als Nächstes prüfen |
|---|---|---|
| 100% packet loss | Auf die gesendeten Pakete kam keine einzige Antwort | Web-Dienst mit curl, Firewall mit einer Regel, die ICMP erlaubt |
| Name or service not known | Name konnte nicht in eine IP-Adresse aufgelöst werden | DNS-Antwort mit nslookup |
| connect: Network is unreachable | Keine Route für diesen Adresstyp | Mit -4 an die IPv4-Adresse senden |
| Time to live exceeded | TTL wurde an einem Router unterwegs 0 | Wert von -t erhöhen oder weglassen und erneut senden |
🔢 FAQ & empfohlene Inhalte
Netzwerk · Einrichtung
[Linux] ip-Befehl: Netzwerkschnittstellen und Einstellungen verwalten
Der Befehl ip, mit dem du Netzwerkschnittstellen, IP-Adressen und Routing eines Servers prüfst und verwaltest.
Netzwerk · DNS
Linux host-Befehl | Befehl für DNS-Abfragen
Der Befehl host, mit dem du die IP-Adresse zu einem Hostnamen findest oder eine IP-Adresse in einen Hostnamen umwandelst.
Fernzugriff · Übertragung
SSH-Befehl: Optionen und Verwendung
Optionen und Verwendung des SSH-Befehls, der sich über eine verschlüsselte Verbindung mit einem entfernten Server verbindet und dort Befehle ausführt.
ℹ️ Affiliate-Hinweis
Die Inhalte dieser Website enthalten Affiliate-Links. Kauft ein Besucher über einen dieser Links ein Produkt oder eine Dienstleistung, erhält die Website vom Verkäufer eine Provision. Der Betrag, den der Käufer zahlt(bei Aktionsrabatten sinkt er ↓), steigt dadurch nicht. Angegebene Preise, Rabatte und Lagerbestände entsprechen dem Stand bei Erstellung und können abweichen; prüfe sie daher vor dem Kauf beim Verkäufer. Produkte werden nach eigenen Kriterien ausgewählt und bewertet, und Provisionen beeinflussen weder die Reihenfolge noch den Inhalt der Bewertungen.