Use o espelhamento de pacotes

Pode usar o espelhamento de pacotes para espelhar o tráfego de e para instâncias de máquinas virtuais (VM) específicas. O tráfego recolhido pode ajudar a detetar ameaças de segurança e monitorizar o desempenho das aplicações. Para ver detalhes sobre a duplicação de pacotes, consulte o artigo Duplicação de pacotes.

O tráfego espelhado é enviado para VMs onde instalou o software adequado. Para ver uma lista de fornecedores que fornecem software, consulte os fornecedores parceiros de espelhamento de pacotes.

As secções seguintes descrevem como criar e gerir políticas de replicação de pacotes.

Limitações

Antes de começar

Antes de criar uma política de espelhamento de pacotes, tem de ter as autorizações adequadas. Também tem de criar um Network Load Balancer de encaminhamento interno para atuar como destino do coletor. Este Network Load Balancer de passagem interno requer um grupo de instâncias para que o respetivo serviço de back-end possa usar as VMs como destinos de recolha.

Autorizações

Para criar e gerir políticas de espelhamento de pacotes, Google Cloud oferece duas funções relacionadas com o espelhamento de pacotes:

  • compute.packetMirroringUser concede aos utilizadores autorização para criar, atualizar e eliminar políticas de replicação de pacotes. Para usar o espelhamento de pacotes, os utilizadores têm de ter esta função nos projetos onde criam políticas de espelhamento de pacotes.

  • compute.packetMirroringAdmin concede aos utilizadores autorização para espelhar recursos específicos. Mesmo que os utilizadores tenham autorização para criar uma política de espelhamento de pacotes, continuam a precisar de autorização para espelhar origens relacionadas. Use esta função em projetos em que o proprietário de uma política pode não ter outras autorizações, por exemplo, em cenários de VPC partilhada.

Para mais informações sobre a utilização de funções de IAM, consulte o artigo Gerir o acesso a projetos, pastas e organizações na documentação da IAM.

Crie instâncias do coletor

A replicação de pacotes requer um grupo de instâncias de instâncias de recolha. Para ver detalhes sobre grupos de instâncias, consulte a seguinte documentação: Crie um novo modelo de instância e Crie um MIG numa única zona.

Crie um balanceador de carga interno para o espelhamento de pacotes

Para ativar a replicação de pacotes, tem de ter um balanceador de carga de passagem interno que possa funcionar como um coletor de replicação de pacotes. O balanceador de carga de passagem interno tem de cumprir os seguintes requisitos:

  • A regra de encaminhamento do Network Load Balancer de passagem interno tem de ter o espelhamento de pacotes ativado quando a regra é criada. Não é possível alterar este estado após a criação da regra. Pode usar esta regra de encaminhamento para recolher tráfego IPv4 e IPv6.
  • O balanceador de carga de encaminhamento interno está na mesma região que as instâncias que está a replicar.
  • O serviço de back-end do balanceador de carga de rede de passagem interno tem de usar uma afinidade de sessão de NONE(hash de 5 tuplos).
  • O serviço de back-end do balanceador de carga de passagem interno tem de ter a divisão em subconjuntos do back-end desativada.

Se as suas instâncias de recolha não estiverem configuradas para responder à verificação de estado que configurou com o seu serviço de back-end, a verificação de estado pode falhar. Neste caso, os pacotes continuam a poder ser espelhados.

Para mais informações sobre como criar um balanceador de carga de rede de encaminhamento interno para a duplicação de pacotes, consulte o artigo Criar um balanceador de carga para a duplicação de pacotes.

Configure regras de firewall

