Annuncio di subnet VPC specifiche

Puoi creare route annunciate personalizzate per limitare le subnet nella tua rete Virtual Private Cloud (VPC) pubblicizzate dal router Cloud. Le subnet che pubblicizzi sono le uniche visibili ai client on-premise. Il router Cloud non pubblicizza in modo dinamico le nuove subnet, a meno che non configuri il router Cloud per annunciare tutte le subnet. Se scegli di pubblicizzare solo subnet specifiche e vuoi promuovere nuove subnet, devi aggiungerle come route annunciate personalizzate.

Per le sessioni BGP abilitate per IPv6, puoi configurare route annunciate personalizzate per intervalli di subnet IPv6 interni ed esterni specifici. Per informazioni sui tipi di subnet IPv6, consulta Intervalli di subnet IPv6.

Per specificare 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

Per utilizzare gli esempi delle righe di comando presenti in questa guida, segui questi passaggi:

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

API

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

Specifica route annunciate personalizzate su un router Cloud

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

Console

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

    Vai a Router Cloud

  2. Seleziona il router Cloud da aggiornare.

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

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

  5. Se è selezionata la casella di controllo Pubblicizza tutte le subnet visibili al router Cloud, deselezionala.

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

  7. Configura la route annunciata personalizzata:

    • Origine: seleziona un elenco predefinito di subnet. Il router Cloud elenca tutte le subnet disponibili, che dipende dalla modalità di routing dinamico della rete VPC.
    • Intervallo di indirizzi IP: puoi modificare l'intervallo IP della subnet pubblicizzato. Ad esempio, puoi specificare un intervallo più ristretto in modo che il router Cloud pubblicizzi parte della subnet. Puoi specificare intervalli IP personalizzati sia IPv4 che IPv6. Tuttavia, gli intervalli personalizzati IPv6 sono pubblicizzati solo nelle sessioni BGP in cui è abilitato IPv6.
    • Descrizione: aggiungi una descrizione che ti aiuti a identificare lo scopo di questa route pubblicizzata personalizzata, poi fai clic su Fine.
  8. Dopo aver aggiunto le route annunciate personalizzate, fai clic su Salva.

gcloud

Prima di iniziare, registra gli intervalli IP delle subnet da pubblicizzare.

Esegui il comando update. Per specificare gli intervalli IP di subnet da pubblicizzare, utilizza il flag --set-advertisement-ranges. Per aggiungere intervalli IP agli annunci esistenti, utilizza il flag --add-advertisement-ranges.

  1. Utilizza il flag --set-advertisement-ranges; tutte le route annunciate personalizzate esistenti vengono sostituite:

    gcloud compute routers update ROUTER_NAME \
       --advertisement-mode custom \
       --set-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. Puoi specificare intervalli IP personalizzati sia IPv4 che IPv6. Tuttavia, gli intervalli personalizzati IPv6 sono pubblicizzati solo nelle sessioni BGP in cui è abilitato IPv6.

    L'esempio seguente aggiorna il router Cloud my-router per pubblicizzare le subnet 10.0.0.0/24 e 10.0.10.0/24; le route annunci personalizzate esistenti vengono sostituite:

    gcloud compute routers update my-router \
       --advertisement-mode custom \
       --set-advertisement-ranges 10.0.0.0/24,10.0.10.0/24
    

    L'esempio seguente aggiorna il router Cloud my-router per pubblicizzare le subnet IPv4 10.0.0.0/24 e10.0.10.0/24, oltre alla subnet IPv6 2001:db8:abcd:12::/64:

    gcloud compute routers update my-router \
       --advertisement-mode custom \
       --set-advertisement-ranges 10.0.0.0/24,10.0.10.0/24,2001:db8:abcd:12::/64
    

    Il router Cloud annuncia gli intervalli IPv6 solo nelle sessioni BGP abilitate per IPv6.

  2. L'esempio seguente utilizza il flag --add-advertisement-ranges per aggiungere intervalli IP a un annuncio esistente:

    gcloud compute routers update my-router \
       --add-advertisement-ranges 10.0.20.0/24
    

    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 abilitate per IPv6.

