Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Konfigurieren von Datenpfad-Debugging- und Trace-Optionen

Grundlegendes zum Debuggen von Datenpfaden für Geräte der SRX-Serie

Die Unterstützung für das Debuggen von Datenpfaden oder das End-to-End-Debuggen ermöglicht die Ablaufverfolgung und das Debuggen auf mehreren Verarbeitungseinheiten entlang des Paketverarbeitungspfads. Der Paketfilter kann mit minimalen Auswirkungen auf das Produktionssystem ausgeführt werden.

Wenn Sie Paketerfassungen erfassen möchten, empfehlen wir dringend, die in Junos OS Version 19.3R1 eingeführte Paketerfassung im Betriebsmodus zu nutzen. Weitere Informationen finden Sie unter Paketerfassung aus dem Betriebsmodus.

Auf einer Firewall der SRX-Serie durchläuft ein Paket eine Reihe von Ereignissen, an denen verschiedene Komponenten von der Eingangs- bis zur Ausgangsverarbeitung beteiligt sind.

Mit der Funktion zum Debuggen von Datenpfaden können Sie an verschiedenen Datenpunkten entlang des Verarbeitungspfads nachverfolgen und debuggen (Pakete erfassen). Die im Paketverarbeitungspfad verfügbaren Ereignisse sind: NP-Eingang, Load-Balancing-Thread (LBT), jexec, paketordnender Thread (POT) und NP-Ausgang. Sie können auch die Ablaufverfolgung von Datenflussmodulen aktivieren, wenn das Sicherheits-Ablaufverfolgungsflag für ein bestimmtes Modul festgelegt ist.

Bei jedem Ereignis können Sie eine der vier Aktionen angeben (Anzahl, Paketabbild, Paketzusammenfassung und Ablaufverfolgung). Das Debuggen von Datenpfaden bietet Filter, um zu definieren, welche Pakete erfasst werden sollen, und nur die übereinstimmenden Pakete werden verfolgt. Der Paketfilter kann Pakete basierend auf logischer Schnittstelle, Protokoll, Quell-IP-Adresspräfix, Quellport, Ziel-IP-Adresspräfix und Zielport herausfiltern.

Das Debuggen von Datenpfaden wird auf SRX4600, SRX5400, SRX5600 und SRX5800 unterstützt.

Um das End-to-End-Debuggen zu aktivieren, müssen Sie die folgenden Schritte ausführen:

  1. Definieren Sie die Erfassungsdatei und geben Sie die maximale Erfassungsgröße an.

  2. Definieren Sie den Paketfilter so, dass nur ein bestimmter Datenverkehrstyp basierend auf der Anforderung verfolgt wird.

  3. Definieren Sie das Aktionsprofil, das die Position auf dem Verarbeitungspfad angibt, von der aus die Pakete erfasst werden sollen (z. B. LBT- oder NP-Eingang).

  4. Aktivieren Sie das Debuggen des Datenpfads.

  5. Erfassen Sie den Datenverkehr.

  6. Deaktivieren Sie das Debuggen von Datenpfaden.

  7. Zeigen Sie den Bericht an oder analysieren Sie ihn.

Das Paketfilterverhalten für die Port- und Schnittstellenoptionen lautet wie folgt:

  • Der Paketfilter verfolgt sowohl IPv4- als auch IPv6-Datenverkehr, wenn nur angegeben wird.port

  • Der Paketfilter verfolgt IPv4-, IPV6- und Nicht-IP-Datenverkehr, wenn nur angegeben wird.interface

Paketerfassung aus dem Betriebsmodus

Das Debuggen von Datenpfaden oder End-to-End-Debuggen ermöglicht die Ablaufverfolgung und das Debuggen auf mehreren Verarbeitungseinheiten entlang des Paketverarbeitungspfads. Die Paketerfassung ist eine der Funktionen zum Debuggen von Datenpfaden. Sie können die Paketerfassung aus dem Betriebsmodus mit minimalen Auswirkungen auf das Produktionssystem ausführen, ohne die Konfigurationen festschreiben zu müssen.