Para preparar a sua rede VPC para o tráfego de espelhamento de pacotes, faça o seguinte:

  • Certifique-se de que as instâncias do coletor no grupo de instâncias do balanceador de carga podem receber tráfego de instâncias espelhadas ou dos intervalos de endereços IPv4 e IPv6 de instâncias espelhadas. Por exemplo, para permitir que as instâncias do coletor recebam tráfego IPv4 de qualquer VM, crie uma regra de firewall com um intervalo de endereços IPv4 de origem de 0.0.0.0/0. Para permitir que as instâncias do coletor recebam tráfego IPv6 de qualquer VM, crie uma regra de firewall com um intervalo de endereços IPv6 de origem de ::/0. Para impedir que o tráfego da Internet alcance as instâncias do coletor, atribua-lhes apenas endereços IPv4 e IPv6 internos.

  • Certifique-se de que as instâncias do coletor podem receber tráfego dos Google Cloud sistemas de verificação do estado de funcionamento. Por exemplo, para o tráfego IPv4, crie uma regra de firewall que permita o tráfego para as instâncias do coletor a partir dos intervalos de endereços IPv4 de 130.211.0.0/22 e 35.191.0.0/16. Para o tráfego IPv6, crie uma regra de firewall que permita o tráfego para as instâncias do coletor a partir do intervalo de endereços IPv6 de 2600:2d00:1:b029::/64.

  • Se quiser testar a replicação de pacotes enviando manualmente tráfego de saída de uma ou mais instâncias replicadas, crie uma regra de firewall que permita o tráfego SSH para essas instâncias. Por exemplo, para permitir ligações SSH às suas instâncias espelhadas a partir de todos os endereços IPv4 e IPv6, permita o tráfego de entrada TCP para a porta 22 a partir de qualquer endereço IPv4 e IPv6 de origem. Se quiser permitir apenas ligações SSH iniciadas a partir de um determinado intervalo de endereços IPv4 ou IPv6, especifique esse intervalo de endereços IPv4 ou IPv6 como um intervalo de origem para a regra de firewall. Para mais informações sobre como testar o balanceador de carga de rede de encaminhamento interno, consulte Testar o balanceamento de carga.

Se não tiver regras existentes que permitam este tráfego, consulte o artigo Use regras de firewall da VPC para as criar. Para mais informações sobre como criar regras de firewall para um balanceador de carga de rede de encaminhamento interno, consulte o artigo Configurar regras de firewall na documentação do Cloud Load Balancing.

Crie uma política de espelhamento de pacotes

Para começar a espelhar o tráfego de e para instâncias específicas, crie uma política de espelhamento de pacotes. Google Cloud espelha qualquer instância que corresponda a, pelo menos, uma das origens especificadas.

