Heim  >  Artikel  >  Betrieb und Instandhaltung  >  So führen Sie Linktests über das mtr-Befehlszeilentool in einer Linux-Umgebung durch

So führen Sie Linktests über das mtr-Befehlszeilentool in einer Linux-Umgebung durch

坏嘻嘻
坏嘻嘻Original
2018-09-28 14:44:407521Durchsuche

Basierend auf der Einführung in die Durchführung von Linktests über das mtr-Befehlszeilentool in der Linux-Umgebung konzentriert sich dieser Artikel auf die spezifischen Schritte. Der Inhalt dieses Artikels ist kompakt und ich hoffe, dass Sie etwas daraus gewinnen können.

Der Zugriff auf eine Linux-Instanz-Website weist eine hohe Paketverlustverzögerung auf.

Wenn der Website-Zugriff sehr langsam oder nicht zugänglich ist, andere offensichtliche Probleme beseitigt sind und ein offensichtlicher Paketverlust im Ping erkannt wird, wird dies empfohlen Sie führen Linktests durch. In einer Linux-Umgebung können Sie das Befehlszeilentool mtr (bevorzugt) oder das Befehlszeilentool Traceroute verwenden, um einen Linktest durchzuführen, um die Ursache des Problems zu ermitteln.

Normalerweise befolgen Sie bitte die folgenden Schritte:

Verwenden Sie das Link-Test-Tool, um Netzwerkbedingungen und Serverstatus zu erkennen.

Analysieren und verarbeiten Sie basierend auf den Link-Testergebnissen.

mtr-Befehlszeilentool (bevorzugt)

mtr (My Traceroute) ist ein Netzwerktesttool, das in fast allen Linux-Distributionen vorinstalliert ist. Die grafische Oberfläche, die Tracert- und Ping-Befehle integriert, ist sehr leistungsstark.

Ping und Tracert werden normalerweise verwendet, um Netzwerkbedingungen und Serverstatus zu erkennen. Die spezifischen Anweisungen lauten wie folgt:

So führen Sie Linktests über das mtr-Befehlszeilentool in einer Linux-Umgebung durch

mtr sendet standardmäßig ICMP-Pakete für die Verbindung Erkennung verwenden Sie den Parameter -u, um UDP-Pakete für die Erkennung anzugeben. Im Vergleich zu Traceroute, das nur einmal einen Link-Tracking-Test durchführt, erkennt mtr kontinuierlich relevante Knoten auf dem Link und stellt entsprechende statistische Informationen bereit. mtr kann die Auswirkungen von Knotenschwankungen auf die Testergebnisse vermeiden, sodass die Testergebnisse genauer sind. Es wird empfohlen, es zuerst zu verwenden.

Gebrauchsanweisung

mtr [-hvrctglspni46] [--help] [--version] [--report]
                [--report-cycles=COUNT] [--curses] [--gtk]
                [--raw] [--split] [--no-dns] [--address interface]
                [--psize=bytes/-s bytes]
                [--interval=SECONDS] HOSTNAME [PACKETSIZE]

Beispielausgabe

[root@centos ~]# mtr 223.5.5.5
                                  My traceroute  [v0.75]
mycentos6.6 (0.0.0.0)                                             Wed Jun 15 23:16:27 2016
Keys:  Help   Display mode   Restart statistics   Order of fields   quit
                                                  Packets               Pings
 Host                                           Loss%   Snt   Last   Avg  Best  Wrst StDev
 1. ???
 2. 192.168.17.20                                0.0%     7   13.1   5.6   2.1  14.7   5.7
 3. 111.1.20.41                                  0.0%     7    3.0  99.2   2.7 632.1 235.4
 4. 111.1.34.197                                 0.0%     7    1.8   2.0   1.2   2.9   0.6
 5. 211.138.114.25                               0.0%     6    0.9   4.7   0.9  13.9   5.8
 6. 211.138.114.70                               0.0%     6    1.8  22.8   1.8  50.8  23.6
    211.138.128.134
    211.138.114.2
    211.138.114.66
 7. 42.120.244.186                               0.0%     6    1.4   1.6   1.3   1.8   0.2
    42.120.244.198
 8. 42.120.244.246                               0.0%     6    2.8   2.9   2.6   3.2   0.2
    42.120.244.242
 9. ???