Sie können die Pakete mithilfe von Filtern erfassen, um zu definieren, welche Pakete erfasst werden sollen. Der Paketfilter kann Pakete basierend auf logischer Schnittstelle, Protokoll, Quell-IP-Adresspräfix, Quellport, Ziel-IP-Adresspräfix und Zielport herausfiltern. Sie können den Dateinamen, den Dateityp, die Dateigröße und die Erfassungsgröße der Paketerfassungsausgabe ändern. Sie können die Filter auch in zwei Filter erweitern und die Werte der Filter vertauschen.

Die Paketerfassung aus dem Betriebsmodus wird auf SRX4600, SRX5400, SRX5600 und SRX5800 unterstützt.

Um Pakete aus dem Betriebsmodus zu erfassen, müssen Sie die folgenden Schritte ausführen:

  1. Definieren Sie im Betriebsmodus den Paketfilter, um den Datenverkehrstyp basierend auf Ihren Anforderungen mithilfe des CLI-Befehls zu verfolgen.request packet-capture start Weitere Informationen finden Sie unter die verfügbaren Filteroptionen für die Paketerfassung.request packet-capture start
  2. Erfassen Sie die erforderlichen Pakete.
  3. Sie können entweder den CLI-Befehl verwenden, um die Paketerfassung zu stoppen, oder nachdem Sie die angeforderte Anzahl von Paketen erfasst haben, wird die Paketerfassung automatisch beendet.request packet-capture stop
  4. Zeigen Sie den erfassten Paketdatenbericht an oder analysieren Sie ihn.

Einschränkungen beim Erfassen von Paketen aus dem Betriebsmodus sind:

  1. Die Paketerfassung im Konfigurationsmodus und die Paketerfassung im Betriebsmodus können nicht nebeneinander existieren.

  2. Die Paketerfassung im Betriebsmodus ist ein einmaliger Vorgang, und das System speichert den Verlauf dieses Befehls nicht.

  3. Sie sollten den Betriebsmodus Paketerfassung bei niedriger Datenverkehrsrate verwenden.

Grundlegendes zum Sicherheitsdebuggen mithilfe von Ablaufverfolgungsoptionen

Die Ablaufverfolgungsfunktion von Junos OS ermöglicht es Anwendungen, Informationen zur Sicherheitsdebuggierung in eine Datei zu schreiben. Die Informationen, die in dieser Datei angezeigt werden, basieren auf den von Ihnen festgelegten Kriterien. Sie können diese Informationen verwenden, um Probleme mit Sicherheitsanwendungen zu analysieren.

Die Trace-Funktion arbeitet verteilt, wobei jeder Thread in seinen eigenen Trace-Puffer schreibt. Diese Trace-Puffer werden dann an einem bestimmten Punkt gesammelt, sortiert und in Trace-Dateien geschrieben. Trace-Nachrichten werden über das IPC-Protokoll (InterProcess Communications) übermittelt. Eine Trace-Nachricht hat eine niedrigere Priorität als die von Kontrollprotokollpaketen wie BGP, OSPF und IKE, sodass die Zustellung nicht als so zuverlässig angesehen wird.

Grundlegendes zum Debuggen von Datenströmen mithilfe von Ablaufverfolgungsoptionen

Für Flow-Trace-Optionen können Sie einen Paketfilter definieren, indem Sie Kombinationen aus , , , , und .destination-portdestination-prefixinterfaceprotocolsource-portsource-prefix Wenn das Sicherheits-Flow-Trace-Flag für ein bestimmtes Modul festgelegt ist, löst das Paket, das dem spezifischen Paketfilter entspricht, die Flow-Ablaufverfolgung aus und schreibt Debugging-Informationen in die Trace-Datei.

Debuggen des Datenpfads (CLI-Verfahren)

Das Debuggen von Datenpfaden wird auf SRX5400, SRX5600 und SRX5800 unterstützt.