Consola

  1. Na Google Cloud consola, aceda à página Packet Mirroring.

    Aceda à funcionalidade Packet Mirroring

  2. Clique em Criar política.

  3. Introduza as seguintes informações acerca da política e, de seguida, clique em Continuar.

    1. Introduza um nome para a política.
    2. Selecione a região que inclui as origens espelhadas e o destino do coletor. A política de espelhamento de pacotes tem de estar na mesma região que a origem e o destino.
    3. Ignore o campo Prioridade. De momento, não é possível ajustá-lo.
    4. Selecione Ativado para ativar a política quando a criar.
  4. Selecione as redes VPC onde se encontram a origem espelhada e o destino do coletor e, de seguida, clique em Continuar.

    A origem e o destino podem estar na mesma ou em diferentes redes VPC.

    • Se estiverem na mesma rede de VPC, selecione As origens e o destino espelhados estão na mesma rede de VPC e, em seguida, selecione a rede.
    • Se estiverem em redes diferentes, selecione A origem espelhada e o destino do coletor estão em redes de VPC separadas e com peering e, em seguida, selecione a rede de origem espelhada e, depois, a rede de destino do coletor.
  5. Selecione as origens espelhadas e, de seguida, clique em Continuar. Pode selecionar uma ou mais fontes. Google Cloud reflete qualquer instância que corresponda a, pelo menos, uma das fontes selecionadas.

    • Sub-redes: selecione uma ou mais sub-redes. Google Cloud reflete as instâncias existentes e futuras nas sub-redes selecionadas.
    • Etiqueta de rede: especifique uma ou mais etiquetas de rede. Google Cloud reflete instâncias que têm, pelo menos, uma das etiquetas especificadas.
    • Nome da instância: selecione instâncias específicas para espelhar.
  6. Selecione um balanceador de carga de rede de encaminhamento interno que tenha sido configurado para a replicação de pacotes e, de seguida, clique em Continuar. Google Cloud envia tráfego replicado para instâncias que estão atrás do balanceador de carga de rede de encaminhamento interno.

    Para a VPC partilhada, se o destino do coletor e as origens duplicadas estiverem na mesma rede de VPC partilhada, tem de selecionar o projeto onde o destino do coletor está localizado e, em seguida, selecionar um equilibrador de carga.

  7. Para selecionar o tráfego a duplicar, faça o seguinte:

    • Para espelhar todo o tráfego IPv4, selecione Espelhar todo o tráfego IPv4 (predefinição).
    • Para duplicar todo o tráfego IPv4 e IPv6, selecione Duplicar tráfego filtrado e, de seguida, faça o seguinte:
      • Selecione Permitir todos os protocolos.
      • Selecione Permitir todos os intervalos IPv4 (0.0.0.0/0).
      • Selecione Permitir todos os intervalos de IPv6 (::/0).
      • Selecione Permitir tráfego de entrada e saída.
    • Para limitar o tráfego espelhado, selecione Espelhar tráfego filtrado e, de seguida, faça o seguinte:

      • Para limitar o tráfego espelhado por protocolo, selecione Permitir protocolos específicos e, em seguida, selecione os protocolos. Se não vir um protocolo para o qual quer espelhar o tráfego, selecione Outros protocolos e, de seguida, introduza o protocolo no campo Outros protocolos. Os valores válidos são tcp, udp, esp, ah, ipip, sctp ou um número de protocolo da IANA. Para especificar ICMP para IPv6, introduza 58.

      • Para filtros de intervalo IPv4, faça o seguinte:

        • Para duplicar todo o tráfego IPv4, selecione Permitir todos os intervalos IPv4 (0.0.0.0/0).
        • Para duplicar o tráfego de intervalos de endereços IPv4 específicos, selecione Permitir intervalos IPv4 específicos. No campo Intervalos IPv4, escreva um único intervalo de endereços IPv4 e, de seguida, prima Enter. Pode adicionar vários intervalos IPv4 premindo Enter após cada intervalo que introduzir.
      • Para filtros de intervalo IPv6, faça o seguinte:

        • Para filtrar todo o tráfego IPv6, selecione Nenhum.
        • Para duplicar todo o tráfego IPv6, selecione Permitir todos os intervalos IPv6 (::/0).
        • Para duplicar o tráfego de intervalos de endereços IPv6 específicos, selecione Permitir intervalos IPv6 específicos. No campo Intervalos IPv6, escreva um único intervalo de endereços IPv6 e, de seguida, prima Enter. Pode adicionar vários intervalos IPv6 premindo Enter após cada intervalo que escrever.
  8. Selecione a direção do trânsito que quer duplicar.

  9. Para criar a política de espelhamento de pacotes, clique em Enviar.

gcloud

Para criar uma política de espelhamento de pacotes, use o 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]

