Flow-Protokolldatensätze - Amazon Virtual Private Cloud

Flow-Protokolldatensätze

Ein Flow-Protokolldatensatz repräsentiert einen Netzwerk-Flow in Ihrer VPC. Standardmäßig erfasst jeder Datensatz einen Netzwerk-Internetprotokoll-(IP)-Datenverkehrsfluss (gekennzeichnet durch ein 5-Tupel auf der Basis der einzelnen Netzwerkschnittstellen), der innerhalb eines Aggregationsintervalls auftritt, das auch als Erfassungsfenster bezeichnet wird.

Jeder Datensatz ist ein String mit durch Leerzeichen getrennten Feldern. Der Datensatz enthält Werte für die verschiedenen Komponenten des IP-Flows, zum Beispiel Quelle, Ziel und Protokoll.

Wenn Sie ein Flow-Protokoll erstellen, können Sie das Standardformat für den Flow-Protokolldatensatz verwenden oder ein benutzerdefiniertes Format angeben.

Aggregationsintervall

Das Aggregationsintervall ist der Zeitraum, in dem ein bestimmter Flow erfasst und zu einem Flow-Protokolldatensatz aggregiert wird. Standardmäßig beträgt das maximale Aggregationsintervall 10 Minuten. Wenn Sie ein Flow-Protokoll erstellen, können Sie optional ein maximales Aggregationsintervall von 1 Minute angeben. Flow-Protokolle mit einem maximalen Aggregationsintervall von 1 Minute erzeugen ein höheres Volumen an Flow-Protokoll-Datensätzen als Flow-Protokolle mit einem maximalen Aggregationsintervall von 10 Minuten.

Wenn eine Netzwerkschnittstelle einer Nitro-basierten Instance zugewiesen ist, beträgt das Aggregationsintervall immer 1 Minute oder weniger, unabhängig vom angegebenen maximalen Aggregationsintervall.

Nachdem die Daten innerhalb eines Aggregationsintervalls erfasst wurden, dauert es zusätzlich, die Daten zu verarbeiten und in CloudWatch Logs oder Amazon S3 zu veröffentlichen. Der Flow-Protokollservice liefert in der Regel Protokolle in etwa 5 Minuten an CloudWatch Logs und in etwa 10 Minuten an Amazon S3. Die Protokollbereitstellung erfolgt jedoch nach bestem Bemühen, und Ihre Protokolle können über die typische Lieferzeit hinaus verzögert werden.

Standardformat

Mit dem Standardformat enthalten die Flow-Protokolldatensätze die Felder der Version 2 in der Reihenfolge, die in der Tabelle Verfügbare Felder angezeigt wird. Das Standardformat kann nicht angepasst oder geändert werden. Um zusätzliche Felder oder eine unterschiedliche Teilmenge an Feldern zu erfassen, müssen Sie stattdessen ein benutzerdefiniertes Format angeben.

Benutzerdefiniertes Format

Mit einem benutzerdefinierten Format geben Sie an, welche Felder in den Flow-Protokolldatensätzen in welcher Reihenfolge enthalten sind. Auf diese Weise können Sie spezifische Flow-Protokolle für Ihre Anforderungen erstellen und Felder auslassen, die nicht relevant sind. Ein benutzerdefiniertes Format kann dazu beitragen, dass weniger separate Prozesse erforderlich sind, um spezifische Informationen aus veröffentlichten Flow-Protokollen zu extrahieren. Sie können eine beliebige Anzahl an verfügbaren Flow-Protokollfeldern angeben, Sie müssen jedoch mindestens eins angeben.

Verfügbare Felder

Die folgende Tabelle beschreibt alle verfügbaren Felder für einen Flow-Protokolldatensatz. In der Spalte Version wird die Version des VPC-Flow-Protokolls angegeben, in der das Feld eingeführt wurde. Das Standardformat enthält alle Felder der Version 2 in der Reihenfolge, in der sie in der Tabelle angezeigt werden.

Beim Veröffentlichen von Flow-Protokoll-Daten in Amazon S3 hängt der Datentyp für die Felder vom Flow-Protokoll-Format ab. Wenn das Format reiner Text ist, sind alle Felder vom Typ STRING. Wenn das Format Parquet ist, lesen Sie die Tabelle für die Felddatentypen.

Wenn ein Feld für einen bestimmten Datensatz nicht anwendbar ist oder nicht verarbeitet werden konnte, wird für diesen Eintrag „-“ angezeigt. Metadatenfelder, die nicht direkt aus dem Paket-Header stammen, sind Best-Effort-Annäherungen, und ihre Werte können fehlen oder ungenau sein.

