Die FortiGate hat einen eingebauten Packet Sniffer, der sich sehr gut für die Fehlersuche bei Routing-, Firewall-, VPN- oder Anwendungsproblemen eignet. Wer mit tcpdump arbeitet, findet sich bei diagnose sniffer packet schnell zurecht.
Grundsyntax von diagnose sniffer packet
diagnose sniffer packet <interface> '<filter>' <verbose> <count> <timestamp>
Die wichtigsten Parameter:
- interface: z. B.
port1,internaloderany - filter: BPF-ähnlicher Filter, z. B. Host, Port oder Protokoll
- verbose: Ausgabestufe 1 bis 6
- count: Anzahl Pakete;
0läuft bis zum Abbruch - timestamp: z. B.
afür absoluten Zeitstempel oderlfür lokalen Zeitstempel, abhängig von FortiOS-Version und Ausgabeformat
Die Verbose-Level
- 1: Paket-Header
- 2: IP-Header plus Nutzdaten
- 3: Ethernet-Header plus Nutzdaten
- 4: Paket-Header mit Interface-Namen
- 5: IP-Header, Nutzdaten und Interface-Namen
- 6: Ethernet-Header, Nutzdaten und Interface-Namen
Für die tägliche Fehlersuche ist Verbose 4 oft der beste Startpunkt, weil Ein-/Ausgangsinterface und Kommunikationsrichtung sichtbar werden, ohne dass der Output unnötig groß wird.
Beispiel: Verkehr eines Hosts prüfen
diagnose sniffer packet any 'host 192.168.1.100' 4 0 l
Damit siehst du den Verkehr von und zu 192.168.1.100 auf allen Interfaces.
Nur TCP-Verkehr oder einen Port anzeigen
diagnose sniffer packet any 'host 192.168.1.100 and tcp' 4 0 l
diagnose sniffer packet any 'host 192.168.1.100 and port 443' 4 0 l
Auch Kombinationen sind möglich:
diagnose sniffer packet any 'host 192.168.1.100 and (icmp or tcp)' 4 0 l
Verkehr zwischen zwei Hosts
diagnose sniffer packet any 'host 192.168.1.100 and host 10.0.0.20' 4 0 l
Damit werden Pakete angezeigt, in denen beide Hosts vorkommen. Das ist bei Firewall- oder Routing-Problemen oft deutlich übersichtlicher als ein unbeschränkter Capture.
DHCP oder DNS gezielt mitschneiden
diagnose sniffer packet any 'port 67 or port 68' 4 0 l
diagnose sniffer packet any 'port 53' 4 0 l
Den DHCP-Capture kannst du direkt mit der Anleitung FortiGate DHCP Relay konfigurieren kombinieren.
Capture beenden
Ein laufender Sniffer wird mit Ctrl+C beendet. Bei produktiven Systemen solltest du möglichst früh mit einem engen Filter arbeiten, damit Ausgabe und Belastung überschaubar bleiben.
Dokumentation
Die Syntax und Beispiele orientieren sich an der aktuellen Fortinet-Dokumentation und den FortiOS-CLI-Referenzen. Referenz: Fortinet – Performing a sniffer trace.