Substitua o seguinte:

  • POLICY_NAME: o nome da política de espelhamento de pacotes.
  • REGION: a região onde se encontram as origens espelhadas e o destino do coletor.
  • NETWORK_NAME: a rede onde se encontram as fontes espelhadas.
  • FORWARDING_RULE_NAME: o nome da regra de encaminhamento que está configurada como um coletor de espelhamento. Google Cloud envia todo o tráfego espelhado para o balanceador de carga de rede de passagem interno associado.
  • SUBNET: o nome de uma ou mais sub-redes a replicar. Pode fornecer várias sub-redes através de uma lista separada por vírgulas. Google Cloud reflete instâncias existentes e futuras na sub-rede.
  • TAG: uma ou mais etiquetas de rede. Google Cloud reflete instâncias que têm a etiqueta de rede. Pode fornecer várias etiquetas através de uma lista separada por vírgulas.
  • INSTANCE: o ID totalmente qualificado de uma ou mais instâncias a replicar. Pode fornecer várias instâncias através de uma lista separada por vírgulas.
  • CIDR_RANGE: um ou mais intervalos CIDR IPv4 ou IPv6 para replicar. Se não forem especificados intervalos CIDR, todo o tráfego IPv4 que corresponda aos protocolos especificados é replicado. Se não forem especificados intervalos CIDR nem protocolos, todo o tráfego IPv4 é espelhado. Para espelhar todo o tráfego IPv4 e IPv6, use 0.0.0.0/0,::/0. Pode incluir intervalos CIDR IPv4 e IPv6. Pode fornecer vários intervalos através de uma lista separada por vírgulas.
  • PROTOCOL: um ou mais protocolos para espelhar. Os valores válidos são tcp, udp, icmp, esp, ah, ipip, sctp ou um número de protocolo da IANA. Se não forem especificados protocolos, todo o tráfego que corresponda aos intervalos CIDR especificados é replicado. Se não forem especificados protocolos nem intervalos CIDR, todo o tráfego IPv4 é espelhado. Para especificar ICMP para IPv6, use 58. Pode fornecer vários protocolos através de uma lista separada por vírgulas.
  • DIRECTION: a direção do tráfego a replicar em relação à VM. Por predefinição, esta opção está definida como both, o que significa que o tráfego de entrada e de saída é espelhado. Pode restringir os pacotes capturados especificando ingress para capturar apenas pacotes de entrada ou egress para capturar apenas pacotes de saída.

Terraform

Pode usar um recurso do Terraform para criar uma política de espelhamento de pacotes.

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 como aplicar ou remover uma configuração do Terraform, consulte os comandos básicos do Terraform.

API

Para criar uma política de espelhamento de pacotes, faça um pedido POST ao 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"
  }
}

Substitua o seguinte:

  • PROJECT_ID: o ID do projeto no qual criar a política.
  • REGION: a região onde se encontram as origens espelhadas e o destino do coletor.
  • POLICY_NAME: o nome da política de espelhamento de pacotes.
  • ENABLED: se esta política entra em vigor ou não. As opções são TRUE e FALSE. TRUE é a predefinição.
  • NETWORK_URL: o URL da rede onde se encontram as fontes refletidas.
  • PRIORITY: a prioridade da regra de encaminhamento, que é usada para desempatar quando existe mais do que uma regra correspondente. O intervalo válido é de 0 a 65 535 e o valor predefinido é 1000.
  • SUBNET_URL: o URL de uma sub-rede a duplicar. Google Cloud Duplica as instâncias existentes e futuras na sub-rede. Pode fornecer várias sub-redes através de uma lista separada por vírgulas.
  • TAG: uma etiqueta de rede. Google Cloud reflete instâncias que têm a etiqueta de rede. Pode fornecer várias etiquetas através de uma lista separada por vírgulas.
  • INSTANCE: o ID totalmente qualificado de uma instância a duplicar. Pode fornecer várias instâncias através de uma lista separada por vírgulas.
  • FORWARDING_RULE_URL: o URL de uma regra de encaminhamento que está configurada como um coletor de replicação. Google Cloud envia todo o tráfego replicado para o balanceador de carga de rede de passagem interno associado.
  • PROTOCOL: um ou mais protocolos. As opções são tcp, udp, icmp, esp, ah, ipip, sctp ou um número de protocolo da IANA. Se não forem especificados protocolos, todo o tráfego que corresponda aos intervalos CIDR especificados é duplicado. Se não forem especificados intervalos CIDR nem protocolos, todo o tráfego IPv4 é espelhado. Para especificar ICMP para IPv6, introduza 58. Pode fornecer vários protocolos através do seguinte formulário: "icmp", "udp".
  • CIDR_RANGE: um ou mais intervalos CIDR IPv4 ou IPv6 para replicar. Se não forem especificados intervalos CIDR, todo o tráfego IPv4 que corresponda aos protocolos especificados é replicado. Se não forem especificados intervalos CIDR nem protocolos, todo o tráfego IPv4 é espelhado. Para espelhar todo o tráfego IPv4 e IPv6, use "0.0.0.0/0", "::/0". Pode incluir intervalos CIDR IPv4 e IPv6. Pode fornecer vários intervalos CIDR através do seguinte formulário: "192.0.2.0/24", "2001:0DB8::/32".
  • PROTOCOL: um ou mais protocolos para espelhar.
  • DIRECTION: a direção do tráfego a espelhar. As opções são INGRESS, EGRESS ou BOTH. A predefinição é BOTH.