Feld Beschreibung Version

version

Die Version des VPC-Flow-Protokolls. Wenn Sie das Standardformat verwenden, lautet die Version 2. Wenn Sie ein benutzerdefiniertes Format verwenden, ist die Version die höchste Version unter den angegebenen Feldern. Wenn Sie beispielsweise nur Felder aus Version 2 angeben, lautet die Version 2. Wenn Sie eine Mischung aus Feldern aus den Versionen 2, 3 und 4 angeben, lautet die Version 4.

Parquet-Datentyp: INT_32

2

account-id

Die AWS-Konto-ID des Eigentümers der Quellnetzwerkschnittstelle, für die der Datenverkehr aufgezeichnet wird. Wenn die Netzwerkschnittstelle von einem AWS-Service erstellt wird, z. B. beim Erstellen eines VPC-Endpunkts oder Network Load Balancer, kann der Datensatz für dieses Feld unknown anzeigen.

Parquet-Datentyp: STRING

2

interface-id

Die ID der Netzwerkschnittstelle, für die der Datenverkehr aufgezeichnet wird.

Parquet-Datentyp: SCHNUR

2

srcaddr

Für eingehenden Datenverkehr ist das die IP-Adresse der Datenverkehrsquelle. Für ausgehenden Datenverkehr ist das die private IPv4-Adresse oder die IPv6-Adresse der Netzwerkschnittstelle, die den Datenverkehr sendet. Siehe auch pkt-srcaddr.

Parquet-Datentyp: SCHNUR

2

dstaddr

Die Zieladresse für ausgehenden Datenverkehr oder die IPv4- oder IPv6-Adresse der Netzwerkschnittstelle für eingehenden Datenverkehr an der Netzwerkschnittstelle. Die IPv4-Adresse der Netzwerkschnittstelle ist immer deren private IPv4-Adresse. Weitere Informationen finden Sie auch unter pkt-dstaddr.

Parquet-Datentyp: SCHNUR

2

srcport

Der Quellport des Datenverkehrs

Parquet-Datentyp: INT_32

2

dstport

Der Zielport des Datenverkehrs

Parquet-Datentyp: INT_32

2

protocol

Die IANA-Protokollnummer des Datenverkehrs. Weitere Informationen finden Sie unter Zugewiesene IP-Nummern.

Parquet-Datentyp: INT_32

2

packets

Die Anzahl der Pakete, die während des Flows übertragen wurden

Parquet-Datentyp: INT_64

2

bytes

Die Anzahl der Bytes, die während des Flows übertragen wurden

Parquet-Datentyp: INT_64

2

start

Die Zeit, in Unix-Sekunden, in der das erste Paket des Flows innerhalb des Aggregationsintervalls empfangen wurde. Dies kann bis zu 60 Sekunden dauern, nachdem das Paket auf der Netzwerkschnittstelle übertragen oder empfangen wurde.

Parquet-Datentyp: INT_64

2

end

Die Zeit, in Unix-Sekunden, in der das letzte Paket des Flows innerhalb des Aggregationsintervalls empfangen wurde. Dies kann bis zu 60 Sekunden dauern, nachdem das Paket auf der Netzwerkschnittstelle übertragen oder empfangen wurde.

Parquet-Datentyp: INT_64

2

action

Die mit dem Datenverkehr verknüpfte Aktion:

  • ACCEPT – Der Verkehr wurde akzeptiert.

  • REJECT – Der Verkehr wurde abgelehnt. Beispielsweise wurde der Datenverkehr von den Sicherheitsgruppen oder Netzwerk-ACLs nicht zugelassen, oder Pakete kamen an, nachdem die Verbindung geschlossen wurde.

Parquet-Datentyp: STRING

2

log-status

Der Protokollstatus des Flow-Protokolls:

  • OK – Daten werden normal auf den ausgewählten Zielen protokolliert.

  • NODATA – Es gab während des Aggregationsintervalls keinen Datenverkehr von oder zur Netzwerkschnittstelle.

  • SKIPDATA – Einige Flow-Protokolldatensätze wurden während des Aggregationsintervalls übersprungen. Dies kann an internen Kapazitätsbeschränkungen oder einem internen Fehler liegen.

    Während des Aggregationsintervalls werden einige Flow-Protokolldatensätze möglicherweise übersprungen (siehe log-status in Verfügbare Felder). Dies kann auf eine interne AWS-Kapazitätsbeschränkung oder einen internen Fehler zurückzuführen sein. Wenn Sie AWS Cost Explorer verwenden, um VPC-Flow-Protokollgebühren anzuzeigen, und einige Flow-Protokolle während des Flow-Protokoll-Aggregationsintervalls übersprungen werden, wird die Anzahl der in AWS Cost Explorer gemeldeten Flow-Protokolle höher sein als die Anzahl der von Amazon VPC veröffentlichten Flow-Protokolle.

