Registros de log de flujo - Amazon Virtual Private Cloud

Registros de log de flujo

Un registro de log de flujo representa un flujo de red en su VPC. De forma predeterminada, cada registro captura un flujo de tráfico del protocolo de Internet (IP) de red (caracterizado por 5 tuplas para cada interfaz de red) que tiene lugar dentro de un intervalo de agregación, lo también se conoce como período de captura.

Cada registro es una cadena con campos separados por espacios. Un registro incluye valores para los distintos componentes del flujo de IP, por ejemplo, el origen, el destino y el protocolo.

Al crear un registro de flujo, puede utilizar el formato predeterminado para el registro del registro de flujo o puede especificar un formato personalizado.

Intervalo de agregación

El intervalo de agregación es el período de tiempo durante el que se captura un flujo determinado y se agrega a un registro de flujo. De forma predeterminada, el intervalo de agregación máximo es de 10 minutos. Cuando cree un registro de flujo, si lo desea, puede especificar un intervalo máximo de agregación de 1 minuto. Los registros de flujo con un intervalo de agregación máximo de 1 minuto producen un volumen mayor de registros que los que tienen un intervalo de agregación máximo de 10 minutos.

Cuando una interfaz de red está asociada a una instancia basada en Nitro, el intervalo de agregación siempre es igual o inferior a 1 minuto, independientemente del intervalo de agregación máximo especificado.

Una vez que los datos se han capturado durante el intervalo de agregación, se necesita más tiempo para procesarlos y publicarlos en CloudWatch Logs o Amazon S3. El servicio de registros de flujo suele entregar registros a CloudWatch Logs en unos 5 minutos y a Amazon S3 en unos 10 minutos. No obstante, aunque se hace todo lo posible para realizar la entrega de los registros, puede que se produzcan retrasos y se necesite más tiempo del habitual para entregarlos.

Formato predeterminado

Con el formato predeterminado, los registros del log de flujo incluyen los campos de la versión 2, en el orden mostrado en la tabla de campos disponibles. No puede personalizar o cambiar el formato predeterminado. Para capturar los campos adicionales o un subconjunto de campos distinto, especifique un formato personalizado.

Formato personalizado

Con un formato personalizado, especifique qué campos se incluyen en los registros del log de flujo y en qué orden. De este modo, puede crear registros de flujo específicos con arreglo a sus necesidades y omitir los campos que no resulten relevantes. El uso de un formato personalizado puede reducir la necesidad de procesos separados para extraer información específica de logs de flujo publicados. Puede especificar cualquier número de campos de log de flujo disponibles, pero debe especificar al menos uno.

Campos disponibles

La tabla siguiente describe todos los campos disponibles para un registro de logs de flujo. La columna Version (Versión) indica la versión de los registros de flujo de VPC en la que se introdujo el campo. El formato predeterminado incluye todos los campos de la versión 2, en el mismo orden en que aparecen en la tabla.

Al publicar datos de registro de flujo en Amazon S3, el tipo de datos de los campos depende del formato del registro de flujo. Si el formato es texto sin formato, todos los campos son de tipo STRING. Si el formato es Parquet, consulte la tabla de los tipos de datos de campo.

Si un campo no es aplicable o no se pudo calcular para un registro específico, el registro muestra un símbolo “-” en esa entrada. Los campos de metadatos que no provienen directamente del encabezado del paquete son aproximaciones de mejor esfuerzo y sus valores pueden faltar o ser inexactos.

Campo Descripción Versión

version

La versión de los registros de flujo de VPC. Si utiliza el formato predeterminado, la versión es 2. Si utiliza un formato personalizado, la versión es la más alta entre los campos especificados. Por ejemplo, si especifica sólo campos de la versión 2, la versión es 2. Si especifica una combinación de campos de las versiones 2, 3 y 4, la versión es 4.

Tipo de datos de Parquet: INT_32

2

account-id

El ID de la cuenta de AWS del propietario de la interfaz de red de origen en la que se registra el tráfico. Si un servicio de AWS crea la interfaz de red, por ejemplo, al momento de crear un punto de conexión de VPC o Network Load Balancer, el registro puede mostrar unknown para este campo.

Tipo de datos de Parquet: STRING

2

interface-id

El ID de la interfaz de red para la que se registra el tráfico.

Tipo de datos de Parquet: STRING

2

srcaddr