So konfigurieren Sie das Gerät für das Debuggen von Datenpfaden:

  1. Geben Sie den folgenden Anforderungsbefehl an, um das Debuggen des Datenpfads für die mehreren Verarbeitungseinheiten entlang des Paketverarbeitungspfads festzulegen:
  2. Geben Sie die Ablaufverfolgungsoptionen für das Datenpfad-Debuggen mit dem folgenden Befehl an:
  3. Mit dem Befehl request security packet-filter können Sie den Paketfilter so einstellen, dass die zugehörigen Pakete angegeben werden, die eine Datenpfad-Debugaktion ausführen sollen. Es werden maximal vier Filter gleichzeitig unterstützt. Mit dem folgenden Befehl wird beispielsweise der erste Paketfilter festgelegt:
  4. Mit dem Befehl request security action-profile können Sie die Aktion für die Paketübereinstimmung für einen angegebenen Filter festlegen. Es wird nur das Standardaktionsprofil unterstützt, d. h. die Trace-Option für den Netzwerkprozessor ezchip ingress, ezchip egress, spu.lbt und spu.pot:

Festlegen von Ablaufverfolgungsoptionen für das Datenflussdebuggen (CLI-Verfahren)

In den folgenden Beispielen werden die Optionen angezeigt, die Sie mithilfe von festlegen können.security flow traceoptions

  • Verwenden Sie die folgende Anweisung, um den imap-Zielport für den Paketfilter filter1 abzugleichen:

  • Verwenden Sie die folgende Anweisung, um die IPv4-Zielpräfixadresse 1.2.3.4 für den Paketfilter filter1 festzulegen:

  • Verwenden Sie die folgende Anweisung, um die logische fxp0-Schnittstelle für den Paketfilter filter1 festzulegen:

  • Verwenden Sie die folgende Anweisung, um das TCP-IP-Protokoll für den Paketfilter filter1 abzugleichen:

  • Verwenden Sie die folgende Anweisung, um den HTTP-Quellport für den Paketfilter filter1 abzugleichen:

  • Verwenden Sie die folgende Anweisung, um die IPv4-Präfixadresse 5.6.7.8 für den Paketfilter filter1 festzulegen:

Festlegen von Sicherheitsablaufverfolgungsoptionen (CLI-Verfahren)

Verwenden Sie die folgenden Konfigurationsanweisungen, um Sicherheitsablaufverfolgungsoptionen im CLI-Konfigurationseditor zu konfigurieren.

  • Geben Sie die folgende Anweisung ein, um die Remoteablaufverfolgung zu deaktivieren:

  • Geben Sie die folgende Anweisung ein, um Ablaufverfolgungsmeldungen in eine lokale Datei zu schreiben. Das System speichert die Trace-Datei imVerzeichnis. /var/log/

  • Geben Sie die folgende Anweisung ein, um einen Namen für die Ablaufverfolgungsdatei anzugeben. Gültige Werte sind zwischen 1 und 1024 Zeichen. Der Name darf keine Leerzeichen, /- oder %-Zeichen enthalten. Der Standarddateiname ist security.

  • Geben Sie die folgende Anweisung ein, um die maximale Anzahl von Ablaufverfolgungsdateien anzugeben, die sich ansammeln können. Gültige Werte liegen zwischen 2 und 1000. Der Standardwert ist 3.

  • Geben Sie die folgende Anweisung ein, um die Übereinstimmungskriterien anzugeben, die das System beim Protokollieren von Informationen in der Datei verwenden soll. Geben Sie einen regulären Ausdruck ein. Platzhalterzeichen (*) werden akzeptiert.

  • Geben Sie die Anweisung ein, damit jeder Benutzer die Ablaufverfolgungsdatei lesen kann. world-readable Andernfalls geben Sie die Anweisung ein.no-world-readable

  • Geben Sie die folgende Anweisung ein, um die maximale Größe anzugeben, auf die die Ablaufverfolgungsdatei anwachsen kann. Sobald die Datei die angegebene Größe erreicht hat, wird sie komprimiert und in 0.gz umbenannt , die nächste Datei erhält den Namen 1.gz usw.filenamefilename Gültige Werte liegen zwischen 10240 und 1.073.741.824.

  • Um Ablaufverfolgungsoptionen zu aktivieren und mehr als einen Ablaufverfolgungsvorgang auszuführen, legen Sie die folgenden Flags fest.

  • Geben Sie die folgenden Anweisungen ein, um die Gruppen anzugeben, für die diese Trace-Optionseinstellungen gelten oder nicht:

Anzeigen von Protokoll- und Ablaufverfolgungsdateien

Geben Sie den Befehl ein, um Ergänzungen zu Systemprotokollen und Trace-Dateien in Echtzeit anzuzeigen:monitor start

Wenn das Gerät der durch angegebenen Datei einen Datensatz hinzufügt, wird der Datensatz auf dem Bildschirm angezeigt.filename Wenn Sie z. B. eine Systemprotokolldatei mit dem Namen konfiguriert haben (indem Sie die Anweisung auf der Hierarchieebene [] einfügen), können Sie den Befehl eingeben, um die Datensätze anzuzeigen, die dem Systemprotokoll hinzugefügt wurden.system-logsyslogedit systemmonitor start system-log

Um eine Liste der überwachten Dateien anzuzeigen, geben Sie den Befehl ein.monitor list Um die Anzeige von Datensätzen für eine bestimmte Datei zu stoppen, geben Sie den Befehl ein.monitor stop filename

Anzeigen der Ausgabe für Sicherheitsablaufverfolgungsoptionen

Zweck

Zeigen Sie die Ausgabe für Sicherheits-Trace-Optionen an.

Was

Verwenden Sie den Befehl, um die Ausgabe Ihrer Ablaufverfolgungsdateien anzuzeigen.show security traceoptions Hier einige Zahlen zum Generationswechsel:

Die Ausgabe für dieses Beispiel lautet wie folgt:

Anzeigen von Multicast-Trace-Vorgängen

Geben Sie den folgenden Befehl ein, um Multicast-Trace-Vorgänge zu überwachen und anzuzeigen:mtrace monitor

In diesem Beispiel werden nur Abfragen angezeigt.mtrace Wenn das Gerät jedoch eine Antwort erfasst, ist die Anzeige ähnlich, aber es wird auch die vollständige Antwort angezeigt (genau so, wie sie in der Befehlsausgabe angezeigt wird).mtracemtracemtrace from-source

Tabelle 1 Fasst die Ausgabefelder der Anzeige zusammen.

Tabelle 1: CLI mtrace monitor Zusammenfassung der Befehlsausgabe

Feld

Beschreibung

Mtrace operation-type at time-of-day

  • operation-type—Art des Multicast-Trace-Vorgangs: oder .queryresponse

  • time-of-day: Datum und Uhrzeit der Erfassung der Multicast-Trace-Abfrage oder -Antwort.

by

IP-Adresse des Hosts, der die Abfrage ausgibt.

resp to address

address– Zieladresse der Antwort.

qid qid

qid– Abfrage-ID-Nummer.

packet from source to destination

  • source– IP-Adresse der Quelle der Abfrage oder Antwort.

  • destination– IP-Adresse des Ziels der Abfrage oder Antwort.

from source to destination

  • source– IP-Adresse der Multicast-Quelle.

  • destination– IP-Adresse des Multicast-Ziels.

via group address

address– Gruppenadresse, die verfolgt wird.

mxhop=number

number—Maximale Hop-Einstellung.

Anzeigen einer Geräteliste

Um eine Liste der Geräte zwischen dem Gerät und einem angegebenen Zielhost anzuzeigen, geben Sie den Befehl mit der folgenden Syntax ein:traceroute

Tabelle 2 Beschreibt die Befehlsoptionen.traceroute

Tabelle 2: CLI traceroute Befehlsoptionen

Option

Beschreibung

host

Sendet Traceroute-Pakete an den von Ihnen angegebenen Hostnamen oder die angegebene IP-Adresse.

interface interface-name

(Optional) Sendet die Traceroute-Pakete an die von Ihnen angegebene Schnittstelle. Wenn Sie diese Option nicht angeben, werden Traceroute-Pakete an allen Schnittstellen gesendet.

as-number-lookup

(Optional) Zeigt die AS-Nummer (Autonomous System) jedes Zwischen-Hops zwischen dem Gerät und dem Zielhost an.

bypass-routing

(Optional) Umgeht die Routing-Tabellen und sendet die Traceroute-Pakete nur an Hosts auf direkt angeschlossenen Schnittstellen. Wenn sich der Host nicht auf einer direkt angeschlossenen Schnittstelle befindet, wird eine Fehlermeldung zurückgegeben.

Verwenden Sie diese Option, um eine Route zu einem lokalen System über eine Schnittstelle anzuzeigen, über die keine Route geführt wird.

gateway address

(Optional) Verwendet das Gateway, das Sie für das Routing angeben.

inet

(Optional) Erzwingt, dass die Traceroute-Pakete an ein IPv4-Ziel gesendet werden.

inet6

(Optional) Erzwingt die Traceroute-Pakete an ein IPv6-Ziel.

no-resolve

(Optional) Unterdrückt die Anzeige der Hostnamen der Hops entlang des Pfads.

routing-instance routing-instance-name

(Optional) Verwendet die Routing-Instanz, die Sie für die Traceroute angeben.

source address

(Optional) Verwendet die Quelladresse, die Sie im Traceroute-Paket angeben.

tos number

(Optional) Legt den TOS-Wert (Type-of-Service) im IP-Header des Traceroute-Pakets fest. Geben Sie einen Wert von bis an .0255

ttl number

(Optional) Legt den TTL-Wert (Time-to-Live) für das Traceroute-Paket fest. Geben Sie eine Hopanzahl von bis an .0128

wait seconds

(Optional) Legt die maximale Wartezeit auf eine Antwort fest.

Um den Befehl zu beenden, drücken Sie Strg-C.traceroute

Im Folgenden finden Sie ein Beispiel für die Ausgabe eines Befehls:traceroute

Die Felder in der Anzeige sind identisch mit denen, die vom J-Web Traceroute-Diagnosetool angezeigt werden.

Beispiel: Konfigurieren des End-to-End-Debuggings auf Geräten der SRX-Serie

Dieses Beispiel zeigt, wie das End-to-End-Debugging auf einer Firewall der SRX-Serie mit einem SRX5K-MPC konfiguriert und aktiviert wird.

Anforderungen

In diesem Beispiel werden die folgenden Hardware- und Softwarekomponenten verwendet:

  • SRX5600 Gerät mit einem SRX5K-MPC mit 100-Gigabit-Ethernet-CFP-Transceiver

  • Junos OS Version 12.1X47-D15 oder höher für Firewalls der SRX-Serie

Bevor Sie beginnen:

Vor der Konfiguration dieser Funktion ist keine spezielle Konfiguration erforderlich, die über die Geräteinitialisierung hinausgeht.

Überblick

Das Debuggen von Datenpfaden verbessert die Fehlerbehebungsfunktionen, indem es Ablaufverfolgung und Debuggen an mehreren Verarbeitungseinheiten entlang des Paketverarbeitungspfads bereitstellt. Mit der Funktion zum Debuggen von Datenpfaden können Sie an verschiedenen Datenpunkten entlang des Verarbeitungspfads nachverfolgen und debuggen (Pakete erfassen). Bei jedem Ereignis können Sie eine Aktion angeben (Anzahl, Paketdump, Paketzusammenfassung und Ablaufverfolgung) und Sie können Filter festlegen, um zu definieren, welche Pakete erfasst werden sollen.

In diesem Beispiel definieren Sie einen Datenverkehrsfilter und wenden dann ein Aktionsprofil an. Das Aktionsprofil spezifiziert eine Vielzahl von Aktionen auf der Verarbeitungseinheit. Der ein- und ausgehende Datenverkehr wird als Position auf dem Verarbeitungspfad angegeben, um die Daten für ein- und ausgehenden Datenverkehr zu erfassen.

Als Nächstes aktivieren Sie das Debuggen von Datenpfaden im Betriebsmodus, und schließlich zeigen Sie den Datenerfassungsbericht an.

