Zum Hauptinhalt springen
Zurück zur Kategorie

Netzwerk-Paketverlust: Diagnose und Lösung

Anleitung zur Diagnose und Lösung von Netzwerk-Paketverlust mit ping, traceroute, mtr, tcpdump-Tools, MTU-Problemen und Netzwerk-Performance-Optimierung.

Lesezeit: 13 Min. Fehlerbehebung
pingtraceroutemtrtcpdumppaketverlustnetzwerknetwork

Inhaltsverzeichnis

Einführung

Netzwerk-Paketverlust ist ein ernstes Problem, das die Serverleistung und Benutzererfahrung direkt beeinflusst. Paketverlust kann langsames Laden von Webseiten, SSH-Verbindungsabbrüche, Lag auf Spielservern und verschlechterte VoIP-Qualität verursachen.

In dieser Anleitung untersuchen wir die Tools und Methoden zur Erkennung von Paketverlust, zur Lokalisierung der Ursache und zur Lösung des Problems.

Was ist Paketverlust?

Paketverlust tritt auf, wenn über das Netzwerk gesendete Datenpakete ihr Ziel nicht erreichen. Unter normalen Bedingungen wird 0% Paketverlust erwartet.

PaketverlustAuswirkung
0%Normal — keine Probleme
1-2%Leicht — in VoIP und Spielen bemerkbar
3-5%Mäßig — Webseiten werden langsamer
5-10%Schwer — Verbindungsabbrüche beginnen
10%+Kritisch — Dienst nicht nutzbar

Paketverlust-Erkennung mit ping

hljs bash
# Einfacher Ping-Test
ping -c 100 ZIEL_IP

# Test mit bestimmter Paketgröße
ping -c 50 -s 1400 ZIEL_IP

# Schneller Ping (Flood — Root erforderlich)
sudo ping -f -c 1000 ZIEL_IP

Ausgabe-Interpretation:

100 packets transmitted, 97 received, 3% packet loss, time 99145ms
rtt min/avg/max/mdev = 1.234/5.678/45.123/8.901 ms

Einige Server blockieren möglicherweise ICMP-Pakete. Keine Ping-Antwort bedeutet nicht immer Paketverlust. Überprüfen Sie mit TCP-basierten Tests.

Hop-Analyse mit traceroute

traceroute zeigt jeden Netzwerkknoten (Hop), den Pakete auf dem Weg zum Ziel passieren:

hljs bash
# Grundlegendes traceroute
traceroute ZIEL_IP

# ICMP-basiert (Root erforderlich)
sudo traceroute -I ZIEL_IP

# TCP-basiert (Port 80)
sudo traceroute -T -p 80 ZIEL_IP

Kontinuierliche Überwachung mit mtr

mtr ist ein leistungsstarkes Tool, das ping und traceroute kombiniert:

hljs bash
# Installation
sudo apt install mtr -y

# Interaktiver Modus
mtr ZIEL_IP

# Berichtsmodus (100 Pakete)
mtr -r -c 100 ZIEL_IP

# TCP-Modus
mtr -T -P 80 ZIEL_IP

# Breite Ausgabe
mtr -r -c 100 -w ZIEL_IP

mtr-Ausgabe lesen:

HOST                   Loss%   Snt   Last   Avg  Best  Wrst StDev
1. gateway              0.0%   100    1.2   1.3   0.8   5.4   0.6
2. isp-router           2.0%   100    5.4   6.1   4.2  25.3   3.2
3. core-router          0.0%   100   15.2  15.8  14.1  22.4   1.5
4. ZIEL_IP              0.0%   100   20.1  20.5  19.2  28.7   1.8

Wenn Paketverlust nur an einem Hop auftritt und bei nachfolgenden Hops nicht fortbesteht, führt dieser Hop möglicherweise nur ICMP-Rate-Limiting durch. Das eigentliche Problem liegt vor, wenn der Verlust bis zum letzten Hop anhält.

Paketerfassung mit tcpdump

hljs bash
# Gesamten Verkehr auf einer Schnittstelle erfassen
sudo tcpdump -i eth0 -c 100

# Verkehr zu einer bestimmten IP erfassen
sudo tcpdump -i eth0 host ZIEL_IP -c 100

# Bestimmter Port-Verkehr
sudo tcpdump -i eth0 port 80 -c 50

# In Datei speichern (für Wireshark-Analyse)
sudo tcpdump -i eth0 -w capture.pcap -c 1000

# ICMP-Pakete erfassen
sudo tcpdump -i eth0 icmp -c 50

Netzwerkschnittstellen-Fehlerprüfung

hljs bash
# Schnittstellenstatistiken
ip -s link show eth0

# Detaillierte Fehlerzähler
ethtool -S eth0 | grep -i error

# Verworfene Paketzählung
netstat -i

# Kernel-Netzwerkstatistiken
cat /proc/net/dev

MTU-Probleme

MTU-Nichtübereinstimmung (Maximum Transmission Unit) kann Paketverlust verursachen:

hljs bash
# Aktuellen MTU-Wert prüfen
ip link show eth0 | grep mtu

# MTU-Path-Discovery-Test
ping -c 5 -M do -s 1472 ZIEL_IP

# MTU-Wert ändern (temporär)
sudo ip link set eth0 mtu 1400

Standard-Ethernet-MTU beträgt 1500 Bytes. Bei Verwendung von VPN oder Tunneln müssen Sie die MTU möglicherweise senken (typischerweise 1400-1420).

Bandbreitentest

hljs bash
# iperf3-Installation
sudo apt install iperf3 -y

# Im Servermodus starten
iperf3 -s

# Als Client testen
iperf3 -c SERVER_IP -t 30

# UDP-Test (Paketverlustmessung)
iperf3 -c SERVER_IP -u -b 100M -t 30

Lösungsschritte

1. Quelle identifizieren

hljs bash
# Hop-für-Hop-Analyse mit mtr
mtr -r -c 200 ZIEL_IP

# Ist das Problem lokal, beim ISP oder am Ziel?
# - Verlust bei ersten Hops → Lokales Netzwerkproblem
# - Verlust bei mittleren Hops → ISP-Problem
# - Verlust beim letzten Hop → Zielserverproblem

2. Lokale Netzwerkprobleme

hljs bash
# Netzwerkschnittstelle neu starten
sudo ip link set eth0 down && sudo ip link set eth0 up

# DNS-Auflösungsprüfung
dig google.com +short

# Routing-Tabelle prüfen
ip route show

Fazit

Netzwerk-Paketverlust kann viele verschiedene Ursachen haben. Mit ping, traceroute, mtr und tcpdump können Sie die Quelle des Problems identifizieren und die entsprechende Lösung anwenden. Regelmäßige Netzwerküberwachung zur frühzeitigen Erkennung von Problemen ist der effektivste Weg, Ausfälle zu minimieren.