Se il gruppo di annunci del router Cloud include tutte le subnet, rimuovilo per evitare che il router Cloud pubblicizzi subnet aggiuntive. I gruppi pubblicitari sono intervalli IP definiti da Google annunciati dinamicamente dal router Cloud. Per un elenco di tutti i gruppi pubblicitari, consulta il flag set-advertisement-groups nella documentazione dell'SDK di Google.

  1. L'esempio seguente utilizza il comando describe per verificare le route annunciate del router Cloud:

    gcloud compute routers describe my-router
    
  2. Se l'output contiene il campo advertisedGroups con il valore all_subnets, rimuovilo. L'esempio seguente utilizza il comando update con il flag --remove-advertisement-groups:

    gcloud compute routers update my-router \
       --remove-advertisement-groups all_subnets
    

API

Utilizza il metodo routers.patch per aggiornare il campo bgp.advertisedIpRanges[]. Potresti anche dover aggiornare il campo bgp.advertisedGroups[] se al momento ha il valore ALL_SUBNETS.

I campi bgp.advertisedGroups[] e bgp.advertisedIpRanges[] accettano array di gruppi pubblicizzati 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 array correnti dei gruppi pubblicizzati e gli intervalli IP annunciati sul router. Per maggiori dettagli, consulta Visualizzare lo stato e le route del router Cloud.

  2. Invia una richiesta PATCH con nuovi array di gruppi pubblicizzati e intervalli di indirizzi IP pubblicizzati:

    • Aggiungi al campo bgp.advertisedIpRanges[] eventuali intervalli di indirizzi IP della subnet che vuoi sul router.
    • Se al momento il campo advertisedGroups[] specifica il valore ALL_SUBNETS, rimuovilo inviando un array vuoto come mostrato nell'esempio seguente. Ciò impedisce al router Cloud di pubblicizzare subnet aggiuntive.
    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME
    {
      "bgp": {
        "advertisedGroups": [],
        "advertisedIpRanges": [
        ADVERTISED_IP_RANGES
       ]
     }
    }
    

    Sostituisci quanto segue:

    • PROJECT_ID: il progetto che contiene il router Cloud
    • REGION: la regione in cui si trova il router Cloud
    • ROUTER_NAME: il nome del router Cloud
    • ADVERTISED_IP_RANGES: i contenuti del nuovo array di intervalli di indirizzi IP. Puoi specificare intervalli di indirizzi IP IPv6 personalizzati oltre agli intervalli di indirizzi IPv4. Tuttavia, gli intervalli IPv6 vengono pubblicizzati solo se abiliti lo scambio IPv6 per questa sessione BGP.

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

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

Specifica le route annunciate personalizzate per una sessione BGP

Per specificare route annunciate personalizzate per una sessione BGP esistente, segui questi passaggi.

Console

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

    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, seleziona Crea route personalizzate.

  6. Se è selezionata la casella di controllo Pubblicizza tutte le subnet visibili al router Cloud, deselezionala.

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

  8. Configura la route annunciata personalizzata:

    • Origine: seleziona un elenco predefinito di subnet. Il router Cloud elenca tutte le subnet disponibili, che dipende dalla modalità di routing dinamico della rete VPC.
    • Intervallo di indirizzi IP: puoi modificare l'intervallo IP della subnet pubblicizzato. Ad esempio, puoi specificare un intervallo più ristretto in modo che il router Cloud pubblicizzi parte della subnet. Puoi specificare intervalli di indirizzi IP IPv6 personalizzati oltre agli intervalli di indirizzi IPv4. Tuttavia, gli intervalli IPv6 vengono pubblicizzati solo se abiliti lo scambio IPv6 per questa sessione BGP.
    • Descrizione: aggiungi una descrizione che ti aiuti a identificare lo scopo di questa route pubblicizzata personalizzata, poi fai clic su Fine.
  9. Dopo aver aggiunto le route personalizzate, fai clic su Salva.

gcloud

Prima di iniziare, registra gli intervalli IP delle subnet da pubblicizzare.