La dirección de origen para tráfico entrante o la dirección IPv4 o IPv6 de la interfaz de red para tráfico saliente en la interfaz de red. La dirección IPv4 de la interfaz de red es siempre su dirección IPv4 privada. Véase también pkt-srcaddr.

Tipo de datos de Parquet: STRING

2

dstaddr

La dirección de destino para tráfico saliente o la dirección IPv4 o IPv6 de la interfaz de red para tráfico entrante en la interfaz de red. La dirección IPv4 de la interfaz de red es siempre su dirección IPv4 privada. Véase también pkt-dstaddr.

Tipo de datos de Parquet: STRING

2

srcport

El puerto de origen del tráfico.

Tipo de datos de Parquet: INT_32

2

dstport

El puerto de destino del tráfico.

Tipo de datos de Parquet: INT_32

2

protocol

El número de protocolo IANA del tráfico. Para obtener más información, consulte Números de protocolo asignados en internet.

Tipo de datos de Parquet: INT_32

2

packets

El número de paquetes transferidos durante el flujo.

Tipo de datos de Parquet: INT_64

2

bytes

El número de bytes transferidos durante el flujo.

Tipo de datos de Parquet: INT_64

2

start

Momento, en segundos Unix, en que se recibió el primer paquete del flujo dentro del intervalo de agregación. El tiempo transcurrido puede ser como máximo de 60 segundos una vez que el paquete se ha transmitido o recibido en la interfaz de red.

Tipo de datos de Parquet: INT_64

2

end

Momento, en segundos Unix, en que se recibió el último paquete del flujo dentro del intervalo de agregación. El tiempo transcurrido puede ser como máximo de 60 segundos una vez que el paquete se ha transmitido o recibido en la interfaz de red.

Tipo de datos de Parquet: INT_64

2

action

La acción asociada al tráfico:

  • ACCEPT: Se ha aceptado el tráfico.

  • REJECT: Se ha rechazado el tráfico. Por ejemplo, los grupos de seguridad o las ACL de red no permitían el tráfico, o los paquetes llegaban después de que se cerrara la conexión.

Tipo de datos de Parquet: STRING

2

log-status

El estado de registro del registro de flujo:

  • OK: los datos se registran normalmente en los destinos elegidos.

  • NODATA: no hubo tráfico de red hacia o desde la interfaz de red durante el intervalo de agregación.

  • SKIPDATA: algunos registros de flujo se omitieron durante el intervalo de agregación. Esto se puede deber a una restricción de capacidad interna, o a un error interno.

    Pueden omitirse algunos informes de registros de flujo durante el intervalo de agregación (consulte log-status en Campos disponibles). Esto puede deberse a una restricción de capacidad interna de AWS o a un error interno. Si utiliza AWS Cost Explorer para ver los cargos de los registros de flujo de la VPC y se omitieron algunos registros de flujo durante el intervalo de agregación de estos registros, el número de registros en el informe de AWS Cost Explorer será mayor que el número de registros de flujo que informe Amazon VPC.

Tipo de datos de Parquet: STRING

2

vpc-id

El ID de la VPC que contiene la interfaz de red para la que se registra el tráfico.

Tipo de datos de Parquet: STRING

3

subnet-id

El ID de la subred que contiene la interfaz de red para la que se registra el tráfico.

Tipo de datos de Parquet: STRING

3

instance-id

El ID de la instancia que está asociado a la interfaz de red para la que se registra el tráfico, si la instancia es de su propiedad. Devuelve un símbolo "-" para una interfaz de red administrada por el solicitante; por ejemplo, la interfaz de red para una puerta de enlace NAT.

Tipo de datos de Parquet: STRING

3

tcp-flags

El valor de máscara de bits de las siguientes marcas TCP:

  • FIN: 1

  • SYN: 2

  • RST: 4

  • SYN-ACK: 18

Si no se registran marcadores compatibles, el valor del marcador TCP es 0. Por ejemplo, dado que tcp-flags no es compatible con el registro de marcadores ACK o PSH, los registros de tráfico con estos marcadores no compatibles darán como resultado un valor 0 de tcp-flags. Sin embargo, si un marcador no compatible va acompañado de un marcador compatible, indicaremos el valor del marcador compatible. Por ejemplo, si ACK forma parte de SYN-ACK, indicará 18. Y si hay un registro como SYN+ECE, dado que SYN es un marcador compatible y ECE no, el valor del marcador TCP es 2. Si por alguna razón la combinación de marcadores no es válida y el valor no se puede calcular, el valor es '-'. Si no se envían marcadores, el valor del marcador TCP es 0.

