Usar la replicación de paquetes

Puedes usar Replicación de paquetes para replicar el tráfico que entra y sale de determinadas instancias de máquina virtual (VM). El tráfico recogido puede ayudarte a detectar amenazas de seguridad y a monitorizar el rendimiento de las aplicaciones. Para obtener más información sobre la replicación de paquetes, consulta el artículo Replicación de paquetes.

El tráfico reflejado se envía a las VMs en las que hayas instalado el software adecuado. Para ver una lista de los proveedores que suministran software, consulta Proveedores de partners de replicación de paquetes.

En las siguientes secciones se describe cómo crear y gestionar políticas de duplicación de paquetes.

Limitaciones

  • El mirror de paquetes no puede reflejar paquetes del tráfico de servicios publicados de Private Service Connect.

  • Por motivos de seguridad, la creación de réplicas de paquetes no crea réplicas de los paquetes que se envían al intervalo de direcciones IP locales de enlace 169.254.0.0/16. Este intervalo incluye solicitudes de metadatos de una VM a su servidor de metadatos.

  • No se admite el uso de un servicio LoadBalancer de Google Kubernetes Engine (GKE) como colector de duplicación de paquetes.

  • Si una política de replicación de paquetes se puede aplicar a instancias de recopilador, la replicación de paquetes las ignora y no replica su tráfico.

  • Cuando se replican paquetes, Google Cloud procesa tanto los paquetes originales como los replicados, lo que ralentiza la velocidad de procesamiento de los paquetes. La velocidad de procesamiento de paquetes del tráfico combinado es similar a las tarifas de salida fuera de una red de VPC y depende de factores como los siguientes:

    • El tipo de máquina y la utilización de la CPU de la VM reflejada.
    • Tamaño de los paquetes del tráfico replicado.
  • Cuando los paquetes de red coinciden con alguna política de replicación, la replicación de paquetes procesa los paquetes originales y los replicados a un ritmo más lento. La velocidad combinada de procesamiento de paquetes depende del tipo de máquina, el tamaño de los paquetes y la utilización de la CPU, y es aproximadamente similar a las velocidades de salida fuera de una red VPC.

Antes de empezar

Antes de crear una política de replicación de paquetes, debes tener los permisos adecuados. También debe crear un balanceador de carga de red de paso a través interno que actúe como destino de recogida. Este balanceador de carga de red interno de tipo pasarela requiere un grupo de instancias para que su servicio de backend pueda usar las VMs como destinos de recopilador.

Permisos

Para crear y gestionar políticas de replicación de paquetes, Google Cloud proporciona dos roles relacionados con la replicación de paquetes:

  • compute.packetMirroringUser concede a los usuarios permiso para crear, actualizar y eliminar políticas de duplicación de paquetes. Para usar la replicación de paquetes, los usuarios deben tener este rol en los proyectos en los que creen políticas de replicación de paquetes.

  • compute.packetMirroringAdmin concede a los usuarios permiso para replicar recursos concretos. Aunque los usuarios tengan permiso para crear una política de replicación de paquetes, también necesitan permiso para replicar las fuentes relacionadas. Usa este rol en proyectos en los que el propietario de una política no tenga ningún otro permiso, como en los casos de VPC compartida.

Para obtener más información sobre cómo usar los roles de gestión de identidades y accesos, consulta el artículo Administra el acceso a proyectos, carpetas y organizaciones de la documentación de gestión de identidades y accesos.

Crear instancias de recopilador

La replicación de paquetes requiere un grupo de instancias de recopiladores. Para obtener más información sobre los grupos de instancias, consulta los siguientes artículos: Crear una plantilla de instancia y Crear un MIG en una sola zona.

Crear un balanceador de carga interno para la replicación de paquetes

Para habilitar la replicación de paquetes, debes tener un balanceador de carga de red de paso a través interno que pueda actuar como colector de replicación de paquetes. El balanceador de carga de red de paso a través interno debe cumplir los siguientes requisitos:

  • La regla de reenvío del balanceador de carga de red de paso a través interno debe tener habilitada la replicación de paquetes cuando se cree la regla. Este estado no se puede cambiar después de crear la regla. Puedes usar esta regla de reenvío para recoger tráfico IPv4 e IPv6.
  • El balanceador de carga de red de paso a través interno está en la misma región que las instancias que estás replicando.
  • El servicio de backend del balanceador de carga de red de paso a través interno debe usar una afinidad de sesión de NONE (hash de 5 tuplas).
  • El servicio de backend del balanceador de carga de red de paso a través interno debe tener inhabilitada la opción Subconjunto de backend.