Valide o espelhamento de pacotes

Para verificar se as instâncias do coletor estão a receber corretamente tráfego duplicado, pode usar o tcpdump.

  1. Associe-se a uma instância do coletor.

  2. Se o comando tcpdump não estiver disponível, instale-o.

  3. Identifique a sua interface de rede:

    ip address
    

    Na lista de interfaces de rede, encontre o nome associado ao endereço IPv4 interno principal da instância do coletor, por exemplo, ens4.

  4. Comece a analisar pacotes:

    sudo tcpdump -i INTERFACE_NAME -f "host IP_ADDRESS"
    

    Substitua o seguinte:

    • INTERFACE_NAME: o nome da interface que identificou no passo 3.
    • IP_ADDRESS: o endereço IPv4 de uma VM de origem duplicada.
  5. Para executar o teste, envie tráfego da VM de origem espelhada, por exemplo, enviando um ping ICMP. Na saída de tcpdump, verifique se consegue ver o tráfego esperado.

Modifique uma política de espelhamento de pacotes

Pode atualizar uma política existente para alterar detalhes como origens espelhadas ou destinos de recolha.

Consola

  1. Na Google Cloud consola, aceda à página Packet Mirroring.

    Aceda à funcionalidade Packet Mirroring

  2. Na lista de políticas de replicação de pacotes, clique na que quer editar.

  3. Na página de detalhes da política, clique em Editar.

  4. Edite os campos que quer atualizar. A consola segue o mesmo fluxo que os passos para quando cria uma política. Para ver informações sobre cada campo, consulte o artigo Crie uma política de espelhamento de pacotes.

gcloud

Para atualizar uma política de espelhamento de pacotes existente, use o 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,...]]

Substitua o seguinte:

  • POLICY_NAME: o nome da política de espelhamento de pacotes a modificar.
  • FORWARDING_RULE_NAME: o nome da regra de encaminhamento que está configurada como um coletor. Google Cloud envia todo o tráfego espelhado para o Network Load Balancer de passagem interno associado.
  • DESCRIPTION: uma descrição da política de espelhamento de pacotes.
  • DIRECTION: a direção do tráfego à qual aplicar a política de espelhamento de pacotes. As opções são egress, ingress ou both.
  • REGION: a região onde a política se encontra.
  • CIDR_RANGE: um ou mais intervalos CIDR IPv4 ou IPv6 para replicar. Se não forem especificados intervalos CIDR, todo o tráfego IPv4 que corresponda aos protocolos especificados é replicado. Se não forem especificados intervalos CIDR nem protocolos, todo o tráfego IPv4 é espelhado. Para espelhar todo o tráfego IPv4 e IPv6, use 0.0.0.0/0,::/0. Pode incluir intervalos CIDR IPv4 e IPv6. Pode fornecer vários intervalos através de uma lista separada por vírgulas.
  • PROTOCOL: um ou mais protocolos para espelhar. Os valores válidos são tcp, udp, icmp, esp, ah, ipip, sctp ou um número de protocolo da IANA. Se não forem especificados protocolos, o tráfego que corresponder aos intervalos CIDR especificados é espelhado. Se não forem especificados protocolos nem intervalos CIDR, todo o tráfego IPv4 é espelhado. Para especificar ICMP para IPv6, use 58. Pode fornecer vários protocolos através de uma lista separada por vírgulas.
  • INSTANCE: o ID totalmente qualificado de uma ou mais instâncias de VM a replicar. Pode fornecer várias instâncias através de uma lista separada por vírgulas.
  • SUBNET: uma ou mais sub-redes. Pode fornecer várias sub-redes através de uma lista separada por vírgulas. Google Cloud Reflete as instâncias existentes e futuras na sub-rede.
  • TAG: uma ou mais etiquetas de rede. Pode fornecer várias etiquetas através de uma lista separada por vírgulas.

API