10. 223.5.5.5                                    0.0%     6    2.7   2.7   2.5   3.2   0.3

Allgemeine optionale Parameterbeschreibungen

-r oder —report: Ausgabe im Berichtsmodus anzeigen.

-p oder —split: Listen Sie die Ergebnisse jedes Trackings separat auf, anstatt wie bei —report die gesamten Ergebnisse zu zählen.

-s oder --psize: Geben Sie die Größe der Ping-Pakete an.

-n oder —no-dns: Führen Sie keine umgekehrte Auflösung von Domänennamen für IP-Adressen durch.

-a oder --address: Legen Sie die IP-Adresse fest, an die Pakete gesendet werden sollen. Wird verwendet, wenn der Host über mehrere IPs verfügt.

-4: Nur IPv4-Protokoll verwenden.

-6: Nur IPv6-Protokoll verwenden.

Während mtr läuft, können Sie auch die entsprechenden Buchstaben eingeben, um schnell zwischen den Modi zu wechseln. Die Bedeutung jedes Buchstabens ist wie folgt:

? oder h: Zeigt das Hilfemenü an.

d: Anzeigemodus wechseln.

n: Aktivieren oder deaktivieren Sie die DNS-Domänennamenauflösung.

u: Schalten Sie die Verwendung von ICMP- oder UDP-Paketen für die Prüfung um.

Beschreibung des Rückgabeergebnisses

In der Standardkonfiguration lautet die Beschreibung jeder Datenspalte im Rückgabeergebnis wie folgt:

Die erste Spalte (Host): Knoten-IP-Adresse und Domänenname. Wie zuvor gezeigt, wird durch Drücken der Taste n die Anzeige umgeschaltet.

Die zweite Spalte (Verlust%): Paketverlustrate des Knotens.

Die dritte Spalte (Snt): Anzahl der pro Sekunde gesendeten Pakete. Der Standardwert ist 10, der mit dem Parameter -c angegeben werden kann.

Die vierte Spalte (Letzte): der neueste Erkennungsverzögerungswert.

Die fünfte, sechste und siebte Spalte (Avg, Best, Wrst): sind die Durchschnitts-, Minimal- und Maximalwerte der Erkennungsverzögerung.

Spalte 8 (StDev): Standardabweichung. Je größer es ist, desto instabiler ist der entsprechende Knoten.

Traceroute-Befehlszeilentool

Traceroute ist ein Netzwerktesttool, das auf fast allen Linux-Distributionen vorinstalliert ist, um das Internet Protocol (IP) zu verfolgen Pfad, den ein Paket nimmt, wenn es an seine Zieladresse geliefert wird.

Traceroute sendet zunächst UDP-Probepakete mit einem kleinen maximalen Time-to-Live-Wert (Max_TTL) und wartet dann auf ICMP TIME_EXCEEDED-Antworten auf der gesamten Verbindung, beginnend beim Gateway. Die Prüfung beginnt mit TTL=1 und erhöht den TTL-Wert, bis eine ICMP PORT_UNREACHABLE-Nachricht empfangen wird. Die ICMP PORT_UNREACHABLE-Nachricht wird verwendet, um zu identifizieren, dass der Zielhost gefunden wurde oder dass der Befehl den maximal zulässigen TTL-Wert für die Ablaufverfolgung erreicht hat.

Traceroute sendet standardmäßig UDP-Pakete zur Linkerkennung. Mit dem Parameter -I können ICMP-Pakete zur Prüfung gesendet werden.

Gebrauchsanweisung

traceroute [-I] [ -m Max_ttl ] [ -n ] [ -p Port ] [ -q Nqueries ] [ -r ] 
[ -s SRC_Addr ] [  -t TypeOfService ] [ -f flow ] [ -v ] [  -w WaitTime ] Host [ PacketSize ]

Beispielausgabe