Se puede aplicar OR a las marcas TCP durante el intervalo de agregación. Para conexiones breves, los marcadores se pueden establecer en la misma línea en el registro de flujo, por ejemplo 19 para SYN-ACK y FIN y 3 para SYN y FIN. Para ver un ejemplo, consulte Secuencia de marca TCP.

Para obtener información general sobre marcadores TCP (como el significado de marcadores como FIN, SYN y ACK), consulte TCP segment structure (Estructura de segmentos TCP) en Wikipedia.

Tipo de datos de Parquet: INT_32

3

type

El tipo de tráfico. Los valores posibles son IPv4 | IPv6 | EFA. Para obtener más información, consulte Elastic Fabric Adapter.

Tipo de datos de Parquet: STRING

3

pkt-srcaddr

La dirección IP de origen (original) del nivel de paquete del tráfico. Utilice este campo con el campo srcaddr para distinguir entre la dirección IP de una capa intermedia a través de la que fluye el tráfico y la dirección IP de origen original del tráfico. Por ejemplo, cuando el tráfico fluye a través de una interfaz de red para una puerta de enlace NAT o si la dirección IP de un pod de Amazon EKS es distinta de la dirección IP de la interfaz de red del nodo de instancia en el que se ejecuta el pod (para permitir la comunicación dentro de una VPC).

Tipo de datos de Parquet: STRING

3

pkt-dstaddr

La dirección IP de destino (original) del nivel de paquete para el tráfico. Utilice este campo con el campo dstaddr para distinguir entre la dirección IP de una capa intermedia a través de la que fluye el tráfico y la dirección IP de destino final del tráfico. Por ejemplo, cuando el tráfico fluye a través de una interfaz de red para una puerta de enlace NAT o si la dirección IP de un pod de Amazon EKS es distinta de la dirección IP de la interfaz de red del nodo de instancia en el que se ejecuta el pod (para permitir la comunicación dentro de una VPC).

Tipo de datos de Parquet: STRING

3

region

La región que contiene la interfaz de red para la que se registra el tráfico.

Tipo de datos de Parquet: STRING

4

az-id

El ID de la zona de disponibilidad que contiene la interfaz de red para la que se registra el tráfico. Si el tráfico procede de una ubicación secundaria, el registro muestra un símbolo '-' en este campo.

Tipo de datos de Parquet: STRING

4

sublocation-type

El tipo de ubicación secundaria que se devuelve en el sublocation-id campo. Los valores posibles son: longitud de onda | outpost | zona local . Si el tráfico no procede de una ubicación secundaria, el registro muestra un símbolo '-' en este campo.

Tipo de datos de Parquet: STRING

4

sublocation-id

El ID de la ubicación secundaria que contiene la interfaz de red para la que se registra el tráfico. Si el tráfico no procede de una ubicación secundaria, el registro muestra un símbolo '-' en este campo.

Tipo de datos de Parquet: STRING

4

pkt-src-aws-service

El nombre del subconjunto de intervalos de direcciones IP para el campo pkt-srcaddr, si la dirección IP de origen está destinada a un servicio de AWS. Si el pkt-srcaddr pertenece a un rango superpuesto, pkt-src-aws-service solo mostrará uno de los códigos de servicio de AWS. Los valores posibles son: AMAZON | AMAZON_APPFLOW | AMAZON_CONNECT | API_GATEWAY | CHIME_MEETINGS | CHIME_VOICECONNECTOR | CLOUD9 | CLOUDFRONT | CODEBUILD | DYNAMODB | EBS | EC2 | EC2_INSTANCE_CONNECT | GLOBALACCELERATOR | KINESIS_VIDEO_STREAMS | ROUTE53 | ROUTE53_HEALTHCHECKS | ROUTE53_HEALTHCHECKS_PUBLISHING | ROUTE53_RESOLVER | S3 | WORKSPACES_GATEWAYS.

Tipo de datos de Parquet: STRING

5

pkt-dst-aws-service

El nombre del subconjunto de intervalos de direcciones IP para el campo pkt-dstaddr, si la dirección IP de destino está destinada a un servicio de AWS. Para obtener una lista de posibles valores, consulte el campo pkt-src-aws-service.

Tipo de datos de Parquet: STRING

5

flow-direction

La dirección del flujo con respecto a la interfaz donde se captura el tráfico. Los valores posibles son: ingress | egress.