Parquet-Datentyp: STRING

2

vpc-id

Die ID der VPC mit der Netzwerkschnittstelle, für die der Datenverkehr aufgezeichnet wird.

Parquet-Datentyp: SCHNUR

3

subnet-id

Die ID des Subnetzes mit der Netzwerkschnittstelle, für die der Datenverkehr aufgezeichnet wird.

Parquet-Datentyp: SCHNUR

3

instance-id

Die ID der Instance, die mit der Netzwerkschnittstelle verbunden ist, für die der Datenverkehr aufgezeichnet wird, sofern die Instance Ihnen gehört. Gibt das Symbol '-' für eine vom Anforderer verwaltete Netzwerkschnittstelle zurück, wie beispielsweise die Netzwerkschnittstelle für ein NAT-Gateway.

Parquet-Datentyp: SCHNUR

3

tcp-flags

Der Bitmasken-Wert für die folgenden TCP-Flags:

  • FIN — 1

  • SYN — 2

  • RST — 4

  • SYN-ACK — 18

Wenn keine unterstützten Flags aufgezeichnet werden, ist der TCP-Flag-Wert 0. Da tcp-flags beispielsweise die Protokollierung von ACK- oder PSH-Flags nicht unterstützt, führen Datensätze für Datenverkehr mit diesen nicht unterstützten Flags zu einem tcp-flags-Wert von 0. Wenn jedoch ein nicht unterstütztes Flag von einem unterstützten Flag begleitet wird, geben wir den Wert des unterstützten Flags an. Wenn ACK beispielsweise Teil von SYN-ACK ist, wird 18 angegeben. Und wenn es einen Datensatz wie SYN+ECE gibt, ist der TCP-Flaggenwert 2, da SYN ein unterstütztes Flag ist und ECE nicht. Wenn die Flag-Kombination aus irgendeinem Grund ungültig ist und der Wert nicht berechnet werden kann, ist der Wert „-“. Wenn keine Flags gesendet werden, ist der TCP-Flag-Wert 0.

TCP-Flags können während des Aggregationsintervalls ODER-verknüpft werden. Für kurze Verbindungen können die Flags in derselben Zeile im Flow-Protokolldatensatz festgelegt werden, wie beispielsweise 19 für SYN-ACK und FIN und 3 für SYN und FIN. Ein Beispiel finden Sie unter TCP-Flag-Sequenz.

Allgemeine Informationen zu TCP-Flags (z. B. die Bedeutung von Flags wie FIN, SYN und ACK) finden Sie unter TCP-Segmentstruktur auf Wikipedia.

Parquet-Datentyp: INT_32

3

type

Der Typ des Datenverkehrs. Die möglichen Werte sind: IPv4 | IPv6 | EFA. Weitere Informationen finden Sie unter Elastic Fabric Adapter.

Parquet-Datentyp: STRING

3

pkt-srcaddr

Die (ursprüngliche) Quell-IP-Adresse des Datenverkehrs auf Paketebene. Verwenden Sie dieses Feld mit dem Feld srcaddr, um zwischen der IP-Adresse einer Zwischenebene, durch die Datenverkehr fließt, und der ursprünglichen Quell-IP-Adresse des Datenverkehrs zu unterscheiden. Beispiel: Wenn Datenverkehr durch eine Netzwerkschnittstelle für ein NAT-Gateway fließt oder wenn die IP-Adresse eines Pods in Amazon EKS von der IP-Adresse der Netzwerkschnittstelle des Instance-Knotens abweicht, auf dem der Pod (für die Kommunikation innerhalb der VPC) ausgeführt wird.

Parquet-Datentyp: SCHNUR

3

pkt-dstaddr

Die (ursprüngliche) Ziel-IP-Adresse für den Datenverkehr auf Paketebene. Verwenden Sie dieses Feld mit dem Feld dstaddr, um zwischen der IP-Adresse einer Zwischenebene, durch die Datenverkehr fließt, und der endgültigen Ziel-IP-Adresse des Datenverkehrs zu unterscheiden. Beispiel: Wenn Datenverkehr durch eine Netzwerkschnittstelle für ein NAT-Gateway fließt oder wenn die IP-Adresse eines Pods in Amazon EKS von der IP-Adresse der Netzwerkschnittstelle des Instance-Knotens abweicht, auf dem der Pod (für die Kommunikation innerhalb der VPC) ausgeführt wird.

Parquet-Datentyp: SCHNUR

3

region

Die Region, die die Netzwerkschnittstelle enthält, für die der Datenverkehr aufgezeichnet wird.

Parquet-Datentyp: SCHNUR

4

az-id

Die ID der Availability Zone, die die Netzwerkschnittstelle enthält, für die der Datenverkehr aufgezeichnet wird. Wenn der Datenverkehr von einem untergeordneten Standort stammt, zeigt der Datensatz das Symbol „-“ für dieses Feld an.

Parquet-Datentyp: SCHNUR

4

sublocation-type

Der Typ des untergeordneten Standorts, der im Feld sublocation-id zurückgegeben wird. Die möglichen Werte sind: wavelength | outpost | localzone. Wenn der Datenverkehr nicht von einem untergeordneten Standort stammt, zeigt der Datensatz das Symbol „-“ für dieses Feld an.

Parquet-Datentyp: SCHNUR

4

sublocation-id

Die ID des untergeordneten Standorts mit der Netzwerkschnittstelle, für die der Datenverkehr aufgezeichnet wird. Wenn der Datenverkehr nicht von einem untergeordneten Standort stammt, zeigt der Datensatz das Symbol „-“ für dieses Feld an.

Parquet-Datentyp: SCHNUR

4

pkt-src-aws-service

Der Name der Teilmenge von IP-Adressbereichen für das Feld pkt-srcaddr, wenn die Ziel-IP-Adresse für einen AWS-Service ist. Wenn die Quell-IP-Adresse zu einem überlappenden Bereich gehört, zeigt pkt-src-aws-service nur einen der AWS-Servicecodes an. Die möglichen Werte sind: AMAZON | AMAZON_APPFLOW | AMAZON_CONNECT | API_GATEWAY | AURORA_DSQL | CHIME_MEETINGS | CHIME_VOICECONNECTOR | CLOUD9 | CLOUDFRONT | CLOUDFRONT_ORIGIN_FACING | CODEBUILD | DYNAMODB | EBS | EC2 | EC2_INSTANCE_CONNECT | GLOBALACCELERATOR | IVS_LOW_LATENCY | IVS_REALTIME | KINESIS_VIDEO_STREAMS | MEDIA_PACKAGE_V2 | ROUTE53 | ROUTE53_HEALTHCHECKS | ROUTE53_HEALTHCHECKS_PUBLISHING | ROUTE53_RESOLVER | S3 | WORKSPACES_GATEWAYS.

Parquet-Datentyp: SCHNUR

5

pkt-dst-aws-service

Der Name der Teilmenge von IP-Adressbereichen für das Feld pkt-dstaddr, wenn die Ziel-IP-Adresse für einen AWS-Service ist. Eine Liste möglicher Werte finden Sie im Feld pkt-src-aws-service.

Parquet-Datentyp: SCHNUR

5

flow-direction

Die Richtung des Flusses in Bezug auf die Schnittstelle, an der der Verkehr erfasst wird. Die möglichen Werte sind: ingress | egress.

Parquet-Datentyp: SCHNUR

5

traffic-path

Der Weg, der ausgehenden Verkehr zum Ziel führt. Um festzustellen, ob es sich bei dem Verkehr um einen ausgehenden Verkehr handelt, überprüfen Sie die Feld flow-direction. Die möglichen Werte lauten wie folgt: Wenn keiner der Werte zutrifft, wird für das Feld „-“ angezeigt.

  • 1 – Über eine andere Ressource in derselben VPC, einschließlich einer von AWS verwalteten Netzwerkschnittstelle oder einem lokalen Outpost-Gateway

  • 2 – Über ein Internet-Gateway oder einen Gateway-VPC-Endpunkt

  • 3 – Über ein Virtual Private Gateway

  • 4 – Über eine VPC-Peering-Verbindung innerhalb von Regionen

  • 5 – Über eine VPC-Peering-Verbindung zwischen Regionen

  • 6 – Über eine Local Zone oder eine Wavelength Zone

  • 7 – Über einen Gateway-VPC-Endpunkt (nur auf Nitro-basierte Instances)

  • 8 – Über ein Internet-Gateway (nur auf Nitro-basierte Instances)

Parquet-Datentyp: INT_32

5

ecs-cluster-arn

AWS-Ressourcenname (ARN) des ECS-Clusters, wenn der Datenverkehr von einer ausgeführten ECS-Aufgabe stammt. Sie benötigen die Berechtigung zum Aufrufen von ecs:ListClusters, um dieses Feld in Ihr Abonnement aufzunehmen.