Para atualizar uma política de espelhamento de pacotes, faça um pedido POST ao 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"
}

Substitua o seguinte:

  • PROJECT_ID: o ID do projeto onde a política se encontra.
  • REGION: a região da política de espelhamento de pacotes.
  • POLICY_NAME: o nome da política de espelhamento de pacotes a modificar.
  • DESCRIPTION: uma descrição opcional da política.
  • PRIORITY: a prioridade da política, que é usada para desempatar quando existem várias políticas correspondentes. O valor predefinido é 1000. O intervalo válido é de 0 a 65 535.
  • FORWARDING_RULE_URL: o URL de uma regra de encaminhamento com o espelhamento de pacotes ativado. Google Cloud envia todo o tráfego espelhado para o Network Load Balancer de passagem interno associado.
  • SUBNET_URL: o URL de uma sub-rede. Google Cloud reflete as instâncias existentes e futuras na sub-rede. Pode fornecer várias sub-redes através de uma lista separada por vírgulas.
  • INSTANCE_URL: o URL de uma instância de VM para criar uma imagem espelhada. Pode fornecer várias instâncias através de uma lista separada por vírgulas.
  • NETWORK_TAGS: uma etiqueta de rede. Google Cloud reflete instâncias que têm uma ou mais etiquetas de rede. Pode fornecer várias etiquetas através de uma lista separada por vírgulas.
  • CIDR_RANGE: um ou mais intervalos CIDR IPv4 ou IPv6 para replicar. Se não forem especificados intervalos CIDR, todo o tráfego IPv4 que corresponda aos protocolos especificados é replicado. Se não forem especificados intervalos CIDR nem protocolos, todo o tráfego IPv4 é espelhado. Para espelhar todo o tráfego IPv4 e IPv6, use "0.0.0.0/0", "::/0". Pode incluir intervalos CIDR IPv4 e IPv6. Pode fornecer vários intervalos CIDR através do seguinte formulário: "192.0.2.0/24", "2001:DB8::/32".
  • IP_PROTOCOL: um ou mais protocolos. As opções são tcp, udp, icmp, esp, ah, ipip, sctp ou um número de protocolo da IANA. Se não forem especificados protocolos, todo o tráfego que corresponda aos intervalos CIDR especificados é duplicado. Se não forem especificados intervalos CIDR nem protocolos, todo o tráfego IPv4 é espelhado. Para especificar ICMP para IPv6, use 58. Pode fornecer vários protocolos através do seguinte formulário: "icmp", "udp".
  • DIRECTION: a direção do tráfego a espelhar. As opções são INGRESS, EGRESS ou BOTH. A predefinição é BOTH.
  • ENABLED: indica se a política está ativada ou não. As opções são TRUE ou FALSE.

Apresente políticas de espelhamento de pacotes

Pode listar políticas de espelhamento de pacotes para ver as políticas existentes.

Consola

gcloud

Para listar as políticas de replicação de pacotes que estão no seu projeto ou numa região específica, use o comando packet-mirrorings list.

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

Substitua REGION pelo nome da região que contém as políticas a listar.

API

Para listar as políticas de espelhamento de pacotes existentes no seu projeto, faça um pedido ao método packetMirrorings.list.GET

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

Substitua PROJECT_ID pelo ID do seu projeto.

Para listar as políticas de espelhamento de pacotes existentes para uma região específica, faça um pedido GET ao método packetMirrorings.list.

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

Substitua o seguinte:

  • PROJECT_ID: o ID do projeto que contém as políticas a listar.
  • REGION: a região que contém as políticas a apresentar.

Descreva uma política de espelhamento de pacotes

Pode descrever uma política de espelhamento de pacotes para ver detalhes como os filtros da política.

Consola

  1. Na Google Cloud consola, aceda à página Packet Mirroring.

    Aceda à funcionalidade Packet Mirroring

  2. Na lista de políticas de replicação de pacotes, selecione a política que quer ver. A Google Cloud consola mostra os detalhes da política que selecionou.

gcloud

Para descrever uma política de espelhamento de pacotes, use o comando packet-mirrorings describe.

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