Tipo de datos de Parquet: STRING

5

traffic-path

La ruta que el tráfico de salida toma al destino. Para determinar si el tráfico es de salida, marque el flow-direction campo. Los valores posibles son los siguientes: Si no se aplica ninguno de los valores, el campo se establece en -.

  • 1: a través de otro recurso en la misma VPC, incluidos los recursos que crean una interfaz de red en la VPC

  • 2: a través de una puerta de enlace de Internet o un punto de enlace de la VPC de puerta de enlace

  • 3: a través de una puerta de enlace privada virtual

  • 4: a través de una interconexión de VPC dentro de la región

  • 5: a través de una interconexión de VPC entre regiones

  • 6: a través de una puerta de enlace local

  • 7 — A través de un punto de enlace de la VPC de puerta de enlace (solo instancias basadas en Nitro)

  • 8 — A través de una puerta de enlace de Internet (solo instancias basadas en Nitro)

Tipo de datos de Parquet: INT_32

5

ecs-cluster-arn

Nombre de recurso (ARN) de AWS del clúster de ECS si el tráfico proviene de una tarea de ECS en ejecución. Para incluir este campo en su suscripción, necesita permiso para llamar a ecs:ListClusters.

Tipo de datos de Parquet: STRING

7

ecs-cluster-name

Nombre del clúster de ECS si el tráfico proviene de una tarea de ECS en ejecución. Para incluir este campo en su suscripción, necesita permiso para llamar a ecs:ListClusters.

Tipo de datos de Parquet: STRING

7

ecs-container-instance-arn

ARN de la instancia de contenedor de ECS si el tráfico proviene de una tarea de ECS en ejecución en una instancia de EC2. Si el proveedor de capacidad lo es AWS Fargate, este campo será '-'. Para incluir este campo en su suscripción, necesita permiso para llamar a ecs:ListClusters y ecs:ListContainerInstances.

Tipo de datos de Parquet: STRING

7

ecs-container-instance-id

ID de la instancia de contenedor de ECS si el tráfico proviene de una tarea de ECS en ejecución en una instancia de EC2. Si el proveedor de capacidad lo es AWS Fargate, este campo será '-'. Para incluir este campo en su suscripción, necesita permiso para llamar a ecs:ListClusters y ecs:ListContainerInstances.

Tipo de datos de Parquet: STRING

7

ecs-container-id

ID de tiempo de ejecución de Docker del contenedor si el tráfico proviene de una tarea de ECS en ejecución. Si hay uno o más contenedores en la tarea de ECS, este será el ID de tiempo de ejecución de Docker del primer contenedor. Para incluir este campo en su suscripción, necesita permiso para llamar a ecs:ListClusters.

Tipo de datos de Parquet: STRING

7

ecs-second-container-id

ID de tiempo de ejecución de Docker del contenedor si el tráfico proviene de una tarea de ECS en ejecución. Si hay más de un contenedor en la tarea de ECS, este será el ID de tiempo de ejecución de Docker del segundo contenedor. Para incluir este campo en su suscripción, necesita permiso para llamar a ecs:ListClusters.

Tipo de datos de Parquet: STRING

7

ecs-service-name

Nombre del servicio de ECS si el tráfico proviene de una tarea de ECS en ejecución y esta tarea la inicia un servicio de ECS. Si la tarea de ECS no la inicia un servicio de ECS, este campo será '-'. Para incluir este campo en su suscripción, necesita permiso para llamar a ecs:ListClusters y ecs:ListServices.

Tipo de datos de Parquet: STRING

7

ecs-task-definition-arn

ARN de la definición de la tarea de ECS si el tráfico proviene de una tarea de ECS en ejecución. Para incluir este campo en su suscripción, necesita permiso para llamar a ecs:ListClusters y ecs:ListTaskDefinitions.

Tipo de datos de Parquet: STRING

7

ecs-task-arn

ARN de la tarea de ECS si el tráfico proviene de una tarea de ECS en ejecución. Para incluir este campo en su suscripción, necesita permiso para llamar a ecs:ListClusters y ecs:ListTasks.

Tipo de datos de Parquet: STRING

7

ecs-task-id

ID de la tarea de ECS si el tráfico proviene de una tarea de ECS en ejecución. Para incluir este campo en su suscripción, necesita permiso para llamar a ecs:ListClusters y ecs:ListTasks.

Tipo de datos de Parquet: STRING

7