Pubblicità intervalli di indirizzi personalizzati

Utilizza la modalità di annunci personalizzati in un router Cloud o in una sessione BGP (Border Gateway Protocol) su un router Cloud per pubblicizzare intervalli di indirizzi IP diversi da quelli delle subnet della tua rete Virtual Private Cloud (VPC). Ad esempio, puoi pubblicizzare intervalli di indirizzi IP esterni, intervalli di indirizzi IP interni arbitrari o indirizzi IP interni di intervalli di indirizzi IP di altre reti VPC collegate alla tua rete VPC. La tua rete VPC potrebbe essere connessa tramite il peering di rete VPC o gli spoke VPC in Network Connectivity Center.

Quando un router Cloud è configurato per utilizzare la modalità di annuncio predefinita, annuncia solo le route per le subnet che fanno parte della stessa rete VPC del router Cloud. In questa modalità, router Cloud esclude le route statiche e quelle apprese dinamicamente da altre reti VPC, ad esempio le route apprese tramite il peering di rete VPC o gli spoke VPC in Network Connectivity Center.

Per specificare le route annunciate personalizzate quando crei un router Cloud o configuri una sessione BGP, consulta Creare router Cloud o Stabilire sessioni BGP.

Prima di iniziare

gcloud

Se vuoi utilizzare gli esempi di riga di comando in questa guida:

  1. Installa o esegui l'aggiornamento alla versione più recente di Google Cloud CLI.
  2. Imposta una regione e una zona predefinite.

API

Se vuoi utilizzare gli esempi di API in questa guida, configura l'accesso API.

Specificare le route annunciate personalizzate su un router Cloud

Per specificare le route annunciate personalizzate su un router Cloud esistente, segui questi passaggi.

Console

  1. Nella console Google Cloud, vai alla pagina Cloud Routers.

    Vai a Router Cloud

  2. Seleziona il router Cloud da aggiornare.

  3. Nella pagina Dettagli del router, fai clic su Modifica.

  4. Nella sezione Route annunciate, per Route, seleziona Crea route personalizzate.

  5. Seleziona la casella di controllo Annuncia tutte le subnet visibili al router Cloud per continuare a pubblicizzare le subnet disponibili per il router Cloud. L'attivazione di questa opzione simula il comportamento del router Cloud in modalità di annuncio predefinita.

  6. Seleziona Aggiungi route personalizzata per aggiungere una route pubblicizzata.

  7. Configura le route annunciate personalizzate:

    • Origine: seleziona Intervallo IP personalizzato.

    • Intervallo di indirizzi IP: utilizza la notazione CIDR per specificare l'intervallo IP personalizzato.

      Puoi specificare intervalli IP personalizzati sia IPv4 che IPv6. Tuttavia, gli intervalli personalizzati IPv6 vengono pubblicizzati solo nelle sessioni BGP in cui è abilitato IPv6.

      Se fornisci un prefisso dell'indirizzo IP senza una subnet mask, viene interpretato come una subnet mask /32 per IPv4 e /128 per IPv6. Per informazioni sul numero massimo di route personalizzate acquisite che puoi avere, consulta Limiti.

    • Descrizione: aggiungi una descrizione che ti aiuti a identificare lo scopo di questo percorso pubblicizzato personalizzato e poi fai clic su Fine.

  8. Dopo aver aggiunto i percorsi pubblicizzati personalizzati, fai clic su Salva.

gcloud

Esegui il comando update. Per specificare gli intervalli IP personalizzati, utilizza il flag --set-advertisement-ranges o il flag --add-advertisement-ranges.

  1. Utilizza il flag --set-advertisement-ranges. Gli annunci personalizzati esistenti vengono sostituiti:

    gcloud compute routers update ROUTER_NAME \
       --project=PROJECT_ID \
       --advertisement-mode custom \
       --set-advertisement-groups=ADVERTISED_GROUPS \
       --set-advertisement-ranges=ADVERTISED_IP_RANGES
    

    Sostituisci quanto segue:

    • ROUTER_NAME: il nome del router Cloud
    • PROJECT_ID: il progetto che contiene router Cloud
    • ADVERTISED_GROUPS: un gruppo definito da Google che router Cloud pubblicizza dinamicamente

      L'unico valore valido è all_subnets, che pubblicizza le subnet in base alla modalità di routing dinamico della rete VPC (simile alla modalità di pubblicità predefinita).

    • ADVERTISED_IP_RANGES: i contenuti del nuovo array di intervalli di indirizzi IP

      Puoi specificare intervalli IP personalizzati sia IPv4 che IPv6. Tuttavia, gli intervalli personalizzati IPv6 vengono pubblicizzati solo nelle sessioni BGP in cui IPv6 è attivato.

      Se fornisci un prefisso dell'indirizzo IP senza una subnet mask, viene interpretato come una subnet mask /32 per IPv4 e /128 per IPv6. Per informazioni sul numero massimo di route personalizzate apprese che puoi avere, consulta Limiti.

    L'esempio seguente aggiorna il router Cloud my-router per annunciare tutte le subnet e gli intervalli IP personalizzati 192.0.2.0/24 e 198.51.100.0/24:

    gcloud compute routers update my-router \
       --advertisement-mode custom \
       --set-advertisement-groups=all_subnets \
       --set-advertisement-ranges='192.0.2.0/24,198.51.100.0/24'
    

    L'esempio seguente aggiorna il my-routerrouter Cloud per annunciare tutte le subnet e l'intervallo IPv6 predefinito:

    gcloud compute routers update my-router \
       --advertisement-mode custom \
       --set-advertisement-groups=all_subnets \
       --set-advertisement-ranges='2001:db8:abcd:12::/64'
    

    Il router Cloud pubblicizza gli intervalli IPv6 solo nelle sessioni BGP attivate per IPv6.

    Il flag --set-advertisement-groups accetta i gruppi definiti da Google che il router Cloud annuncia dinamicamente. Puoi rimuovere il flag --set-advertisement-groups per escludere le pubblicità della sottorete. Per un elenco di tutti i gruppi di annunci, consulta il flag set-advertisement-groups nella documentazione dell'SDK Google.

  2. Utilizza il flag --add-advertisement-ranges, che richiede che la modalità di annuncio del router Cloud sia già impostata su custom:

    gcloud compute routers update ROUTER_NAME \
       --add-advertisement-ranges=ADVERTISED_IP_RANGES
    

    Sostituisci quanto segue:

    • ROUTER_NAME: il nome del router Cloud
    • ADVERTISED_IP_RANGES: i contenuti del nuovo array di intervalli di indirizzi IP

    L'esempio seguente aggiunge l'indirizzo IP personalizzato 203.0.113.1 agli annunci del router cloud:

    gcloud compute routers update my-router \
       --add-advertisement-ranges='203.0.113.1'
    

    L'esempio seguente aggiunge l'intervallo IPv6 personalizzato 2001:db8:abcd:12::/64 agli annunci del router Cloud:

    gcloud compute routers update my-router \
       --add-advertisement-ranges='2001:db8:abcd:12::/64'
    

    Il router Cloud pubblicizza gli intervalli IPv6 solo nelle sessioni BGP attivate per IPv6.

API

Utilizza il metodo routers.patch per aggiornare i campi bgp.advertisedGroups[] e bgp.advertisedIpRanges[].

I campi bgp.advertisedGroups[] e bgp.advertisedIpRanges[] memorizzando gli array di gruppi e intervalli di indirizzi IP pubblicizzati. Quando PATCH questi campi, sovrascrivi gli array esistenti con quelli nuovi nella richiesta.

  1. Invia una richiesta GET per ottenere gli attuali array di gruppi pubblicizzati e gli intervalli di indirizzi IP pubblicizzati sul router. Per maggiori dettagli, vedi Visualizzare la configurazione della sessione BGP.

  2. Invia una richiesta PATCH con nuovi array di gruppi pubblicizzati e intervalli di indirizzi IP pubblicizzati. Utilizza gli array della richiesta GET nel passaggio precedente e aggiungi eventuali gruppi o intervalli di indirizzi IP che preferisci sul router.

    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME
    {
      "bgp": {
        "advertisedGroups": [
        "ADVERTISED_GROUPS"
       ],
        "advertisedIpRanges": [
        ADVERTISED_IP_RANGES
       ]
     }
    }
    

    Sostituisci quanto segue:

    • PROJECT_ID: il progetto che contiene router Cloud
    • REGION: la regione in cui si trova il router Cloud
    • ROUTER_NAME: il nome del router Cloud
    • ADVERTISED_GROUPS: un gruppo definito da Google che router Cloud pubblicizza dinamicamente

    L'unico valore valido è ALL_SUBNETS, che pubblicizza le subnet in base alla modalità di routing dinamico della rete VPC (simile alle pubblicità predefinite).

    • ADVERTISED_IP_RANGES: i contenuti del nuovo array di intervalli di indirizzi IP

    Puoi specificare intervalli IP personalizzati sia IPv4 che IPv6. Tuttavia, gli intervalli personalizzati IPv6 vengono pubblicizzati solo nelle sessioni BGP in cui è abilitato IPv6.

    Se fornisci un prefisso dell'indirizzo IP senza una subnet mask, viene interpretato come una subnet mask /32 per IPv4 e /128 per IPv6. Per informazioni sul numero massimo di route personalizzate apprese che puoi avere, consulta Limiti.

    L'esempio seguente contiene due intervalli di indirizzi IPv4 e un intervallo di indirizzi IPv6:

        {
          "range": "192.0.2.0/24",
          "description": "First example range"
        },
        {
          "range": "198.51.100.0/24",
          "description": "Second example range"
        },
        {
          "range": "2001:db8:abcd:12::/64",
          "description: "Third example range"
        }
    

Specificare route annunciate personalizzate per una sessione BGP

Per specificare route pubblicizzati personalizzati per una sessione BGP esistente:

Console

  1. Nella console Google Cloud, vai alla pagina Cloud Routers.

    Vai a Router Cloud

  2. Seleziona il router Cloud che contiene la sessione BGP da aggiornare.

  3. Nella pagina Dettagli router, seleziona la sessione BGP da aggiornare.

  4. Nella pagina Dettagli sessione BGP, fai clic su Modifica.

  5. Per Route (Percorsi), seleziona Crea route personalizzate.

  6. Seleziona la casella di controllo Annuncia tutte le subnet visibili al router Cloud per continuare a pubblicizzare le subnet disponibili per il router Cloud. L'attivazione di questa opzione riproduce il comportamento predefinito del router Cloud.

  7. Seleziona Aggiungi route personalizzata per aggiungere una route pubblicizzata.

  8. Configura l'annuncio di route:

    • Origine: seleziona Intervallo IP personalizzato.

    • Intervallo di indirizzi IP: utilizza la notazione CIDR per specificare l'intervallo IP personalizzato. Puoi specificare intervalli IP personalizzati sia IPv4 che IPv6. Tuttavia, gli intervalli personalizzati IPv6 vengono pubblicizzati solo nelle sessioni BGP in cui IPv6 è attivo.

      Se fornisci un prefisso dell'indirizzo IP senza una subnet mask, viene interpretato come una subnet mask /32 per IPv4 e /128 per IPv6. Per informazioni sul numero massimo di route personalizzate apprese che puoi avere, consulta Limiti.

    • Descrizione: aggiungi una descrizione che ti aiuti a identificare lo scopo di questo annuncio di route, quindi fai clic su Fine.

  9. Dopo aver aggiunto i percorsi personalizzati, fai clic su Salva.

gcloud

Esegui il comando update-bgp-peer. Per specificare gli intervalli IP personalizzati, utilizza il flag --set-advertisement-ranges o il flag --add-advertisement-ranges.

  1. Utilizza il flag --set-advertisement-ranges. Gli annunci personalizzati esistenti vengono sostituiti:

    gcloud compute routers update-bgp-peer ROUTER_NAME \
        --peer-name=PEER_NAME \
        --advertisement-mode custom \
        --set-advertisement-groups=ADVERTISED_GROUPS \
        --set-advertisement-ranges=ADVERTISED_IP_RANGES
    

    Sostituisci quanto segue:

    • ROUTER_NAME: il nome del router Cloud
    • PEER_NAME: il nome del peer BGP
    • Se vuoi, aggiungi il flag --enable-ipv6 se stai aggiungendo intervalli IPv6 personalizzati.
    • ADVERTISED_GROUPS: un gruppo definito da Google che router Cloud pubblicizza dinamicamente

      L'unico valore valido è all_subnets, che pubblicizza le subnet in base alla modalità di routing dinamico della rete VPC (simile alle pubblicità predefinite).

    • ADVERTISED_IP_RANGES: i contenuti del nuovo array di intervalli di indirizzi IP

      Puoi specificare intervalli IP personalizzati sia IPv4 che IPv6. Tuttavia, gli intervalli personalizzati IPv6 vengono pubblicizzati solo nelle sessioni BGP in cui IPv6 è attivato.

      Se fornisci un prefisso dell'indirizzo IP senza una subnet mask, viene interpretato come una subnet mask /32 per IPv4 e /128 per IPv6. Per informazioni sul numero massimo di route personalizzate acquisite che puoi avere, consulta Limiti.

    Il seguente esempio aggiorna la sessione BGP my-bgp-session sul router Cloud my-router per pubblicizzare tutte le subnet e gli intervalli IP personalizzati 192.0.2.1, 198.51.100.0/24 e 2001:db8:abcd:12::/64.

    gcloud compute routers update-bgp-peer my-router \
        --peer-name my-bgp-session \
        --enable-ipv6 \
        --advertisement-mode custom \
        --set-advertisement-groups=all_subnets \
        --set-advertisement-ranges='192.0.2.1,198.51.100.0/24,2001:db8:abcd:12::/64'
    

    Il flag --set-advertisement-groups accetta i gruppi definiti da Google che la sessione BGP pubblicizza in modo dinamico. Puoi rimuovere il flag --add-advertisement-groups per escludere le pubblicità della sottorete. Per un elenco di tutti i gruppi di annunci, consulta il flag set-advertisement-groups nella documentazione dell'SDK Google.

  2. Utilizza il flag --add-advertisement-ranges, che richiede che la modalità di annuncio del router Cloud sia già impostata su custom:

    gcloud compute routers update-bgp-peer ROUTER_NAME \
        --peer-name=PEER_NAME \
        --add-advertisement-ranges=ADVERTISED_IP_RANGES
    

    Sostituisci quanto segue:

    • ROUTER_NAME: il nome del router Cloud
    • PEER_NAME: il nome del peer BGP
    • ADVERTISED_IP_RANGES: i contenuti del nuovo array di intervalli di indirizzi IP

      Puoi specificare intervalli IP personalizzati sia IPv4 che IPv6. Tuttavia, gli intervalli personalizzati IPv6 vengono pubblicizzati solo nelle sessioni BGP in cui IPv6 è attivato.

      Se fornisci un prefisso dell'indirizzo IP senza una subnet mask, viene interpretato come una subnet mask /32 per IPv4 e /128 per IPv6. Per informazioni sul numero massimo di route personalizzate acquisite che puoi avere, consulta Limiti.

    L'esempio seguente aggiunge l'indirizzo IP personalizzato 198.51.100.1 agli annunci del router cloud:

    gcloud compute routers update-bgp-peer my-router \
        --peer-name my-bgp-session \
        --add-advertisement-ranges='198.51.100.1'
    

    L'esempio seguente aggiunge l'indirizzo IPv6 personalizzato 2001:db8:abcd:12::/64 agli annunci del router Cloud:

    gcloud compute routers update-bgp-peer my-router \
        --peer-name my-bgp-session \
        --enable-ipv6 \
        --add-advertisement-ranges='2001:db8:abcd:12::/64'
    

API

Utilizza il metodo routers.patch per aggiornare il campo bgpPeers[].

Il campo bgpPeers[] accetta un array di peer BGP. Se PATCH questo campo, sovrascrivi l'array esistente di peer BGP con il nuovo array incluso nella richiesta.

  1. Invia una richiesta GET per ottenere l'array corrente di peer BGP per il router. Per maggiori dettagli, vedi Visualizzare la configurazione della sessione BGP.

  2. Invia una richiesta PATCH con un nuovo array di peer BGP. Per ogni peer BGP per cui vuoi aggiungere annunci, procedi nel seguente modo:

    • Aggiungi gli annunci per intervalli di indirizzi IP che preferisci nel campo bgpPeers[].advertisedIpRanges[].
    • Aggiungi gli annunci di gruppo che preferisci nel bgpPeers[].advertisedGroups[] campo.

      L'unico valore valido è ALL_SUBNETS, che pubblicizza le subnet in base alla modalità di routing dinamico della rete VPC (simile alla modalità di pubblicità predefinita).

      Per ulteriori informazioni su questi valori, consulta routers.patch nella documentazione dell'API.

    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME
    {
      "bgpPeers": [
        BGP_PEERS
      ]
    }
    

    Sostituisci quanto segue:

    • PROJECT_ID: il progetto che contiene router Cloud
    • REGION: la regione in cui si trova il router Cloud
    • ROUTER_NAME: il nome del router Cloud
    • BGP_PEERS: i contenuti del nuovo array di peer BGP

    L'esempio seguente contiene due peer BGP con annunci personalizzati:

        {
          "name": "peer-1",
          "interfaceName": "if-peer-1",
          "ipAddress": "169.254.10.1",
          "peerIpAddress": "169.254.10.2",
          "peerAsn": 64512,
          "enableIpv6": true,
          "advertisedRoutePriority": 100,
          "advertiseMode": "CUSTOM",
          "advertisedGroups": ["ALL_SUBNETS"],
          "advertisedIpRanges": [
            {
              "range": "1.2.3.4",
              "description": "First example range"
            },
            {
              "range": "6.7.0.0/16",
              "description": "Second example range"
            },
            {
              "range": "2001:db8:abcd:12::/64",
              "description: "Third example range"
            }
          ]
        },
        {
          "name": "peer-2",
          "interfaceName": "if-peer-2",
          "ipAddress": "169.254.20.1",
          "peerIpAddress": "169.254.20.2",
          "peerAsn": 64513,
          "advertisedRoutePriority": 100,
          "advertiseMode": "CUSTOM",
          "advertisedIpRanges": [
            {
              "range": "192.168.10.0/24",
              "description": "Fourth example range"
            }
          ]
        }
    

Passaggi successivi