Utilizzo del Mirroring pacchetto

Puoi utilizzare Mirroring pacchetto per eseguire il mirroring del traffico da e verso determinate istanze di macchine virtuali (VM). Il traffico raccolto può aiutarti a rilevare le minacce alla sicurezza e a monitorare le prestazioni delle applicazioni. Per maggiori dettagli sul Mirroring pacchetto, consulta la sezione Mirroring pacchetto.

Il traffico sottoposto a mirroring viene inviato alle VM in cui hai installato il software appropriato. Per un elenco dei fornitori che forniscono software, consulta la pagina Fornitori di partner di Mirroring pacchetto.

Le seguenti sezioni descrivono come creare e gestire i criteri di Mirroring pacchetto.

Limitazioni

  • Il mirroring pacchetto non può eseguire il mirroring dei pacchetti per il traffico dei servizi pubblicati di Private Service Connect.

  • Per motivi di sicurezza, Mirroring pacchetto non esegue il mirroring dei pacchetti inviati all'intervallo di indirizzi IP locali rispetto al collegamento 169.254.0.0/16. Questo intervallo include le richieste di metadati da una VM al relativo server di metadati.

  • L'utilizzo di un servizio LoadBalancer di Google Kubernetes Engine (GKE) come raccoglitore del mirroring pacchetti non è supportato.

  • Se alle istanze del raccoglitore può essere applicato un criterio di mirroring pacchetto, il mirroring pacchetto le ignora e non esegue il mirroring del traffico.

Prima di iniziare

Prima di creare un criterio di Mirroring pacchetto, devi disporre delle autorizzazioni appropriate. Devi anche creare un bilanciatore del carico di rete passthrough interno che agisca da destinazione del raccoglitore. Questo bilanciatore del carico di rete passthrough interno richiede un gruppo di istanze per consentire al servizio di backend di utilizzare le VM come destinazioni del raccoglitore.

Autorizzazioni

Per creare e gestire i criteri di Mirroring pacchetto, Google Cloud fornisce due ruoli correlati a Mirroring pacchetto:

  • compute.packetMirroringUser concede agli utenti l'autorizzazione per creare, aggiornare ed eliminare i criteri di mirroring pacchetto. Per utilizzare Mirroring pacchetto, gli utenti devono avere questo ruolo nei progetti in cui creano criteri di mirroring pacchetto.

  • compute.packetMirroringAdmin concede agli utenti l'autorizzazione per eseguire il mirroring di risorse specifiche. Anche se gli utenti hanno l'autorizzazione per creare un criterio di mirroring pacchetto, devono comunque richiedere l'autorizzazione per eseguire il mirroring delle origini correlate. Utilizza questo ruolo nei progetti in cui il proprietario di un criterio potrebbe non avere altre autorizzazioni, ad esempio negli scenari VPC condiviso.

Per ulteriori informazioni sull'utilizzo dei ruoli IAM, consulta Gestire l'accesso a progetti, cartelle e organizzazioni nella documentazione di IAM.

crea istanze del raccoglitore

Il mirroring pacchetto richiede un gruppo di istanze di istanze del raccoglitore. Per maggiori dettagli sui gruppi di istanze, consulta la seguente documentazione: Creazione di un nuovo modello di istanza e Creazione di un gruppo di istanze gestite in una singola zona.

Crea un bilanciatore del carico interno per Mirroring pacchetto

Per abilitare Mirroring pacchetto, devi avere un bilanciatore del carico di rete passthrough interno che possa fungere da raccoglitore per il mirroring dei pacchetti. Il bilanciatore del carico di rete passthrough interno deve soddisfare i seguenti requisiti:

  • La regola di forwarding del bilanciatore del carico di rete passthrough interno deve avere il mirroring pacchetto abilitato al momento della creazione della regola. Questo stato non può essere modificato dopo la creazione della regola. Puoi utilizzare questa regola di forwarding per raccogliere il traffico sia IPv4 sia IPv6.
  • Il bilanciatore del carico di rete passthrough interno si trova nella stessa regione delle istanze di cui stai eseguendo il mirroring.
  • Il servizio di backend del bilanciatore del carico di rete passthrough interno deve utilizzare un'affinità sessione pari a NONE (hash con 5 tuple).
  • Nel servizio di backend del bilanciatore del carico di rete passthrough interno deve essere disabilitata l'impostazione secondaria di backend.

Se le istanze del raccoglitore non sono configurate per rispondere al controllo di integrità che hai configurato con il tuo servizio di backend, il controllo di integrità può avere esito negativo. In questo caso, è comunque possibile eseguire il mirroring dei pacchetti.

Per saperne di più su come creare un bilanciatore del carico di rete passthrough interno per Mirroring pacchetto, consulta Creazione di un bilanciatore del carico per il mirroring dei pacchetti.

Configura le regole firewall

Per preparare la rete VPC per il traffico di Mirroring pacchetto, segui questi passaggi:

  • Assicurati che le istanze del raccoglitore nel gruppo di istanze del bilanciatore del carico possano ricevere il traffico dalle istanze sottoposte a mirroring o dagli intervalli di indirizzi IPv4 e IPv6 delle istanze sottoposte a mirroring. Ad esempio, per consentire alle istanze del raccoglitore di ricevere il traffico IPv4 da qualsiasi VM, crea una regola firewall con un intervallo di indirizzi IPv4 di origine pari a 0.0.0.0/0. Per consentire alle istanze del raccoglitore di ricevere traffico IPv6 da qualsiasi VM, crea una regola firewall con un intervallo di indirizzi IPv6 di origine pari a ::/0. Per evitare che il traffico internet raggiunga le istanze del raccoglitore, assegna loro solo indirizzi IPv4 e IPv6 interni.

  • Assicurati che nessun'altra regola firewall sostituisca la regola in uscita implicita in modo che il traffico sottoposto a mirroring possa passare dalle istanze di origine alle istanze di destinazione che fanno parte del bilanciatore del carico di rete passthrough interno.

  • Assicurati che le istanze del raccoglitore possano ricevere traffico dai sistemi di controllo di integrità di Google Cloud. Ad esempio, per il traffico IPv4, crea una regola firewall che consenta il traffico alle istanze del raccoglitore dagli intervalli di indirizzi IPv4 di 130.211.0.0/22 e 35.191.0.0/16. Per il traffico IPv6, crea una regola firewall che consenta il traffico alle istanze del raccoglitore dall'intervallo di indirizzi IPv6 di 2600:2d00:1:b029::/64.

  • Se vuoi testare Mirroring pacchetto inviando manualmente il traffico in uscita da una o più istanze sottoposte a mirroring, crea una regola firewall che consenta il traffico SSH a queste istanze. Ad esempio, per consentire le connessioni SSH alle istanze sottoposte a mirroring da tutti gli indirizzi IPv4 e IPv6, consenti il traffico TCP in entrata alla porta 22 da qualsiasi indirizzo IPv4 e IPv6 di origine. Se vuoi consentire solo le connessioni SSH avviate da un determinato intervallo di indirizzi IPv4 o IPv6, specifica questo intervallo di indirizzi IPv4 o IPv6 come intervallo di origine per la regola firewall. Per saperne di più su come testare il bilanciatore del carico di rete passthrough interno, consulta Test del bilanciamento del carico.

Se non esistono regole che consentono questo traffico, consulta Utilizzare le regole firewall VPC per crearle. Per ulteriori informazioni sulla creazione di regole firewall per un bilanciatore del carico di rete passthrough interno, consulta Configurazione delle regole firewall nella documentazione di Cloud Load Balancing.

Crea un criterio di Mirroring pacchetto

Per avviare il mirroring del traffico da e verso istanze particolari, crea un criterio di mirroring dei pacchetti. Google Cloud esegue il mirroring di qualsiasi istanza che corrisponde ad almeno una delle origini specificate.

Console

  1. Nella console Google Cloud, vai alla pagina Mirroring pacchetto.

    Vai a Mirroring pacchetto

  2. Fai clic su Crea criterio.

  3. Inserisci le seguenti informazioni sulla norma e fai clic su Continua.

    1. Inserisci un nome per il criterio.
    2. Seleziona la regione che include le origini sottoposte a mirroring e la destinazione del raccoglitore. Il criterio di Mirroring pacchetto deve trovarsi nella stessa regione dell'origine e della destinazione.
    3. Ignora il campo Priority (Priorità). Al momento non può essere modificato.
    4. Seleziona Attivato per attivare il criterio quando lo crei.
  4. Seleziona le reti VPC in cui si trovano l'origine sottoposta a mirroring e la destinazione del raccoglitore, quindi fai clic su Continua.

    L'origine e la destinazione possono trovarsi nelle stesse reti VPC o in reti VPC diverse.

    • Se si trovano nella stessa rete VPC, seleziona Le origini e le destinazioni con mirroring si trovano nella stessa rete VPC, quindi seleziona la rete.
    • Se si trovano in reti diverse, seleziona Origine sottoposta a mirroring e destinazione raccoglitore in reti VPC in peering separate, quindi seleziona la rete di origine sottoposta a mirroring e poi la rete di destinazione del raccoglitore.
  5. Seleziona le origini con mirroring e fai clic su Continua. Puoi selezionare una o più origini. Google Cloud esegue il mirroring di qualsiasi istanza che corrisponde ad almeno una delle origini selezionate.

    • Subnet: seleziona una o più subnet. Google Cloud esegue il mirroring delle istanze esistenti e future in subnet selezionate.
    • Tag di rete: specifica uno o più tag di rete. Google Cloud esegue il mirroring delle istanze che hanno almeno uno dei tag specificati.
    • Nome istanza: seleziona le istanze specifiche di cui eseguire il mirroring.
  6. Seleziona un bilanciatore del carico di rete passthrough interno configurato per Mirroring pacchetto, quindi fai clic su Continua. Google Cloud invia il traffico sottoposto a mirroring alle istanze che si trovano dietro il bilanciatore del carico di rete passthrough interno.

    Per il VPC condiviso, se la destinazione del raccoglitore e le origini con mirroring si trovano nella stessa rete VPC condivisa, devi selezionare il progetto in cui si trova la destinazione del raccoglitore e poi selezionare un bilanciatore del carico.

  7. Per selezionare il traffico di cui eseguire il mirroring:

    • Per eseguire il mirroring di tutto il traffico IPv4, seleziona Mirroring di tutto il traffico IPv4 (impostazione predefinita).
    • Per eseguire il mirroring di tutto il traffico IPv4 e IPv6, seleziona Esegui il mirroring del traffico filtrato, quindi procedi nel seguente modo:
      • Seleziona Consenti tutti i protocolli.
      • Seleziona Consenti tutti gli intervalli IPv4 (0.0.0.0/0).
      • Seleziona Consenti tutti gli intervalli IPv6 (::/0).
      • Seleziona Consenti il traffico in entrata e in uscita.
    • Per limitare il traffico di cui viene eseguito il mirroring, seleziona Esegui il mirroring del traffico filtrato, quindi procedi nel seguente modo:

      • Per limitare il traffico di cui viene eseguito il mirroring in base al protocollo, seleziona Consenti protocolli specifici, quindi seleziona i protocolli. Se non vedi un protocollo per cui vuoi eseguire il mirroring del traffico, seleziona Altri protocolli, quindi inserisci il protocollo nel campo Altri protocolli. I valori validi sono tcp, udp, esp, ah, ipip, sctp o un numero di protocollo IANA. Per specificare ICMP per IPv6, inserisci 58.

      • Per i filtri dell'intervallo IPv4, segui questi passaggi:

        • Per eseguire il mirroring di tutto il traffico IPv4, seleziona Consenti tutti gli intervalli IPv4 (0.0.0.0/0).
        • Per eseguire il mirroring del traffico per intervalli di indirizzi IPv4 specifici, seleziona Consenti intervalli IPv4 specifici. Nel campo Intervalli IPv4, digita un singolo intervallo di indirizzi IPv4, quindi premi Invio. Puoi aggiungere più intervalli IPv4 premendo Invio dopo ogni intervallo digitato.
      • Per i filtri dell'intervallo IPv6, segui questi passaggi:

        • Per filtrare tutto il traffico IPv6, seleziona Nessuno.
        • Per eseguire il mirroring di tutto il traffico IPv6, seleziona Consenti tutti gli intervalli IPv6 (::/0).
        • Per eseguire il mirroring del traffico per intervalli di indirizzi IPv6 specifici, seleziona Consenti intervalli IPv6 specifici. Nel campo Intervalli IPv6, digita un singolo intervallo di indirizzi IPv6, quindi premi Invio. Puoi aggiungere più intervalli IPv6 premendo Invio dopo ogni intervallo digitato.
  8. Seleziona la Direzione del traffico del traffico di cui vuoi eseguire il mirroring.

  9. Per creare il criterio di Mirroring pacchetto, fai clic su Invia.

gcloud

Per creare un criterio di Mirroring pacchetto, utilizza il 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]

Sostituisci quanto segue:

  • POLICY_NAME: il nome del criterio di Mirroring pacchetto.
  • REGION: la regione in cui si trovano le origini sottoposte a mirroring e la destinazione del raccoglitore.
  • NETWORK_NAME: la rete in cui si trovano le origini sottoposte a mirroring.
  • FORWARDING_RULE_NAME: nome della regola di forwarding configurata come raccoglitore di mirroring. Google Cloud invia tutto il traffico sottoposto a mirroring al bilanciatore del carico di rete passthrough interno associato.
  • SUBNET: il nome di una o più subnet di cui eseguire il mirroring. Puoi specificare più subnet utilizzando un elenco separato da virgole. Google Cloud esegue il mirroring delle istanze esistenti e future nella subnet.
  • TAG: uno o più tag di rete. Google Cloud esegue il mirroring delle istanze che contengono il tag di rete. Puoi fornire più tag utilizzando un elenco separato da virgole.
  • INSTANCE: l'ID completo di una o più istanze di cui eseguire il mirroring. Puoi fornire più istanze utilizzando un elenco separato da virgole.
  • CIDR_RANGE: uno o più intervalli CIDR IPv4 o IPv6 di cui eseguire il mirroring. Se non vengono specificati intervalli CIDR, viene eseguito il mirroring di tutto il traffico IPv4 che corrisponde ai protocolli specificati. Se non vengono specificati né intervalli né protocolli, viene eseguito il mirroring di tutto il traffico IPv4. Per eseguire il mirroring di tutto il traffico IPv4 e IPv6, utilizza 0.0.0.0/0,::/0. Puoi includere intervalli CIDR IPv4 e IPv6. Puoi fornire più intervalli utilizzando un elenco separato da virgole.
  • PROTOCOL: uno o più protocolli di cui eseguire il mirroring. I valori validi sono tcp, udp, icmp, esp, ah, ipip, sctp o un numero di protocollo IANA. Se non viene specificato alcun protocollo, viene eseguito il mirroring di tutto il traffico che corrisponde agli intervalli CIDR specificati. Se non viene specificato né alcun protocollo né intervallo CIDR, viene eseguito il mirroring di tutto il traffico IPv4. Per specificare ICMP per IPv6, utilizza 58. Puoi fornire più protocolli utilizzando un elenco separato da virgole.
  • DIRECTION: la direzione del traffico di cui eseguire il mirroring relativo alla VM. Il valore predefinito è both, il che significa che viene eseguito il mirroring del traffico in entrata e in uscita. Puoi limitare i pacchetti acquisiti specificando ingress per acquisire solo i pacchetti in entrata oppure egress per acquisire solo i pacchetti in uscita.

Terraform

Puoi utilizzare una risorsa Terraform per creare un criterio di mirroring pacchetto.

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"
  }
}

Per scoprire come applicare o rimuovere una configurazione Terraform, consulta Comandi Terraform di base.

API

Per creare un criterio di Mirroring pacchetto, effettua una richiesta POST al metodo 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"
  }
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto in cui creare il criterio.
  • REGION: la regione in cui si trovano le origini sottoposte a mirroring e la destinazione dei raccoglitori.
  • POLICY_NAME: il nome del criterio di Mirroring pacchetto.
  • ENABLED: indica se la norma viene applicata o meno. Le opzioni sono TRUE e FALSE. TRUE è l'impostazione predefinita.
  • NETWORK_URL: l'URL della rete in cui si trovano le origini sottoposte a mirroring.
  • PRIORITY: la priorità della regola di forwarding, utilizzata per interrompere i collegamenti quando è presente più di una regola di corrispondenza. L'intervallo valido è compreso tra 0 e 65.535 e il valore predefinito è 1000.
  • SUBNET_URL: l'URL di una subnet di cui eseguire il mirroring. Google Cloud esegue il mirroring delle istanze esistenti e future nella subnet. Puoi fornire più subnet utilizzando un elenco separato da virgole.
  • TAG: un tag di rete. Google Cloud esegue il mirroring delle istanze che contengono il tag di rete. Puoi fornire più tag utilizzando un elenco separato da virgole.
  • INSTANCE: l'ID completo di un'istanza di cui eseguire il mirroring. Puoi fornire più istanze utilizzando un elenco separato da virgole.
  • FORWARDING_RULE_URL: l'URL di una regola di forwarding configurata come raccoglitore di mirroring. Google Cloud invia tutto il traffico sottoposto a mirroring al bilanciatore del carico di rete passthrough interno associato.
  • PROTOCOL: uno o più protocolli. Le opzioni sono tcp, udp, icmp, esp, ah, ipip, sctp o un numero di protocollo IANA. Se non viene specificato alcun protocollo, viene eseguito il mirroring di tutto il traffico che corrisponde agli intervalli CIDR specificati. Se non vengono specificati né intervalli né protocolli, viene eseguito il mirroring di tutto il traffico IPv4. Per specificare ICMP per IPv6, inserisci 58. Puoi fornire più protocolli utilizzando il seguente formato: "icmp", "udp".
  • CIDR_RANGE: uno o più intervalli CIDR IPv4 o IPv6 di cui eseguire il mirroring. Se non vengono specificati intervalli CIDR, viene eseguito il mirroring di tutto il traffico IPv4 che corrisponde ai protocolli specificati. Se non vengono specificati né intervalli né protocolli, viene eseguito il mirroring di tutto il traffico IPv4. Per eseguire il mirroring di tutto il traffico IPv4 e IPv6, utilizza "0.0.0.0/0", "::/0". Puoi includere intervalli CIDR IPv4 e IPv6. Puoi fornire più intervalli CIDR utilizzando il seguente modulo: "192.0.2.0/24", "2001:0DB8::/32".
  • PROTOCOL: uno o più protocolli di cui eseguire il mirroring.
  • DIRECTION: la direzione del traffico di cui eseguire il mirroring. Le opzioni sono INGRESS, EGRESS o BOTH. Il valore predefinito è BOTH.

Verifica il mirroring pacchetto

Per verificare che le istanze del raccoglitore ricevano correttamente il traffico di mirroring, puoi utilizzare tcpdump.

  1. Connettiti a un'istanza del raccoglitore.

  2. Se il comando tcpdump non è disponibile, installalo.

  3. Identifica la tua interfaccia di rete:

    ip address
    

    Nell'elenco delle interfacce di rete, trova il nome associato all'indirizzo IPv4 interno principale dell'istanza del raccoglitore, ad esempio ens4.

  4. Inizia ad analizzare i pacchetti:

    sudo tcpdump -i INTERFACE_NAME -f "host IP_ADDRESS"
    

    Sostituisci quanto segue:

    • INTERFACE_NAME: il nome dell'interfaccia che hai identificato nel passaggio 3.
    • IP_ADDRESS: l'indirizzo IPv4 di una VM di origine sottoposta a mirroring.
  5. Per eseguire il test, invia il traffico dalla VM di origine sottoposta a mirroring, ad esempio inviando un ping ICMP. Nell'output di tcpdump, verifica di poter vedere il traffico previsto.

Modificare un criterio di Mirroring pacchetto

Puoi aggiornare un criterio esistente per modificare dettagli come le origini sottoposte a mirroring o le destinazioni dei raccoglitori.

Console

  1. Nella console Google Cloud, vai alla pagina Mirroring pacchetto.

    Vai a Mirroring pacchetto

  2. Nell'elenco dei criteri di Mirroring pacchetto, fai clic su quello che vuoi modificare.

  3. Nella pagina dei dettagli del criterio, fai clic su Modifica.

  4. Modifica i campi che vuoi aggiornare. La console segue lo stesso flusso dei passaggi per la creazione di un criterio. Per informazioni su ciascun campo, consulta Creare un criterio di Mirroring pacchetto.

gcloud

Per aggiornare un criterio di Mirroring pacchetto esistente, utilizza il 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,...]]

Sostituisci quanto segue:

  • POLICY_NAME: il nome del criterio di Mirroring pacchetto da modificare.
  • FORWARDING_RULE_NAME: nome della regola di forwarding configurata come raccoglitore. Google Cloud invia tutto il traffico sottoposto a mirroring al bilanciatore del carico di rete passthrough interno associato.
  • DESCRIPTION: una descrizione del criterio di Mirroring pacchetto.
  • DIRECTION: la direzione del traffico a cui applicare il criterio di mirroring pacchetto. Le opzioni sono egress, ingress o both.
  • REGION: la regione in cui si trova il criterio.
  • CIDR_RANGE: uno o più intervalli CIDR IPv4 o IPv6 di cui eseguire il mirroring. Se non vengono specificati intervalli CIDR, viene eseguito il mirroring di tutto il traffico IPv4 che corrisponde ai protocolli specificati. Se non vengono specificati né intervalli né protocolli, viene eseguito il mirroring di tutto il traffico IPv4. Per eseguire il mirroring di tutto il traffico IPv4 e IPv6, utilizza 0.0.0.0/0,::/0. Puoi includere intervalli CIDR IPv4 e IPv6. Puoi fornire più intervalli utilizzando un elenco separato da virgole.
  • PROTOCOL: uno o più protocolli di cui eseguire il mirroring. I valori validi sono tcp, udp, icmp, esp, ah, ipip, sctp o un numero di protocollo IANA. Se non viene specificato alcun protocollo, viene eseguito il mirroring del traffico che corrisponde agli intervalli CIDR specificati. Se non viene specificato né alcun protocollo né intervallo CIDR, viene eseguito il mirroring di tutto il traffico IPv4. Per specificare ICMP per IPv6, utilizza 58. Puoi fornire più protocolli utilizzando un elenco separato da virgole.
  • INSTANCE: l'ID completo di una o più istanze VM di cui eseguire il mirroring. Puoi fornire più istanze utilizzando un elenco separato da virgole.
  • SUBNET: una o più subnet. Puoi specificare più subnet utilizzando un elenco separato da virgole. Google Cloud esegue il mirroring delle istanze esistenti e future nella subnet.
  • TAG: uno o più tag di rete. Puoi fornire più tag utilizzando un elenco separato da virgole.

API

Per aggiornare un criterio di Mirroring pacchetto, effettua una richiesta POST al metodo 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"
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto in cui si trova il criterio.
  • REGION: la regione del criterio di Mirroring pacchetto.
  • POLICY_NAME: il nome del criterio di mirroring dei pacchetti da modificare.
  • DESCRIPTION: una descrizione facoltativa del criterio.
  • PRIORITY: la priorità del criterio, utilizzata per interrompere i collegamenti quando sono presenti più criteri corrispondenti. Il valore predefinito è 1000. L'intervallo valido è compreso tra 0 e 65.535.
  • FORWARDING_RULE_URL: l'URL di una regola di forwarding con Mirroring pacchetto abilitato. Google Cloud invia tutto il traffico sottoposto a mirroring al bilanciatore del carico di rete passthrough interno associato.
  • SUBNET_URL: l'URL di una subnet. Google Cloud esegue il mirroring delle istanze esistenti e future nella subnet. Puoi specificare più subnet utilizzando un elenco separato da virgole.
  • INSTANCE_URL: l'URL di un'istanza VM di cui eseguire il mirroring. Puoi fornire più istanze utilizzando un elenco separato da virgole.
  • NETWORK_TAGS: un tag di rete. Google Cloud esegue il mirroring delle istanze che hanno uno o più tag di rete. Puoi fornire più tag utilizzando un elenco separato da virgole.
  • CIDR_RANGE: uno o più intervalli CIDR IPv4 o IPv6 di cui eseguire il mirroring. Se non vengono specificati intervalli CIDR, viene eseguito il mirroring di tutto il traffico IPv4 che corrisponde ai protocolli specificati. Se non vengono specificati né intervalli né protocolli, viene eseguito il mirroring di tutto il traffico IPv4. Per eseguire il mirroring di tutto il traffico IPv4 e IPv6, utilizza "0.0.0.0/0", "::/0". Puoi includere intervalli CIDR IPv4 e IPv6. Puoi fornire più intervalli CIDR utilizzando il seguente modulo: "192.0.2.0/24", "2001:DB8::/32".
  • IP_PROTOCOL: uno o più protocolli. Le opzioni sono tcp, udp, icmp, esp, ah, ipip, sctp o un numero di protocollo IANA. Se non viene specificato alcun protocollo, viene eseguito il mirroring di tutto il traffico che corrisponde agli intervalli CIDR specificati. Se non vengono specificati né intervalli CIDR né protocolli, viene eseguito il mirroring di tutto il traffico IPv4. Per specificare ICMP per IPv6, utilizza 58. Puoi fornire più protocolli utilizzando il seguente modulo: "icmp", "udp".
  • DIRECTION: la direzione del traffico di cui eseguire il mirroring. Le opzioni sono INGRESS, EGRESS o BOTH. Il valore predefinito è BOTH.
  • ENABLED: indica se il criterio è attivato o meno. Le opzioni sono TRUE o FALSE.

Elenco criteri di mirroring pacchetto

Puoi elencare i criteri di mirroring pacchetto per visualizzare i criteri esistenti.

Console

  • Nella console Google Cloud, vai alla pagina Mirroring pacchetto.

    Vai a Mirroring pacchetto

    La console Google Cloud elenca tutti i criteri nel tuo progetto.

gcloud

Per elencare i criteri di mirroring pacchetto presenti nel tuo progetto o per una determinata regione, utilizza il comando packet-mirrorings list.

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

Sostituisci REGION con il nome della regione che contiene i criteri da elencare.

API

Per elencare i criteri di Mirroring pacchetto esistenti nel progetto, effettua una richiesta GET al metodo packetMirrorings.list.

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

Sostituisci PROJECT_ID con l'ID del progetto.

Per elencare i criteri di mirroring pacchetto esistenti per una determinata regione, effettua una richiesta GET al metodo packetMirrorings.list.

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

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto che contiene i criteri da elencare.
  • REGION: la regione che contiene i criteri da elencare.

Descrivere un criterio di Mirroring pacchetto

Puoi descrivere un criterio di Mirroring pacchetto per visualizzare i dettagli come i filtri del criterio.

Console

  1. Nella console Google Cloud, vai alla pagina Mirroring pacchetto.

    Vai a Mirroring pacchetto

  2. Dall'elenco dei criteri di mirroring pacchetto, seleziona il criterio che vuoi visualizzare. La console Google Cloud mostra i dettagli del criterio selezionato.

gcloud

Per descrivere un criterio di Mirroring pacchetto, utilizza il comando packet-mirrorings describe.

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

Sostituisci quanto segue:

  • POLICY_NAME: il nome del criterio di Mirroring pacchetto da descrivere.
  • REGION: la regione in cui si trova il criterio.

API

Per descrivere un criterio di Mirroring pacchetto, effettua una richiesta GET al metodo packetMirrorings.get.

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

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto in cui si trova il criterio.
  • REGION: la regione in cui si trova il criterio.
  • POLICY_NAME: il nome del criterio di Mirroring pacchetto da descrivere.

Disattivare o attivare un criterio di Mirroring pacchetto

Puoi disabilitare o abilitare un criterio di mirroring pacchetto per interrompere o avviare la raccolta del traffico con mirroring.

Console

  1. Nella console Google Cloud, vai alla pagina Mirroring pacchetto.

    Vai a Mirroring pacchetto

  2. Dall'elenco dei criteri di Mirroring pacchetto, seleziona quello da disabilitare o attivare.

  3. Fai clic su Disattiva o Attiva.

  4. Conferma facendo clic su Disattiva o Attiva.

gcloud

Per disabilitare un criterio di Mirroring pacchetto, utilizza il comando packet-mirrorings update.

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

Sostituisci quanto segue:

  • POLICY_NAME: il nome del criterio di Mirroring pacchetto da disabilitare o abilitare.
  • REGION: la regione in cui si trova il criterio.

Per abilitare un criterio di Mirroring pacchetto, utilizza il comando packet-mirrorings update.

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

Sostituisci quanto segue:

  • POLICY_NAME: il nome del criterio di Mirroring pacchetto da disabilitare o abilitare.
  • REGION: la regione in cui si trova il criterio.

API

Per disabilitare o abilitare un criterio di Mirroring pacchetto esistente, effettua una richiesta PATCH al metodo packetMirrorings.patch.

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

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto in cui si trova il criterio.
  • REGION: la regione in cui si trova il criterio.
  • POLICY_NAME: il nome del criterio di Mirroring pacchetto da disabilitare.

Elimina un criterio di Mirroring pacchetto

Puoi eliminare un criterio di Mirroring pacchetto per rimuoverlo dal tuo progetto. Dopo aver eliminato un criterio, Google Cloud interrompe il mirroring di tutto il traffico correlato al criterio.

Console

  1. Nella console Google Cloud, vai alla pagina Mirroring pacchetto.

    Vai a Mirroring pacchetto

  2. Dall'elenco dei criteri di Mirroring pacchetto, seleziona quello che desideri eliminare.

  3. Fai clic su Elimina.

  4. Conferma l'operazione facendo clic su Elimina.

gcloud

Per eliminare un criterio di Mirroring pacchetto, utilizza il comando packet-mirrorings delete.

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

Sostituisci quanto segue:

  • POLICY_NAME: il nome del criterio di Mirroring pacchetto da eliminare.
  • REGION: la regione in cui si trova il criterio.

API

Per eliminare un criterio di Mirroring pacchetto, effettua una richiesta DELETE al metodo packetMirrorings.delete.

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

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto in cui si trova il criterio.
  • POLICY_NAME: il nome del criterio di Mirroring pacchetto da eliminare.
  • REGION: la regione in cui si trova il criterio.

Risoluzione dei problemi

Se il criterio di Mirroring pacchetto non raccoglie il traffico di cui è stato eseguito il mirroring previsto, controlla le seguenti configurazioni:

  • Verifica di disporre di regole firewall che consentono il traffico dalle istanze sottoposte a mirroring alle istanze del raccoglitore.

  • Verifica che le origini sottoposte a mirroring includano o escludano le istanze di cui eseguire il mirroring. Ad esempio, se specifichi una subnet come origine con mirroring, viene eseguito il mirroring di tutte le istanze esistenti e future nella subnet. Se specifichi i tag, vengono sottoposte a mirroring solo le istanze con tag corrispondenti.

  • Controlla che i filtri del mirroring pacchetto non siano troppo ampi o troppo ristretti. È possibile che i filtri siano stati configurati involontariamente per includere o escludere determinati tipi di traffico.

  • Se hai configurato un criterio di mirroring pacchetto per raccogliere il traffico IPv6, assicurati che le origini del traffico sottoposto a mirroring siano VM a doppio stack collegate a subnet a doppio stack.