[root@centos ~]# traceroute -I 223.5.5.5
traceroute to 223.5.5.5 (223.5.5.5), 30 hops max, 60 byte packets
 1  * * *
 2  192.168.17.20 (192.168.17.20)  3.965 ms  4.252 ms  4.531 ms
 3  111.1.20.41 (111.1.20.41)  6.109 ms  6.574 ms  6.996 ms
 4  111.1.34.197 (111.1.34.197)  2.407 ms  2.451 ms  2.533 ms
 5  211.138.114.25 (211.138.114.25)  1.321 ms  1.285 ms  1.304 ms
 6  211.138.114.70 (211.138.114.70)  2.417 ms 211.138.114.66 (211.138.114.66)  
 1.857 ms 211.138.114.70 (211.138.114.70)  2.002 ms
 7  42.120.244.194 (42.120.244.194)  2.570 ms  2.536 ms 42.120.244.186 (42.120.244.186)  1.585 ms
 8  42.120.244.246 (42.120.244.246)  2.706 ms  2.666 ms  2.437 ms
 9  * * *
10  public1.alidns.com (223.5.5.5)  2.817 ms  2.676 ms  2.401 ms

Erläuterung allgemeiner optionaler Parameter

-d Verwenden Sie die Debugging-Funktion auf Socket-Ebene.

-f legt die Größe des Live-Wert-TTL des ersten erkannten Pakets fest.

-F setzt kein Segmentierungsflag.

-g Quell-Routing-Gateways festlegen, bis zu 8 können eingestellt werden.

-i verwendet die angegebene Netzwerkkarte zum Senden von Datenpaketen. Wird verwendet, wenn der Host über mehrere Netzwerkkarten verfügt.

-Ich verwende ICMP-Pakete anstelle von UDP-Paketen für die Prüfung.

-m legt die maximale TTL-Größe des Erkennungspakets fest.

-n IP-Adresse direkt anstelle des Hostnamens verwenden (DNS-Reverse-Lookup deaktivieren).

-p Legen Sie den Kommunikationsport des UDP-Transportprotokolls fest.

-r Ignoriert die normale Routing-Tabelle und sendet das Datenpaket direkt an den Remote-Host.

-s Legen Sie die IP-Adresse des lokalen Hosts fest, um Pakete zu senden.

-t Legt den TOS-Wert des Erkennungspakets fest.

-v zeigt den Ausführungsprozess des Befehls im Detail an.

-w Legt die Zeit fest, die auf eine Paketantwort vom Remote-Host gewartet werden soll.

-x schaltet die Korrektheitsprüfung von Datenpaketen ein oder aus.

Analyse der Link-Test-Ergebnisse

Ausarbeitung basierend auf dem folgenden Link-Test-Ergebnis-Beispieldiagramm:

So führen Sie Linktests über das mtr-Befehlszeilentool in einer Linux-Umgebung durch

Bedienung Schritte

Stellen Sie fest, ob in jedem Bereich Anomalien vorliegen, und behandeln Sie diese entsprechend der Situation in jedem Bereich separat.

Bereich A: Lokales Netzwerk des Kunden, d. h. lokales LAN und lokales Netzwerk des Anbieters. Bei Anomalien in diesem Bereich und Knotenproblemen im Zusammenhang mit dem lokalen Netzwerk des Kunden führen Sie bitte eine Fehlerbehebung und Analyse des lokalen Netzwerks durch. Bei Knotenproblemen im Zusammenhang mit dem Netzwerk des lokalen Netzwerkanbieters geben Sie bitte Feedback an den lokalen Betreiber.

Bereich B: Carrier-Backbone-Netzwerk. Bei Anomalien in diesem Bereich können Sie den Betreiber anhand der abnormalen Knoten-IP abfragen und das Problem dann direkt oder über den technischen Kundendienst von Alibaba Cloud an den entsprechenden Betreiber melden.

Bereich C: Das lokale Netzwerk des Zielservers, also das Netzwerk des Netzwerkanbieters, zu dem der Zielhost gehört. Bei Auffälligkeiten in diesem Bereich muss das Problem dem Netzwerkanbieter gemeldet werden, zu dem der Zielhost gehört.

Kombinieren Sie Avg (Durchschnitt) und StDev (Standardabweichung), um zu bestimmen, ob in jedem Knoten eine Anomalie vorliegt.

Wenn StDev sehr hoch ist, beobachten Sie gleichzeitig Best und Wrst des entsprechenden Knotens, um festzustellen, ob im entsprechenden Knoten eine Anomalie vorliegt.

Wenn StDev nicht hoch ist, verwenden Sie Avg, um festzustellen, ob im entsprechenden Knoten eine Anomalie vorliegt.

