Zuordnung zwischen Feldwerten für IPFIX-Datenflussvorlagen und Protokollen, die von einem Router der MX-Serie oder NFX250 exportiert wurden
Ein IETF-Entwurf, der IPFIX-Informationselemente für die Protokollierung verschiedener NAT-Ereignisse definiert, ist in IETF als IPFIX-Informationselemente für die Protokollierung von NAT-Ereignissen verfügbar: draft-ietf-behave-ipfix-nat-logging-02. Das Vorlagenformat für die Datenstromüberwachung für Datenstromüberwachungsprotokolle, die für NAT-Ereignisse generiert werden, entspricht den Vorlagen, die in diesem Entwurf für die Protokollierung von Ereignissen zum Erstellen/Löschen von NAT44/NAT64-Sitzungen, zum Erstellen/Löschen von Bindungsinformationen (BIB), zur Adresserschöpfung, zur Poolauslastung, zur Kontingentüberschreitung, zum Erstellen/Löschen von Adressbindungen, zur Portblockierung und zur Aufhebung der Zuordnung definiert sind. Außerdem enthält dieser Entwurf eine Erweiterung für NAT64. Die Protokollierung von Ereignissen wird sowohl für NAT44 als auch für NAT64 unterstützt. Abgesehen von den in diesem Entwurf definierten Vorlagen werden keine neuen benutzerdefinierten Vorlagen für die Protokollierung von NAT-Ereignissen erstellt.
In der folgenden Tabelle sind die Erweiterungen für die NAT-Ereignisse aufgeführt. Der Datensatz enthält den entsprechenden natEvent-Wert, um das protokollierte Ereignis zu identifizieren.
| Name der Veranstaltung |
Werte |
|---|---|
| NAT44 Session erstellen |
1 |
| NAT44 Sitzung löschen |
2 |
| NAT-Adressen erschöpft |
3 |
| NAT64-Sitzung erstellen |
4 |
| NAT64 Sitzung löschen |
5 |
| NAT44 BIB erstellen |
6 |
| NAT44 BIB löschen |
7 |
| NAT64 BIB erstellen |
8 |
| NAT64 BIB löschen |
9 |
| NAT-Ports erschöpft |
10 |
| Kontingent überschritten |
11 |
| Adressbindung erstellen |
12 |
| Adressbindung löschen |
13 |
| Zuweisung von Portblöcken |
14 |
| Aufhebung der Zuweisung von Portblöcken |
15 |
In der folgenden Tabelle werden die Feld-IDs oder -Werte und die entsprechenden Namen für IPv6-Adressen für IPFIX-Datenströme beschrieben:
| Feld-ID |
Name |
Größe (Bytes) |
Beschreibung |
|---|---|---|---|
| 27 |
sourceIPv6Adresse |
16 |
IPv6-Quelladresse |
| 28 |
destinationIPv6Address |
16 |
IPv6-Zieladresse |
| 281 |
postNATSourceIPv6-Adresse |
16 |
IPv6-Adresse der übersetzten Quelle |
| 282 |
postNATDestinationPv6Adresse |
16 |
IPv6-Adresse des übersetzten Ziels |
In der folgenden Tabelle werden die Feldnamen beschrieben und ob sie für NAT64-Sitzungserstellungs- und -löschereignisse erforderlich sind oder nicht:
| Flurname |
Größe (Bits) |
ob das Feld ein Pflichtfeld ist |
|---|---|---|
| Zeitstempel |
64 |
Ja |
| vlanID/ingressVRFID |
32 |
Nein |
| sourceIPv4Address |
128 |
Ja |
| postNATSourceIPv4Address |
32 |
Ja |
| protocolIdentifier |
8 |
Ja |
| sourceTransportPort |
16 |
Ja |
| postNAPTsourceTransportPort |
16 |
Ja |
| destinationIPv4Address |
128 |
Nein |
| postNATDestinationIPv4Address |
32 |
Nein |
| destinationTransportPort |
16 |
Nein |
| postNAPTdestinationTransportPort |
16 |
Nein |
| natOriginatingAddressRealm |
8 |
Nein |
| initiatorOktette |
64 |
Nein |
| responderOktets |
64 |
Nein |
| flowEndReason |
8 |
Nein |
| natEvent |
8 |
Ja |
Ein NAT44-Sitzungserstellungsvorlagendatensatz kann die folgenden Felder enthalten. Das natEvent-Feld enthält den Wert 1, der auf ein NAT44-Sitzungserstellungsereignis hinweist. Ein Beispiel für eine solche Vorlage ist wie folgt:
| Flurname |
Größe (Bits) |
Wert |
|---|---|---|
| Zeitstempel |
64 |
09:20:10:789 |
| sourceIPv4Address |
32 |
192.168.16.1 |
| postNATSourceIPv4Address |
32 |
192.0.2.100 |
| protocolIdentifier |
8 |
TC |
| sourceTransportPort |
16 |
14800 |
| postNAPTsourceTransportPort |
16 |
1024 |
| destinationIPv4Address |
32 |
198.51.100.104 |
| postNATDestinationIPv4Address |
32 |
198.51.100.104 |
| destinationTransportPort |
16 |
80 |
| postNAPTdestinationTransportPort |
16 |
80 |
| natOriginatingAddressRealm |
8 |
0 |
| initiatorOktette |
64 |
Nein |
| responderOktets |
64 |
Nein |
| flowEndReason |
8 |
Nein |
| natEvent |
8 |
1 |
Ein NAT44-Sitzungslöschvorlagendatensatz kann die folgenden Felder enthalten. Das natEvent-Feld enthält den Wert 2, der auf ein NAT44-Sitzungslöschereignis hinweist. Ein Beispiel für eine solche Vorlage ist wie folgt:
| Flurname |
Größe (Bits) |
Wert |
|---|---|---|
| Zeitstempel |
64 |
09:20:10:789 |
| sourceIPv4Address |
32 |
192.168.16.1 |
| postNATSourceIPv4Address |
32 |
192.0.2.100 |
| protocolIdentifier |
8 |
TC |
| sourceTransportPort |
16 |
14800 |
| postNAPTsourceTransportPort |
16 |
1024 |
| destinationIPv4Address |
32 |
198.51.100.104 |
| postNATDestinationIPv4Address |
32 |
198.51.100.104 |
| destinationTransportPort |
16 |
80 |
| postNAPTdestinationTransportPort |
16 |
80 |
| natOriginatingAddressRealm |
8 |
0 |
| natEvent |
8 |
2 |
Um alle Gründe für die Beendigung der Sitzung auf NAT zu unterstützen, wird das vorhandene flowEndReason Informationselement erweitert. Ein neuer CLI-Befehl session-end-reason wird eingeführt, um zu konfigurieren flowEndReason , dass er Teil der J-Flow IPFIX-Vorlage ist.
Wenn die CLI nicht oder standardmäßig konfiguriert ist, exportiert sie flowEndReason die Standardsatzinformationen, um die Datensätze auszufüllen. Wenn die CLI als benutzerdefiniert konfiguriert ist, exportiert sie flowEndReason die benutzerdefinierten Set-Informationen, um die Datensätze auszufüllen.
In der Tabelle sind die Werte für die Sitzungsbeendigung aufgeführt, die exportiert werden können:
| Grund für das Schließen der Sitzung |
Grundfolge für das Schließen der Sitzung |
Szenarien/Bemerkung |
Benutzerdefinierte Werte festlegen |
Standardwerte festlegen |
|---|---|---|---|---|
| NAT_SESSION_CREATION |
Zeitüberschreitung im Leerlauf |
Wenn es bei einer Sitzung zu einer Zeitüberschreitung kommt |
0x01 |
0x01 |
| NAT_SESSION_CLOSE_TCP_CLIENT_RST |
TCP-CLIENT RST |
Empfängt ein TCP-Paket vom Client mit gesetztem RST FLAG |
0x13 | 0xFF |
| NAT_SESSION_CLOSE_TCP_SERVER_RST |
TCP-SERVER RST |
Empfängt ein TCP-Paket vom Server mit gesetztem RST FLAG | 0x23 |
0xFF |
| NAT_SESSION_CLOSE_TCP_FIN |
TCP-FIN |
Empfängt FIN-Paket |
0x03 |
0x03 |
| NAT_SESSION_CLOSE_ICMP_ERR |
ICMP-Fehler |
Empfangen eines ICMP-Fehlerpakets im schnellen Pfad. ICMP-bezogene Fehlermeldungen, die unten erwähnt werden |
0x10 |
0XFF |
| NAT_SESSION_CLOSE_NSRP |
HA |
Erstellen Sie eine NAT-Sitzung auf dem aktiven Router. Wechseln Sie nun manuell zum Backup-Router oder indem Sie das Bild auf dem aktiven Router herunterfahren. Warten Sie auf den Switchover, und senden Sie den Datenverkehr. Stellen Sie sicher, dass die Sitzung synchronisiert ist. Schließen Sie nun die Sitzung. |
0x20 |
0xFF |
| NAT_SESSION_CLOSE_POLICY_DELETE |
Richtlinie löschen |
Wenn Sie die Richtlinie löschen, passen Sie die Konfiguration erneut mit der aktiven Sitzung ab. |
0x50 |
0xFF |
| NAT_SESSION_CLOSE_POLICY_UPDATE |
Aktualisierung der Richtlinie |
Wenn Sie die Richtlinie aktualisieren, passen Sie die Konfiguration erneut mit der aktiven Sitzung ab. |
0x60 |
0xFF |
| NAT_SESSION_CLOSE_JSF_PLUGIN |
Anwendungsfehler oder -aktion |
Dies ist ein sehr seltenes Szenario und wäre schwer zu simulieren. Bitte haben Sie dafür keinen Testfall. |
0x70 |
0xFF |
| NAT_SESSION_CLOSE_IFP_ZONECHANGED_SSCAN |
Sitzungsschnittstellenzone geändert |
Wenn eine Redundanzumschaltung in der AMS-Schnittstelle erfolgt |
0x80 |
0xFF |
| NAT_SESSION_CLOSE_CLI |
CLI |
Beenden der Sitzung erzwingen |
0x04 |
0x04 |