Si tus instancias de recolección no están configuradas para responder a la comprobación del estado que has configurado con tu servicio de backend, la comprobación del estado puede fallar. En este caso, los paquetes se pueden seguir duplicando.

Para obtener más información sobre cómo crear un balanceador de carga de red de paso a través interno para la replicación de paquetes, consulta el artículo Crear un balanceador de carga para la replicación de paquetes.

Configurar reglas de cortafuegos

Para preparar tu red de VPC para el tráfico de replicación de paquetes, haz lo siguiente:

  • Asegúrate de que las instancias de recopilador del grupo de instancias del balanceador de carga puedan recibir tráfico de las instancias replicadas o de los intervalos de direcciones IPv4 e IPv6 de las instancias replicadas. Por ejemplo, para permitir que las instancias del recopilador reciban tráfico IPv4 de cualquier VM, crea una regla de cortafuegos con un intervalo de direcciones IPv4 de origen de 0.0.0.0/0. Para permitir que las instancias del recopilador reciban tráfico IPv6 de cualquier VM, crea una regla de cortafuegos con un intervalo de direcciones IPv6 de origen ::/0. Para evitar que el tráfico de Internet llegue a las instancias del recolector, asígneles solo direcciones IPv4 e IPv6 internas.

  • Asegúrate de que las instancias del recopilador puedan recibir tráfico de los sistemas de comprobación del estado. Google Cloud Por ejemplo, para el tráfico IPv4, crea una regla de cortafuegos que permita el tráfico a las instancias del recopilador desde los intervalos de direcciones IPv4 de 130.211.0.0/22 y 35.191.0.0/16. Para el tráfico IPv6, crea una regla de cortafuegos que permita el tráfico a las instancias del recolector desde el intervalo de direcciones IPv6 de 2600:2d00:1:b029::/64.

  • Si quieres probar Packet Mirroring enviando manualmente tráfico de salida desde una o varias instancias reflejadas, crea una regla de firewall que permita el tráfico SSH a esas instancias. Por ejemplo, para permitir conexiones SSH a tus instancias replicadas desde todas las direcciones IPv4 e IPv6, permite el tráfico de entrada TCP al puerto 22 desde cualquier dirección IPv4 e IPv6 de origen. Si solo quieres permitir las conexiones SSH que se inicien desde un determinado intervalo de direcciones IPv4 o IPv6, especifica ese intervalo de direcciones IPv4 o IPv6 como intervalo de origen de la regla de cortafuegos. Para obtener más información sobre cómo probar tu balanceador de carga de red de paso a través interno, consulta Probar el balanceo de carga.

Si no tienes reglas que permitan este tráfico, consulta Usar reglas de cortafuegos de VPC para crearlas. Para obtener más información sobre cómo crear reglas de cortafuegos para un balanceador de carga de red interno de tipo pasarela, consulta el artículo Configurar reglas de cortafuegos de la documentación de Cloud Load Balancing.

Crear una política de replicación de paquetes

Para empezar a replicar el tráfico hacia y desde instancias concretas, crea una política de replicación de paquetes. Google Cloud replicará cualquier instancia que coincida con al menos una de las fuentes especificadas.