Hinweis: Es gibt keinen spezifischen Zeitbereichsstandard dafür, ob die oben genannte Standardabweichung hoch oder nicht hoch ist. Eine relative Bewertung muss basierend auf den Verzögerungswerten anderer Spalten desselben Knotens erfolgen. Wenn Avg beispielsweise 30 ms beträgt und StDev 25 ms beträgt, wird dies als hohe Abweichung angesehen. Und wenn Avg 325 ms beträgt, gilt die gleiche Standardabweichung (25 ms) als geringe Abweichung.

Überprüfen Sie die Paketverlustrate des Knotens. Wenn der Verlust % nicht Null ist, liegt möglicherweise ein Problem mit diesem Hop-Netzwerk vor.

Normalerweise gibt es zwei Gründe für Knotenpaketverluste:

Künstliche Begrenzung der ICMP-Senderate des Knotens, was zu Paketverlusten führt.

Es liegt tatsächlich eine Anomalie im Knoten vor, die zu Paketverlusten führt.

Bestimmen Sie den Grund für den Paketverlust des aktuellen abnormalen Knotens.

Wenn keine nachfolgenden Knoten Pakete verlieren, bedeutet dies, dass der Paketverlust des aktuellen Knotens auf Einschränkungen der Betreiberrichtlinien zurückzuführen ist und ignoriert werden kann. Wie im 2. Hop im Beispieldiagramm des vorherigen Link-Testergebnisses gezeigt.

Wenn bei nachfolgenden Knoten ebenfalls ein Paketverlust auftritt, bedeutet dies, dass auf dem aktuellen Knoten eine Netzwerkanomalie vorliegt, die zu einem Paketverlust führt. Wie im Beispieldiagramm des Verbindungstestergebnisses oben gezeigt, wird Hop 5 angezeigt.

Hinweis: Die beiden oben genannten Situationen können gleichzeitig auftreten, d. h. der entsprechende Knoten weist sowohl eine Richtliniengeschwindigkeitsbegrenzung als auch eine Netzwerkanomalie auf. Wenn in diesem Fall der aktuelle Knoten und seine nachfolgenden Knoten ständig Paketverluste erleiden und die Paketverlustraten der einzelnen Knoten unterschiedlich sind, überwiegt normalerweise die Paketverlustrate der letzten paar Hops. Wie im Beispielbild des Verbindungstestergebnisses oben gezeigt, kam es beim 5., 6. und 7. Hop zu Paketverlusten. Daher basiert die endgültige Paketverlustsituation auf 40 % des 7. Hops als Referenz.

Bestätigen Sie, ob der Knoten abnormal ist, indem Sie prüfen, ob eine offensichtliche Verzögerung vorliegt. Die Analyse wird unter den folgenden zwei Aspekten durchgeführt:

Wenn die Verzögerung nach einem bestimmten Hop erheblich zunimmt, wird normalerweise davon ausgegangen, dass der Knoten eine Netzwerkanomalie aufweist. Wie im Beispielbild des Verbindungstestergebnisses oben gezeigt, erhöht sich die Verzögerung nachfolgender Knoten nach dem 5. Hop erheblich, und es wird gefolgert, dass am 5. Hop-Knoten eine Netzwerkanomalie auftritt.

Hinweis: Eine hohe Latenz bedeutet nicht unbedingt, dass der entsprechende Knoten abnormal ist. Eine große Latenz kann auch durch die Datenrückführungsverbindung verursacht werden. Es wird empfohlen, sie zusammen mit dem Reverse-Link-Test zu analysieren.

Die Ratenbegrenzung der ICMP-Richtlinie kann auch dazu führen, dass die Verzögerung des entsprechenden Knotens stark ansteigt, nachfolgende Knoten kehren jedoch normalerweise zum Normalzustand zurück. Wie im Beispiel des Verbindungstestergebnisses oben gezeigt, weist der dritte Hop eine Paketverlustrate von 100 % auf und auch die Verzögerung nimmt deutlich zu. Doch dann normalisierte sich die Knotenverzögerung sofort wieder. Daher wird festgestellt, dass der plötzliche Anstieg der Verzögerung und des Paketverlusts des Knotens auf die Geschwindigkeitsbegrenzung der Richtlinie zurückzuführen ist.

Das obige ist der detaillierte Inhalt vonSo führen Sie Linktests über das mtr-Befehlszeilentool in einer Linux-Umgebung durch. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn