Annuncio di subnet VPC specifiche

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

Per le sessioni BGP abilitate per IPv6, puoi configurare route pubblicizzate personalizzate per intervalli di subnet IPv6 interni (ULA) ed esterni (GUA) specifici. Per informazioni sui tipi di subnet IPv6, vedi Intervalli di subnet IPv6.

Per specificare route annunciate personalizzate quando crei un router Cloud o configuri una sessione BGP, consulta Crea router Cloud o Stabilisci sessioni BGP.

Prima di iniziare

gcloud

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

  1. Installa o esegui l'aggiornamento all'ultima versione 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.

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

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

  7. Configura la route annunciata personalizzata:

    • Origine: seleziona un elenco predefinito di subnet. 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 di indirizzi IP della subnet pubblicizzato. Ad esempio, puoi specificare un intervallo più ristretto in modo che il router Cloud pubblicizzi una 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 IPv6 è abilitato.

      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 per identificare lo scopo di questa route pubblicizzata personalizzata, quindi fai clic su Fine.

  8. Dopo aver aggiunto le route pubblicizzate personalizzate, fai clic su Salva.

gcloud

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

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

  1. Utilizza il flag --set-advertisement-ranges; 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 vengono annunciati solo nelle sessioni BGP in cui IPv6 è abilitato.

      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 le subnet 192.0.2.0/24 e 198.51.100.0/24; le route personalizzate annunciate esistenti vengono sostituite:

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

    L'esempio seguente aggiorna il router Cloud my-router per annunciare le subnet IPv4 192.0.2.0/24 e 198.51.100.0/24, oltre alla subnet IPv6 2001:db8:abcd:12::/64:

    gcloud compute routers update my-router \
       --advertisement-mode=custom \
       --set-advertisement-ranges='192.0.2.0/24,198.51.100.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='203.0.113.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 annuncia gli intervalli IPv6 solo nelle sessioni BGP abilitate per IPv6.

Se il gruppo di annunci del router Cloud include tutte le subnet, rimuovilo per impedire al router Cloud di annunciare subnet aggiuntive. I gruppi di annunci sono intervalli IP definiti da Google che il router Cloud annuncia in modo dinamico. Per un elenco di tutti i gruppi di annunci, consulta il flag set-advertisement-groups nella documentazione dell'SDK Google.

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

    gcloud compute routers describe my-router
    
  2. Se l'output contiene il campo advertisedGroups con il valore all_subnets, rimuovilo. Il seguente esempio 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 attualmente ha un valore di 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 di gruppi pubblicizzati e intervalli IP pubblicizzati sul router. Per i dettagli, vedi Visualizzazione dello stato e delle route del router Cloud.

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

    • Aggiungi gli intervalli di indirizzi IP di subnet che vuoi sul router al campo bgp.advertisedIpRanges[].
    • Se il campo advertisedGroups[] attualmente specifica il valore ALL_SUBNETS, rimuovilo inviando un array vuoto come mostrato nell'esempio seguente. In questo modo, router Cloud non pubblicizza sottoreti 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 agli intervalli di indirizzi IPv4. Tuttavia, gli intervalli IPv6 vengono annunciati solo se abiliti lo scambio IPv6 per questa sessione BGP.

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

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

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

  8. Configura la route annunciata personalizzata:

    • Origine: seleziona un elenco predefinito di subnet. 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 annunciato. Ad esempio, puoi specificare un intervallo più ristretto in modo che il router Cloud annunci una parte della subnet. Puoi specificare intervalli di indirizzi IP personalizzati IPv6 oltre agli intervalli di indirizzi IPv4. Tuttavia, gli intervalli IPv6 vengono annunciati solo se abiliti lo scambio IPv6 per questa sessione BGP.

      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 per identificare lo scopo di questa route pubblicizzata personalizzata, quindi fai clic su Fine.

  9. Dopo aver terminato l'aggiunta delle route personalizzate, fai clic su Salva.

gcloud

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

Esegui il comando update-bgp-peer. Per specificare gli intervalli IP della subnet da pubblicizzare, utilizza il flag --set-advertisement-ranges. Per aggiungere intervalli IP ad annunci esistenti, utilizza 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-ranges=ADVERTISED_IP_RANGES
    

    Sostituisci quanto segue:

    • ROUTER_NAME: il nome del router Cloud
    • PEER_NAME: il nome del peer BGP
    • (Facoltativo) 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 che IPv6. Tuttavia, gli intervalli personalizzati IPv6 vengono annunciati solo nelle sessioni BGP in cui IPv6 è abilitato.

      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 la sessione BGP my-bgp-session sul router Cloud my-router per annunciare le subnet 192.0.2.0/24, 198.51.100.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='192.0.2.0/24,198.51.100.0/24,2001:db8:abcd:12::/64'
    
  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='203.0.113.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 impedire al router Cloud di annunciare subnet aggiuntive. I gruppi di annunci sono intervalli IP definiti da Google che il router Cloud annuncia in modo dinamico. Per un elenco di tutti i gruppi di annunci, consulta il flag set-advertisement-groups nella documentazione dell'SDK Google.

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

    • Aggiungi eventuali annunci di intervalli di indirizzi IP della subnet che vuoi al campo bgpPeers[].advertisedIpRanges[].

      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.

    • 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 pubblicizzate 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": "192.0.2.0/24",
              "description": "First example subnet"
            },
            {
              "range": "198.51.100.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": "203.0.113.0/24",
              "description": "Fourth example subnet"
            }
          ]
        }
    

Passaggi successivi