Consola

  1. En la Google Cloud consola, ve a la página Packet Mirroring (Duplicación de paquetes).

    Ir a Replicación de paquetes

  2. Haz clic en Crear política.

  3. Introduce la siguiente información sobre la política y haz clic en Continuar.

    1. Escribe un nombre para la política.
    2. Selecciona la región que incluya las fuentes replicadas y el destino del recolector. La política de replicación de paquetes debe estar en la misma región que el origen y el destino.
    3. Ignora el campo Prioridad. No se puede cambiar en estos momentos.
    4. Selecciona Habilitado para activar la política cuando la crees.
  4. Selecciona las redes de VPC en las que se encuentran el origen replicado y el destino del recopilador y, a continuación, haz clic en Continuar.

    El origen y el destino pueden estar en la misma red de VPC o en redes de VPC diferentes.

    • Si están en la misma red VPC, selecciona Los orígenes replicados y el destino están en la misma red VPC y, a continuación, selecciona la red.
    • Si están en redes distintas, selecciona El origen replicado y el destino del recopilador están en redes de VPC emparejadas e independientes y, a continuación, selecciona la red de origen replicada y la red de destino del recopilador.
  5. Seleccione las fuentes reflejadas y haga clic en Continuar. Puedes seleccionar una o varias fuentes. Google Cloud replicará cualquier instancia que coincida con al menos una de las fuentes seleccionadas.

    • Subredes: selecciona una o varias subredes. Google Cloud replica las instancias actuales y futuras de las subredes seleccionadas.
    • Etiqueta de red: especifica una o varias etiquetas de red. Google Cloud se replican las instancias que tengan al menos una de las etiquetas especificadas.
    • Nombre de la instancia: selecciona las instancias concretas que quieras replicar.
  6. Selecciona un balanceador de carga de red de paso a través interno que se haya configurado para la replicación de paquetes y, a continuación, haz clic en Continuar. Google Cloud envía el tráfico replicado a las instancias que están detrás del balanceador de carga de red de paso a través interno.

    En el caso de la VPC compartida, si el destino del recopilador y los orígenes replicados están en la misma red de VPC compartida, debes seleccionar el proyecto en el que se encuentra el destino del recopilador y, a continuación, seleccionar un balanceador de carga.

  7. Para seleccionar el tráfico que quieres duplicar, sigue estos pasos:

    • Para replicar todo el tráfico IPv4, selecciona Replicar todo el tráfico IPv4 (opción predeterminada).
    • Para replicar todo el tráfico IPv4 e IPv6, selecciona Replicar tráfico filtrado y, a continuación, haz lo siguiente:
      • Selecciona Permitir todos los protocolos.
      • Selecciona Permitir todos los intervalos de IPv4 (0.0.0.0/0).
      • Selecciona Permitir todos los intervalos de IPv6 (::/0).
      • Selecciona Permitir tráfico de entrada y salida.
    • Para limitar el tráfico replicado, selecciona Replicar tráfico filtrado y haz lo siguiente:

      • Para limitar el tráfico replicado por protocolo, selecciona Permitir protocolos específicos y, a continuación, selecciona los protocolos. Si no ves el protocolo del que quieres replicar el tráfico, selecciona Otros protocolos y, a continuación, introduce el protocolo en el campo Otros protocolos. Los valores válidos son tcp, udp, esp, ah, ipip, sctp o un número de protocolo de IANA. Para especificar ICMP para IPv6, introduce 58.

      • Para los filtros de intervalo de IPv4, siga estos pasos:

        • Para replicar todo el tráfico IPv4, selecciona Permitir todos los intervalos IPv4 (0.0.0.0/0).
        • Para replicar el tráfico de intervalos de direcciones IPv4 específicos, selecciona Permitir intervalos de IPv4 específicos. En el campo Intervalos IPv4, escribe un intervalo de direcciones IPv4 y, a continuación, pulsa Intro. Para añadir varios intervalos de IPv4, pulsa Intro después de cada intervalo que escribas.
      • Para los filtros de intervalos de IPv6, siga estos pasos:

        • Para excluir todo el tráfico IPv6, selecciona Ninguno.
        • Para reflejar todo el tráfico IPv6, selecciona Permitir todos los intervalos de IPv6 (::/0).
        • Para replicar el tráfico de intervalos de direcciones IPv6 específicos, selecciona Permitir intervalos de IPv6 específicos. En el campo Intervalos de IPv6, escribe un intervalo de direcciones IPv6 y, a continuación, pulsa Intro. Puedes añadir varios intervalos de IPv6 pulsando Intro después de cada intervalo que escribas.
  8. Selecciona el sentido del tráfico que quieras replicar.

  9. Para crear la política de replicación de paquetes, haz clic en Enviar.

gcloud

Para crear una política de replicación de paquetes, usa el comando packet-mirrorings create.

gcloud compute packet-mirrorings create POLICY_NAME \
    --region=REGION \
    --network=NETWORK_NAME \
    --collector-ilb=FORWARDING_RULE_NAME \
    [--mirrored-subnets=SUBNET,[SUBNET,...]] \
    [--mirrored-tags=TAG,[TAG,...]] \
    [--mirrored-instances=INSTANCE,[INSTANCE,...]] \
    [--filter-cidr-ranges=CIDR_RANGE,[CIDR_RANGE,...]] \
    [--filter-protocols=PROTOCOL,[PROTOCOL,...]] \
    [--filter-direction=DIRECTION]

Haz los cambios siguientes:

  • POLICY_NAME: el nombre de la política de replicación de paquetes.
  • REGION: la región en la que se encuentran las fuentes reflejadas y el destino del recolector.
  • NETWORK_NAME: la red en la que se encuentran las fuentes duplicadas.
  • FORWARDING_RULE_NAME: el nombre de la regla de reenvío configurada como recopilador de réplicas. Google Cloud envía todo el tráfico replicado al balanceador de carga de red de paso a través interno asociado.
  • SUBNET: el nombre de una o varias subredes que se van a replicar. Puedes proporcionar varias subredes mediante una lista separada por comas. Google Cloud refleja las instancias actuales y futuras de la subred.
  • TAG: una o varias etiquetas de red. Google Cloud Replica las instancias que tienen la etiqueta de red. Puede proporcionar varias etiquetas mediante una lista separada por comas.
  • INSTANCE: el ID completo de una o varias instancias que se van a replicar. Puedes proporcionar varias instancias mediante una lista separada por comas.
  • CIDR_RANGE: uno o varios intervalos CIDR de IPv4 o IPv6 que se van a replicar. Si no se especifica ningún intervalo CIDR, se reflejará todo el tráfico IPv4 que coincida con los protocolos especificados. Si no se especifican ni intervalos CIDR ni protocolos, se replicará todo el tráfico IPv4. Para replicar todo el tráfico IPv4 e IPv6, usa 0.0.0.0/0,::/0. Puede incluir intervalos CIDR IPv4 e IPv6. Puede proporcionar varios intervalos mediante una lista separada por comas.
  • PROTOCOL: uno o varios protocolos para crear un reflejo. Los valores válidos son tcp, udp, icmp, esp, ah, ipip, sctp o un número de protocolo de IANA. Si no se especifica ningún protocolo, se replicará todo el tráfico que coincida con los intervalos CIDR especificados. Si no se especifican protocolos ni intervalos CIDR, se replicará todo el tráfico IPv4. Para especificar ICMP para IPv6, usa 58. Puede proporcionar varios protocolos mediante una lista separada por comas.
  • DIRECTION: la dirección del tráfico que se va a reflejar en relación con la VM. De forma predeterminada, se define en both, lo que significa que se replica tanto el tráfico de entrada como el de salida. Puedes restringir los paquetes que se capturan especificando ingress para capturar solo los paquetes de entrada o egress para capturar solo los paquetes de salida.

Terraform

Puedes usar un recurso de Terraform para crear una política de replicación de paquetes.

resource "google_compute_packet_mirroring" "default" {
  region      = "europe-west1"
  name        = "my-mirroring"
  description = "My packet mirror"
  network {
    url = google_compute_network.ilb_network.id
  }
  collector_ilb {
    url = google_compute_forwarding_rule.default.id
  }
  mirrored_resources {
    tags = ["foo"]
    instances {
      url = google_compute_instance.vm_test.id
    }
  }
  filter {
    ip_protocols = ["tcp"]
    cidr_ranges  = ["0.0.0.0/0"]
    direction    = "BOTH"
  }
}

Para saber cómo aplicar o quitar una configuración de Terraform, consulta Comandos básicos de Terraform.

API

Para crear una política de replicación de paquetes, haz una solicitud POST al método packetMirrorings.insert.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/packetMirrorings
{
  "name": "POLICY_NAME",
  "enable": "ENABLED",
  "network": {
    "url": "NETWORK_URL"
  },
  "priority": PRIORITY,
  "mirroredResources": {
    "subnetworks": [
      {
        "url": "SUBNET_URL"
      }
    ],
    "tags": [
      "TAG"
    ],
    "instances": [
      {
        "url": "INSTANCE"
      }
    ]
  },
  "collectorIlb": {
    "url": "FORWARDING_RULE_URL"
  },
  "filter": {
    "IPProtocols": [
      "PROTOCOL"
    ],
    "cidrRanges": [
      "CIDR_RANGE"
    ],
    "direction": "DIRECTION"
  }
}

Haz los cambios siguientes:

  • PROJECT_ID: el ID del proyecto en el que se va a crear la política.
  • REGION: la región en la que se encuentran los orígenes replicados y el destino del recopilador.
  • POLICY_NAME: el nombre de la política de replicación de paquetes.
  • ENABLED: indica si esta política se aplica o no. Las opciones son TRUE y FALSE. TRUE es el valor predeterminado.
  • NETWORK_URL: la URL de la red en la que se encuentran las fuentes duplicadas.
  • PRIORITY: la prioridad de la regla de reenvío, que se usa para desempatar cuando hay más de una regla coincidente. El intervalo válido es de 0 a 65.535 y el valor predeterminado es 1000.
  • SUBNET_URL: la URL de una subred que se va a replicar. Google Cloud Replica las instancias actuales y futuras de la subred. Puedes proporcionar varias subredes mediante una lista separada por comas.
  • TAG: una etiqueta de red. Google Cloud refleja las instancias que tienen la etiqueta de red. Puede proporcionar varias etiquetas mediante una lista separada por comas.
  • INSTANCE: el ID completo de una instancia que se va a replicar. Puede proporcionar varias instancias mediante una lista separada por comas.
  • FORWARDING_RULE_URL: la URL de una regla de reenvío que se ha configurado como un recopilador de mirroring. Google Cloud Envía todo el tráfico reflejado al balanceador de carga de red de paso a través interno asociado.
  • PROTOCOL: uno o varios protocolos. Las opciones son tcp, udp, icmp, esp, ah, ipip, sctp o un número de protocolo de IANA. Si no se especifica ningún protocolo, se replicará todo el tráfico que coincida con los intervalos CIDR especificados. Si no se especifican ni intervalos CIDR ni protocolos, se replicará todo el tráfico IPv4. Para especificar ICMP para IPv6, introduce 58. Puede proporcionar varios protocolos mediante el siguiente formulario: "icmp", "udp".
  • CIDR_RANGE: uno o varios intervalos CIDR de IPv4 o IPv6 que se van a replicar. Si no se especifica ningún intervalo CIDR, se reflejará todo el tráfico IPv4 que coincida con los protocolos especificados. Si no se especifican ni intervalos CIDR ni protocolos, se replicará todo el tráfico IPv4. Para replicar todo el tráfico IPv4 e IPv6, usa "0.0.0.0/0", "::/0". Puede incluir intervalos CIDR IPv4 e IPv6. Puede proporcionar varios intervalos CIDR con el siguiente formato: "192.0.2.0/24", "2001:0DB8::/32".
  • PROTOCOL: uno o varios protocolos para crear un reflejo.
  • DIRECTION: la dirección del tráfico que se va a replicar. Las opciones son INGRESS, EGRESS o BOTH. El valor predeterminado es BOTH.

Verificar la replicación de paquetes

Para verificar que las instancias del recolector reciben correctamente el tráfico duplicado, puede usar tcpdump.

  1. Conéctate a una instancia de collector.

  2. Si el comando tcpdump no está disponible, instálalo.

  3. Identifica tu interfaz de red:

    ip address
    

    En la lista de interfaces de red, busca el nombre asociado a la dirección IPv4 interna principal de tu instancia de collector. Por ejemplo, ens4.

  4. Empieza a analizar paquetes:

    sudo tcpdump -i INTERFACE_NAME -f "host IP_ADDRESS"
    

    Haz los cambios siguientes:

    • INTERFACE_NAME: el nombre de la interfaz que has identificado en el paso 3.
    • IP_ADDRESS: la dirección IPv4 de una VM de origen replicado.
  5. Para ejecutar la prueba, envía tráfico desde la VM de origen duplicada. Por ejemplo, envía un ping ICMP. En el resultado de tcpdump, comprueba que puedes ver el tráfico esperado.

Modificar una política de replicación de paquetes

Puede actualizar una política para cambiar detalles como las fuentes reflejadas o los destinos de los colectores.

Consola

  1. En la Google Cloud consola, ve a la página Packet Mirroring (Duplicación de paquetes).

    Ir a Replicación de paquetes

  2. En la lista de políticas de duplicación de paquetes, haga clic en la que quiera editar.

  3. En la página de detalles de la política, haz clic en Editar.

  4. Edita los campos que quieras actualizar. La consola sigue el mismo flujo que los pasos que se indican para crear una política. Para obtener información sobre cada campo, consulta Crear una política de réplica de paquetes.

gcloud

Para actualizar una política de replicación de paquetes, usa el comando packet-mirrorings update.