HINWEIS:

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 sie in eine Textdatei ein, entfernen Sie alle Zeilenumbrüche, ändern Sie alle Details, die für Ihre Netzwerkkonfiguration erforderlich sind, kopieren Sie die Befehle und fügen Sie sie in die CLI auf Hierarchieebene ein, und geben Sie sie dann aus dem Konfigurationsmodus ein .[edit]commit

Schritt-für-Schritt-Anleitung

Im folgenden Beispiel müssen Sie durch verschiedene Ebenen in der Konfigurationshierarchie navigieren. Anweisungen hierzu finden Sie unter Verwenden des CLI-Editors im Konfigurationsmodus imJunos OS CLI-Benutzerhandbuch .Verwenden des CLI-Editors im Konfigurationsmodus

So konfigurieren Sie das Debuggen von Datenpfaden:

  1. Bearbeiten Sie die Option zum Debuggen des Sicherheitsdatenpfads für die mehreren Verarbeitungseinheiten entlang des Paketverarbeitungspfads:

  2. Aktivieren Sie die Aufnahmedatei, das Dateiformat, die Dateigröße und die Anzahl der Dateien.

  3. Konfigurieren Sie das Aktionsprofil, den Ereignistyp und die Aktionen für das Aktionsprofil.

Ergebnisse

Bestätigen Sie im Konfigurationsmodus Ihre Konfiguration, indem Sie den Befehl eingeben.show security datapath-debug Wenn die Ausgabe nicht die gewünschte Konfiguration anzeigt, wiederholen Sie die Konfigurationsanweisungen in diesem Beispiel, um sie zu korrigieren.

Wenn Sie mit der Konfiguration des Geräts fertig sind, rufen Sie den Konfigurationsmodus auf .commit

Aktivieren des Debuggens von Datenpfaden

Verfahren

Schritt-für-Schritt-Anleitung

Nachdem Sie das Debuggen des Datenpfads konfiguriert haben, müssen Sie den Prozess auf dem Gerät aus dem Betriebsmodus starten.

  1. Aktivieren Sie das Debuggen von Datenpfaden.

  2. Bevor Sie die Konfiguration überprüfen und die Berichte anzeigen, müssen Sie das Debuggen des Datenpfads deaktivieren.

    HINWEIS:

    Sie müssen den Debugvorgang beenden, nachdem Sie die Erfassung der Daten abgeschlossen haben. Wenn Sie versuchen, die erfassten Dateien zu öffnen, ohne den Debugvorgang zu stoppen, können die abgerufenen Dateien nicht über Software von Drittanbietern (z. B. tcpdump und wireshark) geöffnet werden.

Überprüfung

Vergewissern Sie sich, dass die Konfiguration ordnungsgemäß funktioniert.

Überprüfen der Details zur Paketerfassung beim Debuggen des Datenpfads

Zweck

Überprüfen Sie die erfassten Daten, indem Sie die Konfiguration für das Debuggen des Datenpfads aktivieren.

Was

Geben Sie im Betriebsmodus den Befehl ein.show security datapath-debug capture

Der Kürze halber wird die Befehlsausgabe gekürzt, sodass nur wenige Beispiele angezeigt werden.show Zusätzliche Samples wurden durch Ellipsen (...) ersetzt.

Um die Ergebnisse anzuzeigen, greifen Sie im CLI-Betriebsmodus auf die lokale UNIX-Shell zu, und navigieren Sie zum Verzeichnis ./var/log/<file-name> Das Ergebnis kann mit dem Dienstprogramm gelesen werden.tcpdump

HINWEIS:

Wenn Sie mit der Fehlerbehebung beim Debuggen des Datenpfads fertig sind, entfernen Sie alle (nicht beschränkt auf Flow-Trace-Optionen) und die vollständige Datenpfad-Debug-Konfiguration, einschließlich der Datenpfad-Debug-Konfiguration für die Paketerfassung (Paket-Dump), die manuell gestartet/gestoppt werden muss.traceoptions Wenn ein Teil der Debugging-Konfiguration aktiv bleibt, werden weiterhin die Ressourcen des Geräts (CPU/Arbeitsspeicher) verwendet.