Parquet-Datentyp: STRING

7

ecs-cluster-name

Name des ECS-Clusters, wenn der Datenverkehr von einer ausgeführten ECS-Aufgabe stammt. Sie benötigen die Berechtigung zum Aufrufen von ecs:ListClusters, um dieses Feld in Ihr Abonnement aufzunehmen.

Parquet-Datentyp: STRING

7

ecs-container-instance-arn

ARN der ECS-Container-Instance, wenn der Datenverkehr von einer ausgeführten ECS-Aufgabe auf einer EC2-Instance stammt. Wenn der Kapazitätsanbieter AWS Fargate ist, wird für dieses Feld „-“ angezeigt. Sie benötigen die Berechtigung zum Aufrufen von ecs:ListClusters und ecs:ListContainerInstances, um dieses Feld in Ihr Abonnement aufzunehmen.

Parquet-Datentyp: STRING

7

ecs-container-instance-id

ID der ECS-Container-Instance, wenn der Datenverkehr von einer ausgeführten ECS-Aufgabe auf einer EC2-Instance stammt. Wenn der Kapazitätsanbieter AWS Fargate ist, wird für dieses Feld „-“ angezeigt. Sie benötigen die Berechtigung zum Aufrufen von ecs:ListClusters und ecs:ListContainerInstances, um dieses Feld in Ihr Abonnement aufzunehmen.

Parquet-Datentyp: STRING

7

ecs-container-id

Docker-Laufzeit-ID des Containers, wenn der Datenverkehr von einer ausgeführten ECS-Aufgabe stammt. Wenn die ECS-Aufgabe einen oder mehrere Container enthält, ist dies die Docker-Laufzeit-ID des ersten Containers. Sie benötigen die Berechtigung zum Aufrufen von ecs:ListClusters, um dieses Feld in Ihr Abonnement aufzunehmen.

Parquet-Datentyp: STRING

7

ecs-second-container-id

Docker-Laufzeit-ID des Containers, wenn der Datenverkehr von einer ausgeführten ECS-Aufgabe stammt. Wenn die ECS-Aufgabe mehr als einen Container enthält, ist dies die Docker-Laufzeit-ID des zweiten Containers. Sie benötigen die Berechtigung zum Aufrufen von ecs:ListClusters, um dieses Feld in Ihr Abonnement aufzunehmen.

Parquet-Datentyp: STRING

7

ecs-service-name

Name des ECS-Service, wenn der Datenverkehr von einer ausgeführten ECS-Aufgabe stammt und die ECS-Aufgabe von einem ECS-Service gestartet wurde. Wenn die ECS-Aufgabe nicht von einem ECS-Service gestartet wurde, wird in diesem Feld „-“ angezeigt. Sie benötigen die Berechtigung zum Aufrufen von ecs:ListClusters und ecs:ListServices, um dieses Feld in Ihr Abonnement aufzunehmen.

Parquet-Datentyp: STRING

7

ecs-task-definition-arn

ARN der ECS-Aufgabendefinition, wenn der Datenverkehr von einer ausgeführten ECS-Aufgabe stammt. Sie benötigen die Berechtigung zum Aufrufen von ecs:ListClusters und ecs:ListTaskDefinitions, um dieses Feld in Ihr Abonnement aufzunehmen.

Parquet-Datentyp: STRING

7

ecs-task-arn

ARN der ECS-Aufgabe, wenn der Datenverkehr von einer ausgeführten ECS-Aufgabe stammt. Sie benötigen die Berechtigung zum Aufrufen von ecs:ListClusters und ecs:ListTasks, um dieses Feld in Ihr Abonnement aufzunehmen.

Parquet-Datentyp: STRING

7

ecs-task-id

ID der ECS-Aufgabe, wenn der Datenverkehr von einer ausgeführten ECS-Aufgabe stammt. Sie benötigen die Berechtigung zum Aufrufen von ecs:ListClusters und ecs:ListTasks, um dieses Feld in Ihr Abonnement aufzunehmen.

Parquet-Datentyp: STRING

7

reject-reason

Der Grund, warum der Datenverkehr abgelehnt wurde. Der mögliche Wert ist: BPA. Gibt für jeden anderen Ablehnungsgrund ein „-“ zurück. Weitere Informationen über VPC Block Public Access (BPA) finden Sie unter Blockieren des öffentlichen Zugriffs auf VPCs und Subnetze.

Parquet-Datentyp: STRING

8