gcloud compute packet-mirrorings update POLICY_NAME [--async] \
  [--collector-ilb=FORWARDING_RULE_NAME] [--description=DESCRIPTION] [--enable] \
  [--filter-direction=DIRECTION] [--region=REGION] \
  [--add-filter-cidr-ranges=[CIDR_RANGE,...] | --clear-filter-cidr-ranges \
    | --remove-filter-cidr-ranges=[CIDR_RANGE,...] \
    | --set-filter-cidr-ranges=[CIDR_RANGE,...]] \
  [--add-filter-protocols=[PROTOCOL,...] | --clear-filter-protocols \
    | --remove-filter-protocols=[PROTOCOL,...] \
    | --set-filter-protocols=[PROTOCOL,...]] \
  [--add-mirrored-instances=[INSTANCE,...] | --clear-mirrored-instances \
    | --remove-mirrored-instances=[INSTANCE,...] \
    | --set-mirrored-instances=[INSTANCE,...]] \
  [--add-mirrored-subnets=[SUBNET,...] | --clear-mirrored-subnets \
    | --remove-mirrored-subnets=[SUBNET,...] \
    | --set-mirrored-subnets=[SUBNET,...]] \
  [--add-mirrored-tags=[TAG,...] | --clear-mirrored-tags \
    | --remove-mirrored-tags=[TAG,...] | --set-mirrored-tags=[TAG,...]]

Haz los cambios siguientes:

  • POLICY_NAME: el nombre de la política de replicación de paquetes que se va a modificar.
  • FORWARDING_RULE_NAME: el nombre de la regla de reenvío configurada como recopilador. Google Cloud envía todo el tráfico reflejado al balanceador de carga de red de paso a través interno asociado.
  • DESCRIPTION: descripción de la política de replicación de paquetes.
  • DIRECTION: la dirección del tráfico a la que se aplica la política de replicación de paquetes. Las opciones son egress, ingress o both.
  • REGION: la región en la que se encuentra la política.
  • CIDR_RANGE: uno o varios intervalos CIDR IPv4 o IPv6 que se van a replicar. Si no se especifica ningún intervalo CIDR, se reflejará todo el tráfico IPv4 que coincida con los protocolos especificados. Si no se especifican ni intervalos CIDR ni protocolos, se replicará todo el tráfico IPv4. Para replicar todo el tráfico IPv4 e IPv6, usa 0.0.0.0/0,::/0. Puede incluir intervalos CIDR IPv4 e IPv6. Puede proporcionar varios intervalos mediante una lista separada por comas.
  • PROTOCOL: uno o varios protocolos para crear un reflejo. Los valores válidos son tcp, udp, icmp, esp, ah, ipip, sctp o un número de protocolo de IANA. Si no se especifica ningún protocolo, se replicará el tráfico que coincida con los intervalos CIDR especificados. Si no se especifican protocolos ni intervalos CIDR, se replicará todo el tráfico IPv4. Para especificar ICMP para IPv6, usa 58. Puede proporcionar varios protocolos mediante una lista separada por comas.
  • INSTANCE: el ID completo de una o varias instancias de VM que se van a replicar. Puedes proporcionar varias instancias mediante una lista separada por comas.
  • SUBNET: una o varias subredes. Puedes proporcionar varias subredes mediante una lista separada por comas. Google Cloud refleja las instancias actuales y futuras de la subred.
  • TAG: una o varias etiquetas de red. Puedes proporcionar varias etiquetas mediante una lista separada por comas.

API

Para actualizar una política de replicación de paquetes, envía una solicitud POST al método packetMirrorings.patch.

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/packetMirrorings/POLICY_NAME
{
  "name": "POLICY_NAME",
  "description": "DESCRIPTION",
  "priority": "PRIORITY",
  "collectorIlb": {
    "url": "FORWARDING_RULE_URL"
  },
  "mirroredResources": {
    "subnetworks": [
      {
        "url": "SUBNET_URL"
      }
    ],
    "instances": [
      {
        "url": "INSTANCE_URL"
      }
    ],
    "tags": [
      "NETWORK_TAGS"
    ]
  },
  "filter": {
    "cidrRanges": [
      "CIDR_RANGE"
    ],
    "IPProtocols": [
      "PROTOCOL"
    ],
    "direction": "DIRECTION"
  },
  "enable": "ENABLED"
}