Substitua o seguinte:

  • POLICY_NAME: o nome da política de espelhamento de pacotes a descrever.
  • REGION: a região onde a política se encontra.

API

Para descrever uma política de espelhamento de pacotes, faça um pedido GET ao método packetMirrorings.get.

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

Substitua o seguinte:

  • PROJECT_ID: o ID do projeto onde a política está localizada.
  • REGION: a região onde a política se encontra.
  • POLICY_NAME: o nome da política de espelhamento de pacotes a descrever.

Desative ou ative uma política de espelhamento de pacotes

Pode desativar ou ativar uma política de espelhamento de pacotes para parar ou iniciar a recolha de tráfego espelhado.

Consola

  1. Na Google Cloud consola, aceda à página Packet Mirroring.

    Aceda à funcionalidade Packet Mirroring

  2. Na lista de políticas de replicação de pacotes, selecione a que quer desativar ou ativar.

  3. Clique em Desativar ou Ativar.

  4. Confirme clicando em Desativar ou Ativar.

gcloud

Para desativar uma política de espelhamento de pacotes, use o comando packet-mirrorings update.

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

Substitua o seguinte:

  • POLICY_NAME: o nome da política de espelhamento de pacotes a desativar ou ativar.
  • REGION: a região onde a política se encontra.

Para ativar uma política de espelhamento de pacotes, use o comando packet-mirrorings update.

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

Substitua o seguinte:

  • POLICY_NAME: o nome da política de espelhamento de pacotes a desativar ou ativar.
  • REGION: a região onde a política se encontra.

API

Para desativar ou ativar uma política de espelhamento de pacotes existente, faça um PATCH pedido ao métodopacketMirrorings.patch.

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

Substitua o seguinte:

  • PROJECT_ID: o ID do projeto onde a política está localizada.
  • REGION: a região onde a política se encontra.
  • POLICY_NAME: o nome da política de espelhamento de pacotes a desativar.

Elimine uma política de espelhamento de pacotes

Pode eliminar uma política de espelhamento de pacotes para a remover do seu projeto. Depois de eliminar uma política,o Google Ad Manager deixa de duplicar todo o tráfego relacionado com a política. Google Cloud

Consola

  1. Na Google Cloud consola, aceda à página Packet Mirroring.

    Aceda à funcionalidade Packet Mirroring

  2. Na lista de políticas de replicação de pacotes, selecione a que quer eliminar.

  3. Clique em Eliminar.

  4. Confirme clicando em Eliminar.

gcloud

Para eliminar uma política de espelhamento de pacotes, use o comando packet-mirrorings delete.

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

Substitua o seguinte:

  • POLICY_NAME: o nome da política de espelhamento de pacotes a eliminar.
  • REGION: a região onde a política se encontra.

API

Para eliminar uma política de espelhamento de pacotes, faça um DELETE pedido ao método packetMirrorings.delete.

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

Substitua o seguinte:

  • PROJECT_ID: o ID do projeto onde a política está localizada.
  • POLICY_NAME: o nome da política de espelhamento de pacotes a eliminar.
  • REGION: a região onde a política se encontra.

Resolução de problemas

Se a sua política de espelhamento de pacotes não estiver a recolher o tráfego espelhado pretendido, verifique as seguintes configurações:

  • Verifique se tem regras de firewall que permitam o tráfego de instâncias espelhadas para as instâncias do coletor.

  • Verifique se as suas origens espelhadas incluem ou excluem as instâncias a espelhar. Por exemplo, se especificar uma sub-rede como origem duplicada, todas as instâncias existentes e futuras na sub-rede são duplicadas. Se especificar etiquetas, apenas as instâncias com etiquetas correspondentes são espelhadas.

  • Verifique se os filtros de espelhamento de pacotes não são demasiado amplos nem demasiado restritos. Pode ter configurado involuntariamente filtros para incluir ou excluir determinado tráfego.

  • Se configurou uma política de replicação de pacotes para recolher tráfego IPv6, certifique-se de que as origens do tráfego replicado são VMs com endereços IPv6 que estão ligadas a sub-redes com intervalos de endereços IPv6.