Zum Inhalt springen
🛠️ToolsShed

Traceroute Reference

Vollständige traceroute-Befehls-Referenz für Linux, macOS und Windows.

Befehl

traceroute <host>

Optionen

FlagBeschreibung
-nDo not resolve hostnames (faster)
-m <hops>Set maximum hops (default: 30)
-w <sec>Wait time per probe (default: 5s)
-q <n>Number of probes per hop (default: 3)
-IUse ICMP ECHO instead of UDP
-TUse TCP SYN (requires root)
-p <port>Destination port for UDP/TCP
-i <iface>Use specified network interface
-s <src>Use specified source address
-4 / -6Force IPv4 or IPv6

Beispiele

traceroute google.com

Basic traceroute to a host

traceroute -n 8.8.8.8

Traceroute without DNS resolution

traceroute -m 15 example.com

Limit to 15 hops maximum

traceroute -I google.com

Use ICMP instead of UDP

sudo traceroute -T -p 80 example.com

TCP traceroute on port 80

So funktioniert es

Traceroute zeigt den Netzwerkpfad von Ihrem Computer zu einem Ziel-Host. Es sendet Pakete mit zunehmenden TTL-Werten (Time To Live) und zeichnet die Antwort jedes Routers auf, wobei die IP-Adresse und die Antwortzeit bei jedem Hop angezeigt werden. Dies hilft bei der Diagnose von Netzwerkverbindungsproblemen und dem Verständnis von Routingpfaden.

Über dieses Tool

Traceroute ist ein Diagnosewerkzeug, das den Netzwerkpfad kartografiert, den Datenpakete von Ihrem Computer zu einem Zielhost zurücklegen, und zeigt jeden Zwischenrouter-Hop und die Zeit an, die benötigt wird, um jeden Hop zu erreichen. Zu verstehen, wie Daten über das Internet übertragen werden, ist für Netzwerkadministratoren, Entwickler und IT-Profis entscheidend, die Konnektivitätsprobleme diagnostizieren, Latenzprobleme identifizieren oder Routing-Verhalten verstehen müssen. Diese Traceroute-Referenz bietet einen vollständigen Befehlsleitfaden für Linux-, macOS- und Windows-Systeme und deckt Syntax, Optionen und reale Beispiele für jede Plattform ab.

Suchen Sie einfach den Traceroute-Befehl für Ihr Betriebssystem und erkunden Sie die detaillierten Erklärungen der verfügbaren Optionen—egal ob Sie die Paketgröße anpassen, die maximalen Hops ändern, bestimmte Portnummern festlegen oder Timeout-Werte konfigurieren müssen. Ob Sie eine langsame Verbindung zu einem Remote-Server beheben, untersuchen, warum Pakete bei einem bestimmten Hop abgebrochen werden, oder die Netzwerktopologie für die Infrastrukturplanung dokumentieren, diese Referenz bietet praktische Anleitung ohne unnötige Komplexität.

Netzwerkexperten, Systemadministratoren, Cybersecurity-Spezialisten und Cloud-Ingenieure verlassen sich auf Traceroute als Teil ihres Diagnose-Toolkits. Dieses Tool ist unverzichtbar für jeden, der für die Wartung einer zuverlässigen Netzwerkverbindung, die Unterstützung von Produktionssystemen oder die Untersuchung von Problemen in Multi-Hop-Netzwerkumgebungen verantwortlich ist.

Häufig gestellte Fragen

Code-Implementierung

import subprocess
import platform
import re

def traceroute(host: str, max_hops: int = 30) -> list[dict]:
    """Run traceroute and parse output."""
    system = platform.system()
    if system == "Windows":
        cmd = ["tracert", "-h", str(max_hops), host]
    else:
        cmd = ["traceroute", "-m", str(max_hops), host]

    result = subprocess.run(cmd, capture_output=True, text=True, timeout=60)
    lines = result.stdout.splitlines()
    hops = []
    for line in lines[1:]:  # skip header
        # Parse hop number and RTT values
        match = re.match(r"\s*(\d+)\s+(.+)", line)
        if match:
            hop_num = int(match.group(1))
            rest = match.group(2)
            times = re.findall(r"([\d.]+)\s*ms", rest)
            hostname = re.search(r"([\w.-]+)\s+\(", rest)
            hops.append({
                "hop": hop_num,
                "host": hostname.group(1) if hostname else "*",
                "times_ms": [float(t) for t in times],
            })
    return hops

hops = traceroute("google.com", max_hops=15)
for hop in hops:
    avg = sum(hop["times_ms"]) / len(hop["times_ms"]) if hop["times_ms"] else None
    avg_str = f"{avg:.1f} ms" if avg else "*"
    print(f"{hop['hop']:2d}  {hop['host']:<40} {avg_str}")

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.