Haz los cambios siguientes:

  • PROJECT_ID: el ID del proyecto en el que se encuentra la política.
  • REGION: la región de la política de duplicación de paquetes.
  • POLICY_NAME: el nombre de la política de duplicación de paquetes que se va a modificar.
  • DESCRIPTION: una descripción opcional de la política.
  • PRIORITY: la prioridad de la política, que se usa para desempatar cuando hay varias políticas que coinciden. El valor predeterminado es 1000. El intervalo válido es de 0 a 65.535.
  • FORWARDING_RULE_URL: la URL de una regla de reenvío con la replicación de paquetes habilitada. Google Cloud Envía todo el tráfico replicado al balanceador de carga de red de paso a través interno asociado.
  • SUBNET_URL: la URL de una subred. Google Cloud refleja las instancias actuales y futuras de la subred. Puede proporcionar varias subredes mediante una lista separada por comas.
  • INSTANCE_URL: URL de una instancia de VM que se va a replicar. Puedes proporcionar varias instancias mediante una lista separada por comas.
  • NETWORK_TAGS: una etiqueta de red. Google Cloud refleja las instancias que tienen una o varias etiquetas de red. Puede proporcionar varias etiquetas mediante una lista separada por comas.
  • CIDR_RANGE: uno o varios intervalos CIDR IPv4 o IPv6 que se van a replicar. Si no se especifica ningún intervalo CIDR, se reflejará todo el tráfico IPv4 que coincida con los protocolos especificados. Si no se especifican ni intervalos CIDR ni protocolos, se replicará todo el tráfico IPv4. Para replicar todo el tráfico IPv4 e IPv6, usa "0.0.0.0/0", "::/0". Puede incluir intervalos CIDR IPv4 e IPv6. Puede proporcionar varios intervalos CIDR con el siguiente formato: "192.0.2.0/24", "2001:DB8::/32".
  • IP_PROTOCOL: uno o varios protocolos. Las opciones son tcp, udp, icmp, esp, ah, ipip, sctp o un número de protocolo de IANA. Si no se especifica ningún protocolo, se replicará todo el tráfico que coincida con los intervalos CIDR especificados. Si no se especifican ni intervalos CIDR ni protocolos, se replicará todo el tráfico IPv4. Para especificar ICMP para IPv6, usa 58. Puedes proporcionar varios protocolos con el siguiente formato: "icmp", "udp".
  • DIRECTION: la dirección del tráfico que se va a replicar. Las opciones son INGRESS, EGRESS o BOTH. El valor predeterminado es BOTH.
  • ENABLED: indica si la política está habilitada o no. Las opciones son TRUE o FALSE.

Mostrar políticas de replicación de paquetes

Puedes enumerar las políticas de replicación de paquetes para ver las que ya tienes.

Consola

  • En la Google Cloud consola, ve a la página Packet Mirroring (Duplicación de paquetes).

    Ir a Replicación de paquetes

    En la consola Google Cloud se muestran todas las políticas de tu proyecto.

gcloud

Para enumerar las políticas de replicación de paquetes de tu proyecto o de una región concreta, usa el comando packet-mirrorings list.

gcloud compute packet-mirrorings list \
  [--filter="region:(REGION...)"]

Sustituye REGION por el nombre de la región que contiene las políticas que quieres consultar.

API

Para ver una lista de las políticas de replicación de paquetes de tu proyecto, haz una solicitud GET al método packetMirrorings.list.

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/aggregated/packetMirrorings

Sustituye PROJECT_ID por el ID de tu proyecto.

Para mostrar las políticas de replicación de paquetes de una región concreta, envía una solicitud GET al método packetMirrorings.list.

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/packetMirrorings

Haz los cambios siguientes:

  • PROJECT_ID: ID del proyecto que contiene las políticas que se van a enumerar.
  • REGION: la región que contiene las políticas que se van a enumerar.

Describe una política de replicación de paquetes

Puedes describir una política de replicación de paquetes para ver detalles como los filtros de la política.

Consola

  1. En la Google Cloud consola, ve a la página Packet Mirroring (Duplicación de paquetes).

    Ir a Replicación de paquetes

  2. En la lista de políticas de duplicación de paquetes, seleccione la política que quiera ver. La Google Cloud consola muestra los detalles de la política que ha seleccionado.

gcloud

Para describir una política de replicación de paquetes, usa el comando packet-mirrorings describe.

gcloud compute packet-mirrorings describe POLICY_NAME \
  --region=REGION \

Haz los cambios siguientes:

  • POLICY_NAME: nombre de la política de replicación de paquetes que se va a describir.
  • REGION: la región en la que se encuentra la política.

API

Para describir una política de replicación de paquetes, haz una solicitud GET al método packetMirrorings.get.

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/packetMirrorings/POLICY_NAME

