Annuncio di subnet VPC specifiche

Puoi creare route annunciate personalizzate per limitare le subnet nella 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 nuove subnet, a meno che non configuri il router Cloud per pubblicizzare tutte le subnet. Se scegli di pubblicizzare solo subnet specifiche e vuoi pubblicizzare 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 specifici interni (ULA) ed esterni (GUA). 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 un router Cloud o Stabilire sessioni BGP.

Prima di iniziare

gcloud

Se vuoi utilizzare gli esempi di riga di comando di questa guida, procedi nel seguente modo:

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

API

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

Specifica le 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 ai 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 la casella di controllo Pubblicizza tutte le subnet visibili al router Cloud è selezionata, deselezionala.

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

  7. Configura la route pubblicizzata personalizzata:

    • Origine: seleziona un elenco predefinito di subnet. Il router Cloud elenca tutte le subnet disponibili, a seconda della 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 sia IPv6. Tuttavia, gli intervalli personalizzati IPv6 vengono pubblicizzati solo nelle sessioni BGP in cui è abilitato il protocollo IPv6.
    • Descrizione: aggiungi una descrizione per identificare lo scopo di questa route pubblicizzata personalizzata, quindi fai clic su Fine.
  8. Dopo aver completato l'aggiunta delle 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, usa 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; eventuali 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 sia IPv6. Tuttavia, gli intervalli personalizzati IPv6 vengono pubblicizzati solo nelle sessioni BGP in cui è abilitato il protocollo 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 esistenti annunciate personalizzate 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 pubblicizza intervalli IPv6 solo nelle sessioni BGP abilitate per IPv6.

  2. Nell'esempio seguente viene utilizzato 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
    

    Nell'esempio seguente viene aggiunto 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 intervalli IPv6 solo nelle sessioni BGP abilitate per IPv6.

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

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

    gcloud compute routers describe my-router
    
  2. Se l'output contiene il campo advertisedGroups con il valore all_subnets, rimuovilo. Nell'esempio seguente viene utilizzato 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[]. Potrebbe essere necessario aggiornare anche il campo bgp.advertisedGroups[] se attualmente ha un 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 ricevere gli array attuali dei gruppi pubblicizzati e degli intervalli IP pubblicizzati 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[] gli 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. In questo modo si 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 personalizzati IPv6 oltre a 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 di 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 ai 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 la casella di controllo Pubblicizza tutte le subnet visibili al router Cloud è selezionata, deselezionala.

  7. Seleziona Aggiungi route personalizzata per aggiungere un percorso pubblicizzato.

  8. Configura la route pubblicizzata personalizzata:

    • Origine: seleziona un elenco predefinito di subnet. Il router Cloud elenca tutte le subnet disponibili, a seconda della 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 personalizzati IPv6 oltre gli intervalli di indirizzi IPv4. Tuttavia, gli intervalli IPv6 vengono pubblicizzati solo se abiliti lo scambio IPv6 per questa sessione BGP.
    • Descrizione: aggiungi una descrizione per identificare lo scopo di questa route pubblicizzata personalizzata, quindi 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. Utilizza 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 tuo peer BGP
    • Facoltativamente, aggiungi il flag --enable-ipv6 se stai aggiungendo intervalli IPv6 personalizzati.
    • ADVERTISED_IP_RANGES: i contenuti del nuovo array di intervalli di indirizzi IP. Puoi specificare intervalli IP personalizzati sia IPv4 sia IPv6. Tuttavia, gli intervalli personalizzati IPv6 vengono pubblicizzati 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 annunciate 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. Nell'esempio seguente viene utilizzato 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
    

    Nell'esempio seguente viene aggiunto l'indirizzo IPv6 personalizzato 2001:db8:abcd:12::/64 alle route annunciate dal 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 pubblicitario della sessione BGP include tutte le subnet, rimuovilo per impedire al router Cloud di pubblicizzare subnet aggiuntive. I gruppi di annunci pubblicitari sono intervalli IP definiti da Google che il router Cloud pubblicizza in modo dinamico. Per un elenco di tutti i gruppi pubblicitari, vedi il flag set-advertisement-groups nella documentazione dell'SDK Google.

  1. L'esempio seguente utilizza il comando describe per controllare le route annunciate dal 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

Usa 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 dei peer BGP per il router. Per maggiori dettagli, consulta 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 route annunciate personalizzate, segui questi passaggi:

    • Aggiungi eventuali annunci relativi all'intervallo di indirizzi IP di una subnet che vuoi inserire nel campo bgpPeers[].advertisedIpRanges[].
    • Se il campo bgpPeers[].advertisedGroups[] attualmente specifica il valore ALL_SUBNETS, rimuovilo per impedire alla sessione BGP di pubblicizzare altre subnet.
    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