Android

Ping-Befehl unter Linux

Wie überprüfe ich in einem Netzwerk, ob ein anderer Rechner erreichbar ist? (ping)

Wie überprüfe ich in einem Netzwerk, ob ein anderer Rechner erreichbar ist? (ping)

Inhaltsverzeichnis:

Anonim

Der Befehl ping ist eines der am häufigsten verwendeten Dienstprogramme zur Fehlerbehebung, zum Testen und zur Diagnose von Netzwerkverbindungsproblemen.

Ping sendet ein oder mehrere ICMP-Echoanforderungspakete (Internet Control Message Protocol) an eine angegebene Ziel-IP im Netzwerk und wartet auf eine Antwort. Wenn das Ziel das Paket erhält, antwortet es mit einer ICMP-Echoantwort.

Mit dem Befehl ping können Sie feststellen, ob eine Remote-Ziel-IP aktiv oder inaktiv ist. Sie können auch die Umlaufverzögerung bei der Kommunikation mit dem Ziel ermitteln und prüfen, ob ein Paketverlust vorliegt.

Das Dienstprogramm ping ist Teil des iputils (oder iputils-ping ), das auf fast allen Linux-Distributionen vorinstalliert ist. ping ist auch unter Windows, macOS und FreeBSD verfügbar.

Verwendung des Ping-Befehls

Die Syntax für den Befehl ping lautet wie folgt:

ping DESTINATION

Um am besten zu veranschaulichen, wie der Ping-Befehl funktioniert, senden wir einen Ping an google.com :

ping google.com

Die Ausgabe sieht ungefähr so ​​aus:

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 64 bytes from muc11s01-in-f14.1e100.net (172.217.22.206): icmp_seq=4 ttl=53 time=41.4 ms ^C --- google.com ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 7ms rtt min/avg/max/mdev = 40.163/42.700/47.408/2.790 ms

Der Befehl ping löst den Domänennamen in eine IP-Adresse auf und sendet ICMP-Pakete an die Ziel-IP. Wenn die Ziel-IP erreichbar ist, antwortet sie und der Ping-Befehl druckt eine Zeile, die die folgenden Felder enthält:

  • Die Anzahl der Datenbytes. Der Standardwert ist 56. from muc11s01-in-f14.1e100.net (172.217.22.206) 64 ICMP-Datenbytes - 64 bytes Die IP-Adresse des Ziels - from muc11s01-in-f14.1e100.net (172.217.22.206) Die ICMP-Sequenznummer für jedes Paket. icmp_seq=1 Die Zeit zu leben. - ttl=53 - Funktionsweise von TTL: Die in Millisekunden gemessene Ping-Zeit, die die Umlaufzeit für das Paket zum Host und für die Rückgabe der Antwort an den Absender darstellt. - time=41.4 ms

Standardmäßig beträgt das Intervall zwischen dem Senden eines neuen Pakets eine Sekunde.

Der ping Befehl sendet weiterhin ICMP-Pakete an die Ziel-IP-Adresse, bis ein Interrupt eingeht. Um den Befehl zu beenden, drücken Sie einfach die Tastenkombination Ctrl+C

Sobald der Befehl beendet ist, wird eine Statistik angezeigt, die den Prozentsatz des Paketverlusts enthält. Der Paketverlust bedeutet, dass die Daten irgendwo im Netzwerk abgelegt wurden, was auf ein Problem im Netzwerk hinweist. Wenn ein Paketverlust vorliegt, können Sie mit dem Befehl traceroute ermitteln, wo der Paketverlust auftritt.

Wenn ping keine Antwort zurückgibt, bedeutet dies, dass die Netzwerkkommunikation nicht hergestellt wurde. In diesem Fall bedeutet dies nicht immer, dass die Ziel-IP nicht aktiv ist. Einige Hosts verfügen möglicherweise über eine Firewall, die den ICMP-Verkehr blockiert oder so konfiguriert ist, dass sie nicht auf Ping-Anforderungen reagiert.

Bei Erfolg wird der ping Befehl mit Code 0 . Andernfalls wird es mit Code 1 oder 2 . Dies kann hilfreich sein, wenn Sie das Dienstprogramm ping in einem Shell-Skript verwenden.

In den folgenden Abschnitten werden die am häufigsten verwendeten ping Befehlsoptionen erläutert.

Geben Sie die Anzahl der Pakete an

Wie bereits erwähnt, sendet ping standardmäßig weiterhin ICMP-Pakete, bis ein Interrupt-Signal empfangen wird. Verwenden Sie die Option -c gefolgt von der Anzahl der Pakete, um die Anzahl der zu sendenden Echoanforderungspakete anzugeben, nach denen Ping beendet wird:

ping -c 1 DESTINATION

Zum Beispiel, um linuxize.com nur einmal linuxize.com :

ping -c 1 linuxize.com

Geben Sie die Quellschnittstelle an

Das Standardverhalten des Befehls ping besteht darin, ICMP-Pakete über die Standardroute zu senden. Wenn Ihr Computer über mehrere Schnittstellen verfügt, können Sie die Quellschnittstelle mit der Option -I angeben:

ping -I INTERFACE_NAME DESTINATION

Der folgende Befehl linuxize.com mit em2 als Quellschnittstelle:

ping -I em2 linuxize.com

Geben Sie das Internetprotokoll an

Wenn Sie den Befehl ping ausführen, wird abhängig von den DNS-Einstellungen Ihres Computers entweder IPv4 oder IPv6 verwendet.

Um zu erzwingen, dass ping IPv4 verwendet, übergeben Sie die Option -4 oder verwenden Sie den Alias ping4 :

ping -4 DESTINATION

ping6 für IPv6 die Option -6 oder verwenden Sie ping6 :

ping -6 DESTINATION

Fazit

ping ist ein Befehlszeilen-Netzwerkdienstprogramm, mit dem Sie die Konnektivität auf IP-Ebene eines bestimmten Hosts im Netzwerk testen können.

man ping Sie man ping in Ihr Terminal ein, um alle verfügbaren Optionen des Befehls ping anzuzeigen.

ping terminal