Haz los cambios siguientes:

  • PROJECT_ID: el ID del proyecto en el que se encuentra la política.
  • REGION: la región en la que se encuentra la política.
  • POLICY_NAME: nombre de la política de replicación de paquetes que se va a describir.

Inhabilitar o habilitar una política de replicación de paquetes

Puedes inhabilitar o habilitar una política de duplicación de paquetes para detener o iniciar la recogida de tráfico duplicado.

Consola

  1. En la Google Cloud consola, ve a la página Packet Mirroring (Duplicación de paquetes).

    Ir a Replicación de paquetes

  2. En la lista de políticas de duplicación de paquetes, seleccione la que quiera inhabilitar o habilitar.

  3. Haz clic en Inhabilitar o en Habilitar.

  4. Haz clic en Inhabilitar o en Habilitar para confirmar la acción.

gcloud

Para inhabilitar una política de replicación de paquetes, usa el comando packet-mirrorings update.

gcloud compute packet-mirrorings update POLICY_NAME \
  --region=REGION \
  --no-enable

Haz los cambios siguientes:

  • POLICY_NAME: el nombre de la política de replicación de paquetes que se va a inhabilitar o habilitar.
  • REGION: la región en la que se encuentra la política.

Para habilitar una política de replicación de paquetes, usa el comando packet-mirrorings update.

gcloud compute packet-mirrorings update POLICY_NAME \
  --region=REGION \
  --enable

Haz los cambios siguientes:

  • POLICY_NAME: el nombre de la política de replicación de paquetes que se va a inhabilitar o habilitar.
  • REGION: la región en la que se encuentra la política.

API

Para inhabilitar o habilitar una política de replicación de paquetes, haz una solicitud PATCH al método packetMirrorings.patch.

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/packetMirrorings/POLICY_NAME
{
  "enable": "FALSE|TRUE"
}

Haz los cambios siguientes:

  • PROJECT_ID: el ID del proyecto en el que se encuentra la política.
  • REGION: la región en la que se encuentra la política.
  • POLICY_NAME: el nombre de la política de replicación de paquetes que se va a inhabilitar.

Eliminar una política de replicación de paquetes

Puedes eliminar una política de replicación de paquetes para quitarla de tu proyecto. Después de eliminar una política, Google Cloud deja de replicar todo el tráfico relacionado con ella.

Consola

  1. En la Google Cloud consola, ve a la página Packet Mirroring (Duplicación de paquetes).

    Ir a Replicación de paquetes

  2. En la lista de políticas de duplicación de paquetes, seleccione la que quiera eliminar.

  3. Haz clic en Eliminar.

  4. Haz clic en Eliminar para confirmar la operación.

gcloud

Para eliminar una política de replicación de paquetes, usa el comando packet-mirrorings delete.

gcloud compute packet-mirrorings delete POLICY_NAME \
  --region=REGION \

Haz los cambios siguientes:

  • POLICY_NAME: nombre de la política de replicación de paquetes que se va a eliminar.
  • REGION: la región en la que se encuentra la política.

API

Para eliminar una política de replicación de paquetes, haz una solicitud DELETE al método packetMirrorings.delete.

DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/packetMirrorings/POLICY_NAME

Haz los cambios siguientes:

  • PROJECT_ID: el ID del proyecto en el que se encuentra la política.
  • POLICY_NAME: nombre de la política de replicación de paquetes que se va a eliminar.
  • REGION: la región en la que se encuentra la política.

Solución de problemas

Si tu política de replicación de paquetes no recoge el tráfico replicado que quieres, comprueba las siguientes configuraciones:

  • Comprueba que tienes reglas de cortafuegos que permiten el tráfico de las instancias reflejadas a las instancias del recopilador.

  • Comprueba que tus fuentes reflejadas incluyan o excluyan las instancias que quieras reflejar. Por ejemplo, si especifica una subred como fuente replicada, se replicarán todas las instancias de la subred, tanto las actuales como las futuras. Si especifica etiquetas, solo se replicarán las instancias que tengan etiquetas coincidentes.

  • Comprueba que los filtros de duplicación de paquetes no sean demasiado amplios ni demasiado específicos. Es posible que haya configurado filtros sin querer para incluir o excluir determinado tráfico.

  • Si has configurado una política de creación de réplicas de paquetes para recoger tráfico IPv6, asegúrate de que las fuentes del tráfico replicado sean VMs con direcciones IPv6 que estén conectadas a subredes con intervalos de direcciones IPv6.