Annuncio di subnet VPC specifiche

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

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, consulta Intervalli di subnet IPv6.

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. Se la casella di controllo Annuncia 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. Router Cloud elenca tutte le subnet a sua disposizione, il che dipende dalla 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 pubblicizzi parte della subnet. 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

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

Esegui il comando update. Per specificare gli intervalli IP delle sottoreti 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. Eventuali route pubblicizzati personalizzati esistenti vengono sostituiti:

    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 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.

    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 annunciate personalizzate 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'
    

    Il seguente esempio aggiorna il router Cloud my-router in modo da annunci 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 pubblicizza gli intervalli IPv6 solo nelle sessioni BGP attivate per IPv6.

  2. L'esempio seguente utilizza il flag --add-advertisement-ranges per agganciare 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 pubblicizza gli intervalli IPv6 solo nelle sessioni BGP attivate per IPv6.

Se il gruppo di annunci del router Cloud include tutte le subnet, rimuovilo per impedire al router Cloud di pubblicizzare subnet aggiuntive. I gruppi di annunci sono intervalli IP definiti da Google che il router Cloud annuncia dinamicamente. 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 i percorsi pubblicizzati del 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 al momento 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 ottenere gli attuali array di gruppi pubblicizzati e gli intervalli IP pubblicizzati sul router. Per maggiori dettagli, consulta 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 della subnet che preferisci sul router al bgp.advertisedIpRanges[] campo.
    • Se al momento il campo advertisedGroups[] specifica il valore ALL_SUBNETS, rimuovilo inviando un array vuoto come mostrato nell'esempio seguente. In questo modo, router Cloud non pubblicizza altre sottoreti.
    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 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 attivi 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"
        }
    

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

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

  8. Configura la route pubblicizzata personalizzata:

    • Origine: seleziona un elenco predefinito di subnet. Router Cloud elenca tutte le subnet a sua disposizione, il 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 attivi 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 che ti aiuti a identificare lo scopo di questo percorso pubblicizzato personalizzato e poi fai clic su Fine.

  9. Dopo aver aggiunto i percorsi personalizzati, 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 delle 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. 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
    • Se vuoi, 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.

      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.

    Il seguente esempio aggiorna la sessione BGP my-bgp-session sul router Cloud my-router per pubblicizzare le sottoreti 192.0.2.0/24,198.51.100.0/24 e 2001:db8:abcd:12::/64. Le route pubblicizzate 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 agganciare 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 sottoreti,rimuovilo per impedire al router Cloud di pubblicizzare altre sottoreti. I gruppi di annunci sono intervalli IP definiti da Google che il router Cloud annuncia dinamicamente. 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 i percorsi pubblicizzati 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. 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 route pubblicizzati personalizzati:

    • Aggiungi gli annunci di intervalli di indirizzi IP della subnet che vuoi inserire nel 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 al momento il campo bgpPeers[].advertisedGroups[] specifica il valore ALL_SUBNETS, rimuovilo per impedire alla sessione BGP di pubblicizzare sottoreti 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 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 pubblicizzati 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": [],
          "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