Esegui il comando update-bgp-peer. Per specificare gli intervalli IP di subnet da pubblicizzare, usa il flag --set-advertisement-ranges. Per aggiungere intervalli IP agli annunci esistenti, utilizza il flag --add-advertisement-ranges.

  1. Usa il flag --set-advertisement-ranges; gli eventuali annunci personalizzati esistenti vengono sostituiti:

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

    Sostituisci quanto segue:

    • ROUTER_NAME: il nome del router Cloud
    • PEER_NAME: il nome del peer BGP
    • Facoltativamente, aggiungi il flag --enable-ipv6 se aggiungi intervalli IPv6 personalizzati.
    • 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 sono annunciati solo nelle sessioni BGP in cui è abilitato IPv6.

    L'esempio seguente aggiorna la sessione BGP my-bgp-session sul router Cloud my-router per pubblicizzare le subnet 10.0.0.0/24, 10.0.10.0/24 e 2001:db8:abcd:12::/64; le route annunci personalizzate esistenti vengono sostituite:

    gcloud compute routers update-bgp-peer my-router \
       --peer-name my-bgp-session \
       --enable-ipv6 \
       --advertisement-mode custom \
       --set-advertisement-ranges 10.0.0.0/24,10.0.10.0/24
    
  2. L'esempio seguente utilizza il flag --add-advertisement-ranges per aggiungere intervalli IP a un annuncio esistente:

    gcloud compute routers update-bgp-peer my-router \
       --peer-name my-bgp-session \
       --add-advertisement-ranges 10.0.20.0/24
    

    L'esempio seguente aggiunge l'indirizzo IPv6 personalizzato 2001:db8:abcd:12::/64 alle route annunciate 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
    

Se il gruppo di annunci della sessione BGP include tutte le subnet, rimuovilo per evitare che il router Cloud pubblicizzi subnet aggiuntive. I gruppi pubblicitari sono intervalli IP definiti da Google annunciati in modo dinamico dal router Cloud. Per un elenco di tutti i gruppi pubblicitari, consulta il flag set-advertisement-groups nella documentazione dell'SDK di Google.

  1. L'esempio seguente utilizza il comando describe per verificare le route annunciate del router Cloud:

    gcloud compute routers describe my-router
    
  2. Se la sessione BGP correlata contiene il campo advertisedGroups con il valore all_subnets, rimuovilo. L'esempio seguente utilizza il comando update con il flag --remove-advertisement-groups:

    gcloud compute routers update-bgp-peer my-router \
       --peer-name my-bgp-session \
       --remove-advertisement-groups all_subnets
    

API

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

Il campo bgpPeers[] accetta un array di peer BGP. Quando 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 attuale di peer BGP per il router. Per maggiori dettagli, vedi Visualizzare la configurazione delle sessioni BGP.

  2. Invia una richiesta PATCH con un nuovo array di peer BGP. Per ogni peer BGP per cui vuoi aggiungere route annunciate personalizzate, segui questi passaggi:

    • Aggiungi al campo bgpPeers[].advertisedIpRanges[] qualsiasi annuncio di intervalli di indirizzi IP di subnet che vuoi.
    • Se il campo bgpPeers[].advertisedGroups[] attualmente specifica il valore ALL_SUBNETS, rimuovilo per impedire alla sessione BGP di pubblicizzare subnet aggiuntive.
    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 il 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 route annunciate personalizzate:

        {
          "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": [],
          "advertisedIpRanges": [
            {
              "range": "10.0.0.0/24",
              "description": "First example subnet"
            },
            {
              "range": "10.0.10.0/24",
              "description": "Second example subnet"
            },
            {
              "range": "2001:db8:abcd:12::/64",
              "description: "Third example subnet"
            }
          ]
        },
        {
          "name": "peer-2",
          "interfaceName": "if-peer-2",
          "ipAddress": "169.254.20.1",
          "peerIpAddress": "169.254.20.2",
          "peerAsn": 64513,
          "advertisedRoutePriority": 100,
          "advertiseMode": "CUSTOM",
          "advertisedGroups": [],
          "advertisedIpRanges": [
            {
              "range": "10.0.20.0/24",
              "description": "Fourth example subnet"
            }
          ]
        }
    

Passaggi successivi