Verwendung von Paketerfassung zur Analyse des Netzwerkverkehrs
Paketerfassung – Überblick
Die Paketerfassung ist ein Tool, mit dem Sie den Netzwerkverkehr analysieren und Netzwerkprobleme beheben können. Das Paketerfassungstool erfasst Datenpakete in Echtzeit, die zur Überwachung und Protokollierung über das Netzwerk wandern.
Die Paketerfassung wird auf physischen Schnittstellen, Reth-Schnittstellen und Tunnelschnittstellen wie gr, ip, st0 und lsq-/ls unterstützt.
Pakete werden ohne Änderungen als binäre Daten erfasst. Sie können die Paketinformationen offline mit einem Paketanalysator wie Wireshark oder tcpdump lesen. Wenn Sie Pakete, die für die Routing-Engine bestimmt sind oder von dieser stammen, schnell erfassen und online analysieren müssen, können Sie das J-Web-Paketerfassungs-Diagnosetool verwenden.
Das Paketerfassungstool unterstützt keine IPv6-Paketerfassung.
Sie können entweder den J-Web-Konfigurations-Editor oder den CLI-Konfigurations-Editor verwenden, um die Paketerfassung zu konfigurieren.
Netzwerkadministratoren und Sicherheitsingenieure nutzen die Paketerfassung, um die folgenden Aufgaben auszuführen:
Überwachung des Netzwerkverkehrs und Analyse von Datenverkehrsmustern.
Identifizieren und beheben Sie Netzwerkprobleme.
Erkennen Sie Sicherheitsverletzungen im Netzwerk, wie z. B. unbefugtes Eindringen, Spyware-Aktivitäten oder Ping-Scans.
Die Paketerfassung funktioniert wie das Sampling des Datenverkehrs auf dem Gerät, außer dass sie ganze Pakete einschließlich des Layer-2-Header erfasst und den Inhalt in einer Datei im libpcap-Format speichert. Paketerfassung erfasst auch IP-Fragmente. Sie können die Paketerfassung und das Sampling des Datenverkehrs auf dem Gerät nicht gleichzeitig aktivieren. Im Gegensatz zum Sampling des Datenverkehrs gibt es keine Ablaufverfolgungsvorgänge für die Paketerfassung.
Sie können die Paketerfassung und Portspiegelung gleichzeitig auf einem Gerät aktivieren.
Dieser Abschnitt enthält die folgenden Themen:
- Paketerfassung auf Geräteschnittstellen
- Firewall-Filter für Paketerfassung
- Paketerfassungsdateien
- Analyse von Paketerfassungsdateien
Paketerfassung auf Geräteschnittstellen
Die Paketerfassung wird auf den Schnittstellen T1, T3, E1, E3, seriell, Gigabit Ethernet, ADSL, G.SHDSL, PPPoE und ISDN unterstützt.
Um Pakete auf einer ISDN-Schnittstelle zu erfassen, konfigurieren Sie die Paketerfassung auf der Dialer-Schnittstelle. Um Pakete auf einer PPPoE-Schnittstelle zu erfassen, konfigurieren Sie die Paketerfassung auf der logischen PPPoE-Schnittstelle.
Packet Capture unterstützt PPP, Cisco HDLC, Frame Relay und andere ATM-Kapselungen. Paketerfassung unterstützt auch Multilink PPP (MLPPP), Multilink Frame Relay End-to-End (MLFR) und Multilink Frame Relay UNI/NNI (MFR)-Kapselungen.
Sie können alle IPv4-Pakete erfassen, die auf einer Schnittstelle in eingehender oder ausgehender Richtung fließen. Bei Datenverkehr, der das Datenstrom-Softwaremodul umgeht (Protokollpakete wie ARP, OSPF und PIM), werden von der Routing-Engine generierte Pakete jedoch nur dann erfasst, wenn Sie einen Firewall-Filter in ausgehender Richtung auf die Schnittstelle konfiguriert und angewendet haben.
Tunnelschnittstellen können die Paketerfassung nur in ausgehender Richtung unterstützen.
Verwenden Sie den J-Web-Konfigurations-Editor oder den CLI-Konfigurations-Editor, um die maximale Paketgröße, den Dateinamen für die Speicherung der erfassten Pakete, die maximale Dateigröße, die maximale Anzahl von Paketerfassungsdateien und die Dateiberechtigungen anzugeben.
Bei Paketen, die auf T1-, T3-, E1-, E3-, seriellen und ISDN-Schnittstellen in ausgehender (Ausgangs-)Richtung erfasst werden, kann die Größe des erfassten Pakets 1 Byte geringer sein als die maximale Paketgröße, die aufgrund des PLP-Bits (Packet Loss Priority) konfiguriert wurde.
Um die Kapselung auf einer Schnittstelle zu ändern, die die Paketerfassung konfiguriert hat, müssen Sie zuerst die Paketerfassung deaktivieren.
Firewall-Filter für Paketerfassung
Wenn Sie die Paketerfassung auf einem Gerät aktivieren, werden alle Pakete erfasst und gespeichert, die in der in der Paketerfassungskonfiguration angegebenen Richtung fließen (eingehende, ausgehende oder beides). Die Konfiguration einer Schnittstelle zur Erfassung aller Pakete kann die Leistung des Geräts beeinträchtigen. Sie können die Anzahl der auf einer Schnittstelle erfassten Pakete mit Firewall-Filtern steuern und verschiedene Kriterien für die Paketerfassung für bestimmte Datenverkehrsströme angeben.
Sie müssen auch die entsprechenden Firewall-Filter auf der Schnittstelle konfigurieren und anwenden, wenn Sie vom Hostgerät generierte Pakete erfassen müssen, da das Schnittstellen-Sampling keine Pakete erfasst, die vom Hostgerät stammen.
Paketerfassungsdateien
Wenn die Paketerfassung auf einer Schnittstelle aktiviert wird, wird das gesamte Paket einschließlich des Layer-2-Headers erfasst und in einer Datei gespeichert. Sie können die maximale Größe des zu erfassenden Pakets angeben, bis zu 1500 Bytes. Paketerfassung erstellt eine Datei für jede physische Schnittstelle. Sie können den Zieldateinamen, die maximale Größe der Datei und die maximale Anzahl von Dateien angeben.
Die Erstellung und Speicherung von Dateien erfolgt auf folgende Weise. Nehmen wir an, Sie nennen die Paketerfassungsdatei pcap-file. Die Paketerfassung erstellt mehrere Dateien (eine pro physische Schnittstelle), wobei jede Datei mit dem Namen der physischen Schnittstelle versehen wird. zum Beispiel pcap-file.fe-0.0.1 für die Gigabit-Ethernet-Schnittstellefe-0.0.1. Wenn die Datei mit dem Namen pcap-file.fe-0.0.1 die maximale Größe erreicht, wird die Datei umbenannt pcap-file.fe-0.0.1.0. Wenn die Datei mit dem Namen pcap-file.fe-0.0.1 wieder die maximale Größe erreicht, wird die benannte pcap-file.fe-0.0.1.0 Datei umbenannt pcap-file.fe-0.0.1.1 und pcap-file.fe-0.0.1 umbenannt pcap-file.fe-0.0.1.0. Dieser Prozess wird fortgesetzt, bis die maximale Anzahl von Dateien überschritten und die älteste Datei überschrieben wird. Die pcap-file.fe-0.0.1 Datei ist immer die neueste Datei.
Paketerfassungsdateien werden auch dann nicht entfernt, wenn Sie die Paketerfassung auf einer Schnittstelle deaktivieren.
Analyse von Paketerfassungsdateien
Paketerfassungsdateien werden im libpcap-Format im /var/tmp
Verzeichnis gespeichert. Sie können Benutzer- oder Administratorrechte für die Dateien angeben.
Paketerfassungsdateien können offline mit tcpdump oder einem beliebigen Paketanalysator, der das libpcap-Format erkennt, geöffnet und analysiert werden. Sie können auch FTP oder das Session Control Protocol (SCP) verwenden, um die Paketerfassungsdateien auf ein externes Gerät zu übertragen.
Deaktivieren Sie die Paketerfassung, bevor Sie die Datei zur Analyse öffnen oder die Datei mit FTP oder SCP auf ein externes Gerät übertragen. Durch die Deaktivierung der Paketerfassung wird sichergestellt, dass der interne Dateipuffer überspült wird und alle erfassten Pakete in die Datei geschrieben werden.
Beispiel: Aktivieren der Paketerfassung auf einem Gerät
Dieses Beispiel zeigt, wie Sie die Paketerfassung auf einem Gerät aktivieren, um den Netzwerkverkehr zu analysieren und Netzwerkprobleme zu beheben.
Anforderungen
Bevor Sie beginnen:
Grundlegende Konnektivität herstellen.
Konfigurieren Sie Netzwerkschnittstellen. Siehe Schnittstellen-Benutzerhandbuch für Sicherheitsgeräte.
Überblick
In diesem Beispiel legen Sie die maximale Paketaufnahmegröße in jeder Datei auf 500 Bytes fest. Der Bereich reicht von 68 bis 1500, der Standard ist 68 Bytes. Sie geben den Zieldateinamen für die Paketerfassungsdatei als PCAP-Datei an. Sie geben dann die maximale Anzahl von Dateien, die erfasst werden sollen, als 100 an. Der Bereich reicht von 2 bis 10.000, und der Standard ist 10 Dateien. Sie legen die maximale Größe jeder Datei auf 1024 Bytes fest. Der Bereich reicht von 1.024 bis 104.857.600, und der Standard ist 512.000 Bytes. Abschließend geben Sie an, dass alle Benutzer die Berechtigung zum Lesen der Paketerfassungsdateien haben.
Konfiguration
Verfahren
CLI-Schnellkonfiguration
Um dieses Beispiel schnell zu konfigurieren, kopieren Sie die folgenden Befehle, fügen sie in eine Textdatei ein, entfernen alle Zeilenumbrüche, ändern alle erforderlichen Details, um mit Ihrer Netzwerkkonfiguration zu übereinstimmen, kopieren Sie die Befehle, fügen Sie sie auf Hierarchieebene in die [edit]
CLI ein, und geben Sie dann aus dem Konfigurationsmodus ein commit
.
set forwarding-options packet-capture maximum-capture-size 500 set forwarding-options packet-capture file filename pcap-file files 100 size 1024 world-readable
Schritt-für-Schritt-Verfahren
Im folgenden Beispiel müssen Sie auf verschiedenen Ebenen in der Konfigurationshierarchie navigieren. Anweisungen dazu finden Sie unter Verwenden des CLI-Editors im Konfigurationsmodus.
So aktivieren Sie die Paketerfassung auf einem Gerät:
Legen Sie die maximale Größe der Paketerfassung fest.
[edit] user@host# edit forwarding-options user@host# set packet-capture maximum-capture-size 500
Geben Sie den Zieldateinamen an.
[edit forwarding-options] user@host# set packet-capture file filename pcap-file
Geben Sie die maximale Anzahl von Dateien an, die erfasst werden sollen.
[edit forwarding-options] user@host# set packet-capture file files 100
Geben Sie die maximale Größe jeder Datei an.
[edit forwarding-options] user@host# set packet-capture file size 1024
Geben Sie an, dass alle Benutzer die Berechtigung zum Lesen der Datei haben.
[edit forwarding-options] user@host# set packet-capture file world-readable
Ergebnisse
Bestätigen Sie ihre Konfiguration im Konfigurationsmodus, indem Sie den show forwarding-options
Befehl eingeben. Wenn in der Ausgabe die beabsichtigte Konfiguration nicht angezeigt wird, wiederholen Sie die Konfigurationsanweisungen in diesem Beispiel, um sie zu korrigieren.
[edit] user@host# show forwarding-options packet-capture { file filename pcap-file files 100 size 1k world-readable; maximum-capture-size 500; }
Wenn Sie mit der Konfiguration des Geräts fertig sind, geben Sie im Konfigurationsmodus ein commit
.
Überprüfung
Bestätigen Sie, dass die Konfiguration ordnungsgemäß funktioniert.
Überprüfung der Paketerfassungskonfiguration
Zweck
Stellen Sie sicher, dass die Paketerfassung auf dem Gerät konfiguriert ist.
Aktion
Geben Sie im Konfigurationsmodus den show forwarding-options
Befehl ein. Stellen Sie sicher, dass in der Ausgabe die für die Paketerfassung vorgesehene Dateikonfiguration angezeigt wird.
Verifizieren der erfassten Pakete
Zweck
Stellen Sie sicher, dass die Paketerfassungsdatei unter dem /var/tmp
Verzeichnis gespeichert ist und die Pakete offline analysiert werden können.
Aktion
Deaktivieren Sie die Paketerfassung.
Übertragen Sie beispielsweise eine Paketerfassungsdatei mithilfe von FTP auf einen Server,
126b.fe-0.0.1
auf dem Sie Tools für die Paketanalyse installiert haben (z. Btools-server
.).Vom Konfigurationsmodus aus mit FTP verbinden
tools-server
.[edit] user@host# run ftp tools-server Connected to tools-server.mydomain.net 220 tools-server.mydomain.net FTP server (Version 6.00LS) ready Name (tools-server:user):remoteuser 331 Password required for
remoteuser
. Password: 230 User remoteuser logged in. Remote system type is UNIX. Using binary mode to transfer files. ftp>Navigieren Sie zu dem Verzeichnis, in dem Paketerfassungsdateien auf dem Gerät gespeichert sind.
ftp> lcd /var/tmp Local directory now /cf/var/tmp
Kopieren Sie die Paketerfassungsdatei, die Sie analysieren möchten, auf den Server, z. B
126b.fe-0.0.1
. .ftp> put 126b.fe-0.0.1 local: 126b.fe-0.0.1 remote: 126b.fe-0.0.1 200 PORT command successful. 150 Opening BINARY mode data connection for '126b.fe-0.0.1'. 100% 1476 00:00 ETA 226 Transfer complete. 1476 bytes sent in 0.01 seconds (142.42 KB/s)
Zurück zum Konfigurationsmodus.
ftp> bye 221 Goodbye. [edit] user@host#
Öffnen Sie die Paketerfassungsdatei auf dem Server mit tcpdump oder einem beliebigen Paketanalysator, der das libpcap-Format unterstützt, und überprüfen Sie die Ausgabe.
root@server% tcpdump -r 126b.fe-0.0.1 -xevvvv
01:12:36.279769 Out 0:5:85:c4:e3:d1 > 0:5:85:c8:f6:d1, ethertype IPv4 (0x0800), length 98: (tos 0x0, ttl 64, id 33133, offset 0, flags [none], proto: ICMP (1), length: 84) 14.1.1.1 > 15.1.1.1: ICMP echo request seq 0, length 64 0005 85c8 f6d1 0005 85c4 e3d1 0800 4500 0054 816d 0000 4001 da38 0e01 0101 0f01 0101 0800 3c5a 981e 0000 8b5d 4543 51e6 0100 aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 01:12:36.279793 Out 0:5:85:c8:f6:d1 > 0:5:85:c4:e3:d1, ethertype IPv4 (0x0800), length 98: (tos 0x0, ttl 63, id 41227, offset 0, flags [none], proto: ICMP (1), length: 84) 15.1.1.1 > 14.1.1.1: ICMP echo reply seq 0, length 64 0005 85c4 e3d1 0005 85c8 f6d1 0800 4500 0054 a10b 0000 3f01 bb9a 0f01 0101 0e01 0101 0000 445a 981e 0000 8b5d 4543 51e6 0100 aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 root@server%
Beispiel: Konfigurieren der Paketerfassung auf einer Schnittstelle
Dieses Beispiel zeigt, wie Sie die Paketerfassung auf einer Schnittstelle konfigurieren, um den Datenverkehr zu analysieren.
Anforderungen
Bevor Sie beginnen:
Grundlegende Konnektivität herstellen.
Konfigurieren Sie Netzwerkschnittstellen. Siehe Schnittstellen-Benutzerhandbuch für Sicherheitsgeräte.
Überblick
In diesem Beispiel erstellen Sie eine Schnittstelle namens fe-0/0/1. Anschließend konfigurieren Sie die Richtung des Datenverkehrs, für den Sie die Paketerfassung auf der logischen Schnittstelle als ein- und ausgehend aktivieren.
Bei Datenverkehr, der das Datenstrom-Softwaremodul umgeht (Protokollpakete wie ARP, OSPF und PIM), werden von der Routing-Engine generierte Pakete nur dann erfasst, wenn Sie einen Firewall-Filter in Der Ausgaberichtung auf die Schnittstelle konfiguriert und angewendet haben.
Konfiguration
Verfahren
CLI-Schnellkonfiguration
Um dieses Beispiel schnell zu konfigurieren, kopieren Sie die folgenden Befehle, fügen sie in eine Textdatei ein, entfernen alle Zeilenumbrüche, ändern alle erforderlichen Details, um mit Ihrer Netzwerkkonfiguration zu übereinstimmen, kopieren Sie die Befehle, fügen Sie sie auf Hierarchieebene in die [edit]
CLI ein, und geben Sie dann aus dem Konfigurationsmodus ein commit
.
edit interfaces fe-0/0/1 set unit 0 family inet sampling input output
Schritt-für-Schritt-Verfahren
Im folgenden Beispiel müssen Sie auf verschiedenen Ebenen in der Konfigurationshierarchie navigieren. Anweisungen dazu finden Sie unter Verwenden des CLI-Editors im Konfigurationsmodus.
So konfigurieren Sie die Paketerfassung auf einer Schnittstelle:
Erstellen Sie eine Schnittstelle.
[edit] user@host# edit interfaces fe-0/0/1
Konfigurieren Sie die Richtung des Datenverkehrs.
[edit interfaces fe-0/0/1] user@host# set unit 0 family inet sampling input output
Wenn Sie mit der Konfiguration des Geräts fertig sind, bestätigen Sie die Konfiguration.
[edit] user@host# commit
Überprüfung
Beispiel: Konfigurieren eines Firewall-Filters für die Paketerfassung
Dieses Beispiel zeigt, wie Sie einen Firewall-Filter für die Paketerfassung konfigurieren und auf eine logische Schnittstelle anwenden.
Anforderungen
Bevor Sie beginnen:
Grundlegende Konnektivität herstellen.
Konfigurieren Sie Netzwerkschnittstellen. Siehe Schnittstellen-Benutzerhandbuch für Sicherheitsgeräte.
Überblick
In diesem Beispiel setzen Sie einen Firewall-Filter namens dest-all und einen Begriffsnamen namens dest-term, um Pakete von einer bestimmten Zieladresse zu erfassen, nämlich 192.168.1.1/32. Sie definieren die Übereinstimmungsbedingung, um die stichprobenierten Pakete zu akzeptieren. Schließlich wenden Sie den Dest-all-Filter auf alle ausgehenden Pakete auf der Schnittstelle fe-0/0/1 an.
Wenn Sie einen Firewall-Filter auf der Loopback-Schnittstelle anwenden, wirkt sich dies auf den gesamten Datenverkehr zur und von der Routing-Engine aus. Wenn der Firewall-Filter eine sample
Aktion hat, werden Pakete zur und von der Routing-Engine abgetastet. Wenn die Paketerfassung aktiviert ist, werden Pakete zur und von der Routing-Engine in den Dateien erfasst, die für die Ein- und Ausgabeschnittstellen erstellt wurden.
Topologie
Konfiguration
Verfahren
CLI-Schnellkonfiguration
Um dieses Beispiel schnell zu konfigurieren, kopieren Sie die folgenden Befehle, fügen sie in eine Textdatei ein, entfernen alle Zeilenumbrüche, ändern alle erforderlichen Details, um mit Ihrer Netzwerkkonfiguration zu übereinstimmen, kopieren Sie die Befehle, fügen Sie sie auf Hierarchieebene in die [edit]
CLI ein, und geben Sie dann aus dem Konfigurationsmodus ein commit
.
set firewall filter dest-all term dest-term from destination-address 192.168.1.1/32 set firewall filter dest-all term dest-term then sample accept edit interfaces set interfaces fe-0/0/1 unit 0 family inet filter output dest-all
Schritt-für-Schritt-Verfahren
Im folgenden Beispiel müssen Sie auf verschiedenen Ebenen in der Konfigurationshierarchie navigieren. Anweisungen dazu finden Sie unter Verwenden des CLI-Editors im Konfigurationsmodus im Junos OS CLI-Benutzerhandbuch .
So konfigurieren Sie einen Firewall-Filter für die Paketerfassung und wenden ihn auf eine logische Schnittstelle an:
Geben Sie den Firewall-Filter und seine Zieladresse an.
[edit] user@host# edit firewall user@host# set filter dest-all term dest-term from destination-address 192.168.1.1/32
Definieren Sie die Übereinstimmungsbedingung und ihre Aktion.
[edit firewall] user@host# set filter dest-all term dest-term then sample accept
Wenden Sie den Filter auf alle ausgehenden Pakete an.
[edit interfaces] user@host# set interfaces fe-0/0/1 unit 0 family inet filter output dest-all
Ergebnisse
Bestätigen Sie ihre Konfiguration im Konfigurationsmodus, indem Sie den show firewall filter dest-all
Befehl eingeben. Wenn in der Ausgabe die beabsichtigte Konfiguration nicht angezeigt wird, wiederholen Sie die Konfigurationsanweisungen in diesem Beispiel, um sie zu korrigieren.
[edit] user@host# show firewall filter dest-all term dest-term { from { destination-address 192.168.1.1/32; } then { sample; accept; } }
Wenn Sie mit der Konfiguration des Geräts fertig sind, geben Sie im Konfigurationsmodus ein commit
.
Überprüfung
Überprüfen des Firewall-Filters für die Paketerfassungskonfiguration
Zweck
Bestätigen Sie, dass die Konfiguration ordnungsgemäß funktioniert.
Stellen Sie sicher, dass der Firewall-Filter für die Paketerfassung konfiguriert ist.
Aktion
Geben Sie im Konfigurationsmodus den show firewall filter dest-all
Befehl ein. Stellen Sie sicher, dass in der Ausgabe die beabsichtigte Konfiguration des Firewall-Filters für die Erfassung von Paketen angezeigt wird, die an die Zieladresse gesendet werden.
Beispiel: Konfigurieren der Paketerfassung für das Datenpath-Debugging
Dieses Beispiel zeigt, wie Sie die Paketerfassung konfigurieren, um den Datenverkehr zu überwachen, der das Gerät passiert. Die Paketerfassung gibt die Pakete dann in ein PCAP-Dateiformat ab, das später vom Tcpdump-Dienstprogramm untersucht werden kann.
Anforderungen
Bevor Sie beginnen, erfahren Sie unter Debuggen des Datenpfads (CLI-Prozedur).
Überblick
Es wird ein Filter definiert, um den Datenverkehr zu filtern. dann wird ein Aktionsprofil auf den gefilterten Datenverkehr angewendet. Das Aktionsprofil gibt eine Vielzahl von Aktionen für die Verarbeitungseinheit an. Eine der unterstützten Aktionen ist Packet Dump, das das Paket an die Routing-Engine sendet und es in proprietärer Form speichert, um mit dem show security datapath-debug capture
Befehl gelesen zu werden.
Das Debuggen von Datenpfaden wird auf SRX1400, SRX3400, SRX3600, SRX5400, SRX5600 und SRX5800 unterstützt.
Konfiguration
Verfahren
CLI-Schnellkonfiguration
Um dieses Beispiel schnell zu konfigurieren, kopieren Sie die folgenden Befehle, fügen sie in eine Textdatei ein, entfernen alle Zeilenumbrüche, ändern alle erforderlichen Details, um mit Ihrer Netzwerkkonfiguration zu übereinstimmen, kopieren Sie die Befehle, fügen Sie sie auf Hierarchieebene in die [edit]
CLI ein, und geben Sie dann aus dem Konfigurationsmodus ein commit
.
set security datapath-debug capture-file my-capture set security datapath-debug capture-file format pcap set security datapath-debug capture-file size 1m set security datapath-debug capture-file files 5 set security datapath-debug maximum-capture-size 400 set security datapath-debug action-profile do-capture event np-ingress packet-dump set security datapath-debug packet-filter my-filter action-profile do-capture set security datapath-debug packet-filter my-filter source-prefix 1.2.3.4/32
Schritt-für-Schritt-Verfahren
Im folgenden Beispiel müssen Sie auf verschiedenen Ebenen in der Konfigurationshierarchie navigieren. Anweisungen dazu finden Sie unter Verwenden des CLI-Editors im Konfigurationsmodusim Junos OS CLI-Benutzerhandbuch.
So konfigurieren Sie die Paketerfassung:
Bearbeiten Sie die Option "Security DataPath-Debug" für mehrere Verarbeitungseinheiten entlang des Paketverarbeitungspfads:
[edit] user@host# edit security datapath-debug
Aktivieren Sie die Aufnahmedatei, das Dateiformat, die Dateigröße und die Anzahl der Dateien. Die Größe der Aufnahmedatei begrenzt die Größe der Aufnahmedatei. Wenn die Maximale Größe erreicht ist, wird die Aufnahmedatei, wenn die Datei angegeben ist, in dateiname xgedreht, wo x sie automatisch inkrementiert wird, bis sie den angegebenen Index erreicht und dann auf Null zurückgeht. Wenn kein Dateiindex angegeben wird, werden die Pakete verworfen, nachdem die Größenbeschränkung erreicht wurde. Die Standardgröße ist 512 KB.
[edit security datapath-debug] user@host# set capture-file my-capture format pcap size 1m files 5 [edit security datapath-debug] user@host# set maximum-capture-size 400
Aktivieren Sie das Aktionsprofil und legen Sie das Ereignis fest. Legen Sie das Aktionsprofil als Do-Capture und den Ereignistyp als np-ingress:
[edit security datapath-debug] user@host# edit action-profile do-capture [edit security datapath-debug action-profile do-capture] user@host# edit event np-ingress
Aktivierung von Paketabzug für das Aktionsprofil:
[edit security datapath-debug action-profile do-capture event np-ingress] user@host# set packet-dump
Aktivieren Sie Paketfilter-, Aktions- und Filteroptionen. Der Paketfilter ist auf My-Filter festgelegt, das Aktionsprofil auf Do-Capture und die Filteroption auf Quellpräfix 1.2.3.4/32 festgelegt.
[edit security datapath-debug] user@host# set security datapath-debug packet-filter my-filter action-profile do-capture
[edit security datapath-debug] user@host# set security datapath-debug packet-filter my-filter source-prefix 1.2.3.4/32
Ergebnisse
Bestätigen Sie ihre Konfiguration im Konfigurationsmodus, indem Sie den show security datapath-debug
Befehl eingeben. Wenn in der Ausgabe die beabsichtigte Konfiguration nicht angezeigt wird, wiederholen Sie die Konfigurationsanweisungen in diesem Beispiel, um sie zu korrigieren. Der folgende Befehl wirdshow security datapath-debug
ausgegeben show security datapath-debug
:
security { datapath-debug { capture-file { my-capture format pcap size 1m files 5; } } maximum-capture-size 100; action-profile do-capture { event np-ingress { packet-dump } } packet-filter my-filter { source-prefix 1.2.3.4/32 action-profile do-capture } }
Wenn Sie mit der Konfiguration des Geräts fertig sind, geben Sie im Konfigurationsmodus ein commit
.
Überprüfung
Bestätigen Sie, dass die Konfiguration ordnungsgemäß funktioniert.
- Verifizieren der Paketerfassung
- Überprüfung der Datenpfad-Debugging-Erfassung
- Datenpfad-Debugging-Zähler überprüfen
Verifizieren der Paketerfassung
Zweck
Überprüfen Sie, ob die Paketerfassung funktioniert.
Aktion
Geben Sie im Betriebsmodus den Befehl ein, um die request security datapath-debug capture start
Paketerfassung zu starten, und geben Sie den Befehl zum Stoppen der request security datapath-debug capture stop
Paketerfassung ein.
Um die Ergebnisse aus dem CLI-Betriebsmodus anzuzeigen, greifen Sie auf die lokale UNIX-Shell und navigieren Sie zum Verzeichnis /var/log/my-capture. Das Ergebnis kann mithilfe des Dienstprogramms tcpdump gelesen werden.
Überprüfung der Datenpfad-Debugging-Erfassung
Zweck
Überprüfen Sie die Details der Datenpfad-Erfassungsdatei.
Aktion
Geben Sie im Betriebsmodus den show security datapath-debug capture
Befehl ein.
user@host>show security datapath-debug capture
Wenn Sie mit der Fehlerbehebung fertig sind, stellen Sie sicher, dass Sie alle Traceoptionskonfigurationen (nicht beschränkt auf Ablaufverfolgungsoptionsoptionen) und die vollständige Sicherheits-Datapath-Debug-Konfigurationsstrophe entfernen oder deaktivieren. Wenn Debugging-Konfigurationen weiterhin aktiv bleiben, werden weiterhin die CPU- und Speicherressourcen des Geräts verwendet.
Datenpfad-Debugging-Zähler überprüfen
Zweck
Überprüfen Sie die Details des Datenpfad-Debugging-Zählers.
Aktion
Geben Sie im Betriebsmodus den show security datapath-debug counter
Befehl ein.
Deaktivierung der Paketerfassung
Sie müssen die Paketerfassung deaktivieren, bevor Sie die Paketerfassungsdatei zur Analyse oder Übertragung der Datei auf ein externes Gerät öffnen. Durch die Deaktivierung der Paketerfassung wird sichergestellt, dass der interne Dateipuffer überspült wird und alle erfassten Pakete in die Datei geschrieben werden.
Um die Paketerfassung zu deaktivieren, geben Sie im Konfigurationsmodus folgendes ein:
[edit forwarding-options] user@host# set packet-capture disable
Wenn Sie mit der Konfiguration des Geräts fertig sind, geben Sie im Konfigurationsmodus ein commit
.
Löschen von Paketerfassungsdateien
Durch das Löschen von Paketerfassungsdateien aus dem Verzeichnis /var/tmp werden die Paketerfassungsdateien nur vorübergehend entfernt. Paketerfassungsdateien für die Schnittstelle werden automatisch erneut erstellt, wenn eine Konfigurationsänderung für die Paketerfassung vorgenommen wird, oder im Rahmen einer Paketerfassungsdateirotation.
So löschen Sie eine Paketerfassungsdatei:
- Paketerfassung deaktivieren (siehe Deaktivieren der Paketerfassung).
- Löschen Sie die Paketerfassungsdatei für die Schnittstelle.
- Reenable Packet Capture (siehe Beispiel: Aktivieren der Paketerfassung auf einem Gerät).
- Wenn Sie mit der Konfiguration des Geräts fertig sind, geben Sie im Konfigurationsmodus ein
commit
.
Ändern der Kapselung auf Schnittstellen mit konfigurierter Paketerfassung
Vor dem Ändern der Kapselung auf einer Geräteschnittstelle, die für die Paketerfassung konfiguriert ist, müssen Sie die Paketerfassung deaktivieren und die neueste Paketerfassungsdatei umbenennen. Andernfalls speichert die Paketerfassung die Pakete mit unterschiedlichen Kapselungen in derselben Paketerfassungsdatei. Paketdateien, die Pakete mit unterschiedlichen Kapselungen enthalten, sind nicht nützlich, da Packet Analyzer-Tools wie tcpdump solche Dateien nicht analysieren können.
Nachdem Sie die Kapselung geändert haben, können Sie die Paketerfassung auf dem Gerät sicher erneut aktivieren.
So ändern Sie die Kapselung von Schnittstellen mit konfigurierter Paketerfassung:
- Paketerfassung deaktivieren (siehe Deaktivieren der Paketerfassung).
- Geben Sie aus dem Konfigurationsmodus ein
commit
. - Benennen Sie die neueste Paketerfassungsdatei um, für die Sie die Kapselung mit der
.chdsl
Erweiterung ändern. - Ändern Sie die Kapselung auf der Schnittstelle mit der J-Web-Benutzeroberfläche oder dem CLI-Konfigurations-Editor.
- Wenn Sie mit der Konfiguration des Geräts fertig sind, geben Sie im Konfigurationsmodus ein
commit
. - Reenable Packet Capture (siehe Beispiel: Aktivieren der Paketerfassung auf einem Gerät).
- Wenn Sie mit der Konfiguration des Geräts fertig sind, geben Sie im Konfigurationsmodus ein
commit
.
Anzeige von Paket-Headern
Geben Sie den monitor traffic
Befehl ein, um Paket-Header anzuzeigen, die über Netzwerkschnittstellen mit der folgenden Syntax übertragen werden:
Die Verwendung des monitor traffic
Befehls kann die Systemleistung beeinträchtigen. Es wird empfohlen, Filteroptionen wie count
und matching
zu verwenden, um die Auswirkungen auf den Paketdurchsatz auf das System zu minimieren.
user@host> monitor traffic <absolute-sequence> <count number> <interface interface-name> <layer2-headers> <matching "expression"> <no-domain-names> <no-promiscuous> <no-resolve> <no-timestamp> <print-ascii> <print-hex> <size bytes> <brief | detail | extensive>
Tabelle 1 beschreibt die monitor traffic
Befehlsoptionen.
Option |
Beschreibung |
---|---|
|
(Optional) Zeigt die absoluten TCP-Sequenznummern an. |
|
(Optional) Zeigt die angegebene Anzahl von Paket-Headern an. Geben Sie einen Wert von bis |
|
(Optional) Zeigt Paket-Header für Datenverkehr auf der angegebenen Schnittstelle an. Wenn keine Schnittstelle angegeben wird, wird die Schnittstelle mit der niedrigsten Nummer überwacht. |
|
(Optional) Zeigt den Link-Layer-Paket-Header in jeder Zeile an. |
|
(Optional) Zeigt Paket-Header an, die einem Ausdruck entsprechen, der in Anführungszeichen eingeschlossen ist (" "). Tabelle 2 durch Tabelle 4 Listen-Match-Bedingungen, logische Operatoren und arithmetische, binäre und beziehungsweise orientierte Operatoren, die Sie im Ausdruck verwenden können. |
|
(Optional) Unterdrückt die Anzeige des Domänennamens des Hostnamens. |
|
(Optional) Gibt an not , die überwachte Schnittstelle im promiscuous-Modus zu platzieren. Im promiscuous-Modus liest die Schnittstelle jedes Paket, das es erreicht. Im nicht-promiscuous-Modus liest die Schnittstelle nur die an sie adressierten Pakete. |
|
(Optional) Unterdrückt die Anzeige von Hostnamen. |
|
(Optional) Unterdrückt die Anzeige von Paket-Header-Zeitstempeln. |
|
(Optional) Zeigt jeden Paket-Header im ASCII-Format an. |
|
(Optional) Zeigt jeden Paket-Header mit Ausnahme von Link-Layer-Headern im hexadezimalen Format an. |
|
(Optional) Zeigt die Anzahl der Bytes für jedes angegebene Paket an. Wenn ein Paket-Header diese Größe überschreitet, wird der angezeigte Paket-Header abgeschnitten. Der Standardwert ist |
|
(Optional) Zeigt minimale Paket-Header-Informationen an. Dies ist der Standard. |
|
(Optional) Zeigt Paket-Header-Informationen mit moderaten Details an. Bei einigen Protokollen müssen Sie auch die |
|
(Optional) Zeigt die umfangreichste Ebene an Paket-Header-Informationen an. Bei einigen Protokollen müssen Sie auch die |
Um den monitor traffic
Befehl zu beenden und zur Eingabeaufforderung zurückzukehren, drücken Sie Strg-C.
Um die vom monitor traffic
Befehl angezeigten Paket-Header-Informationen einzuschränken, schließen Sie die Option ein matching "expression"
. Ein Ausdruck besteht aus einer oder mehreren Übereinstimmungsbedingungen, die in Tabelle 2, in Anführungszeichen eingeschlossen sind (" "). Sie können Übereinstimmungsbedingungen kombinieren, indem Sie die in aufgeführten Tabelle 3 logischen Operatoren verwenden (angezeigt in der Reihenfolge der höchsten bis niedrigsten Rangfolge).
Geben Sie beispielsweise folgendes ein, um TCP- oder UDP-Paket-Header anzuzeigen:
user@host> monitor traffic matching “tcp || udp”
Um die folgenden Arten von Ausdrücken zu vergleichen, verwenden Sie die in Tabelle 4 aufgeführten Beziehungsoperatoren (aufgeführt von der höchsten bis zur niedrigsten Rangfolge):
Arithmetik – Ausdrücke, die die in Tabelle 4.
Binär : Ausdrücke, die die in Tabelle 4.
Packet Data Accessor – Ausdrücke, die die folgende Syntax verwenden:
protocol [byte-offset <size>]
Ersetzen Sie mit
protocol
jedem Protokoll in Tabelle 2. Ersetzen Siebyte-offset
mit dem Byte-Offset vom Anfang des Paket-Headers, um sie für den Vergleich zu verwenden. Der optionalesize
Parameter stellt die Anzahl der im Paket-Header untersuchten Bytes dar – 1, 2 oder 4 Bytes.Der folgende Befehl zeigt beispielsweise den gesamten Multicast-Datenverkehr an:
user@host> monitor traffic matching “ether[0] & 1 !=0”
Übereinstimmungsbedingung |
Beschreibung |
---|---|
Entitätstyp | |
|
Entspricht Paket-Headern, die die angegebene Adresse oder den angegebenen Hostnamen enthalten. Sie können jede der folgenden Bedingungen für die Protokollgleichung und gefolgt von einem Leerzeichen vorpredieren, um |
|
Vergleicht Paket-Header mit Quell- oder Zieladressen, die die angegebene Netzwerkadresse enthalten. |
|
Entspricht Paket-Headern, die die angegebene Netzwerkadresse und Subnetzmaske enthalten. |
|
Entspricht Paket-Headern, die die angegebene Quell- oder Ziel-TCP- oder UDP-Portnummer oder den Portnamen enthalten. |
Direktionale | |
|
Entspricht Paket-Headern, die das angegebene Ziel enthalten. Bedingungen für die gerichtete Übereinstimmung können jedem Entitätstyp-Übereinstimmungsbedingungen, gefolgt von einem Leerzeichen, vorgegeben werden. |
|
Entspricht Paket-Headern, die die angegebene Quelle enthalten. |
|
Entspricht Paket-Headern, die das angegebene Quellziel and enthalten. |
|
Entspricht Paket-Headern, die das angegebene Quellziel or enthalten. |
Paketlänge | |
|
Vergleicht Pakete mit längen kleiner oder gleich dem angegebenen Wert in Bytes. |
|
Gleicht Pakete ab, deren Länge größer oder gleich dem angegebenen Wert in Bytes ist. |
Protokoll | |
|
Entspricht allen ARP-Paketen. |
|
Passt zu allen Ethernet-Frames. |
|
Passt Broadcast- oder Multicast-Ethernet-Frames ab. Diese Übereinstimmungsbedingung kann mit |
|
Vergleicht Ethernet-Frames mit der angegebenen Adresse oder dem angegebenen Protokolltyp. Die Argumente |
|
Entspricht allen ICMP-Paketen. |
|
Entspricht allen IP-Paketen. |
|
Passt Broadcast- oder Multicast-IP-Pakete ab. |
|
Vergleicht IP-Pakete mit der angegebenen Adresse oder dem angegebenen Protokolltyp. Die Argumente |
|
Passt alle IS-IS-Routing-Nachrichten ab. |
|
Entspricht allen RARP-Paketen. |
|
Entspricht allen TCP-Paketen. |
|
Entspricht allen UDP-Paketen. |
Logischer Operator |
Beschreibung |
---|---|
|
Logisch NICHT. Wenn die erste Bedingung nicht übereinstimmt, wird die nächste Bedingung ausgewertet. |
|
Logisch UND. Wenn die erste Bedingung übereinstimmt, wird die nächste Bedingung ausgewertet. Wenn die erste Bedingung nicht übereinstimmt, wird die nächste Bedingung übersprungen. |
|
Logisches ODER. Wenn die erste Bedingung übereinstimmt, wird die nächste Bedingung übersprungen. Wenn die erste Bedingung nicht übereinstimmt, wird die nächste Bedingung ausgewertet. |
|
Gruppenoperatoren, um die Standardreihenfolge zu überschreiben. Klammern sind Sonderzeichen, denen jedem ein backslash (\) vorangestellt werden muss. |
Betreiber |
Beschreibung |
---|---|
Arithmetischer Operator | |
|
Zusatzoperator. |
|
Subtraktionsoperator. |
|
Abteilungsbetreiber. |
Binärer Betreiber | |
|
Bitweise UND. |
|
Bitwise exklusiv ODER. |
|
Bitweise inkl. OR. |
Beziehungsoperator | |
|
Eine Übereinstimmung tritt auf, wenn der erste Ausdruck kleiner oder gleich dem zweiten Ausdruck ist. |
|
Eine Übereinstimmung tritt auf, wenn der erste Ausdruck größer oder gleich dem zweiten Ausdruck ist. |
|
Eine Übereinstimmung tritt auf, wenn der erste Ausdruck kleiner ist als der zweite. |
|
Eine Übereinstimmung tritt auf, wenn der erste Ausdruck größer ist als der zweite. |
|
Eine Übereinstimmung tritt auf, wenn der erste Ausdruck gleich dem zweiten ist. |
|
Eine Übereinstimmung tritt auf, wenn der erste Ausdruck nicht gleich der zweite ist. |
Im Folgenden wird eine Beispielausgabe aus dem monitor traffic
Befehl angezeigt:
user@host> monitor traffic count 4 matching “arp” detail
Listening on fe-0/0/0, capture size 96 bytes 15:04:16.276780 In arp who-has 193.1.1.1 tell host1.site2.net 15:04:16.376848 In arp who-has host2.site2.net tell host1.site2.net 15:04:16.376887 In arp who-has 193.1.1.2 tell host1.site2.net 15:04:16.601923 In arp who-has 193.1.1.3 tell host1.site2.net