Stabilisci la connettività utilizzando un'appliance di terze parti

Mantieni tutto organizzato con le raccolte Salva e classifica i contenuti in base alle tue preferenze.

Network Connectivity Center consente di utilizzare un'appliance virtuale di rete di terze parti per stabilire una connettività tra un sito esterno e le risorse di rete Virtual Private Cloud (VPC). Per stabilire la connettività in questo modo, utilizza la funzionalità appliance del router.

L'appliance router è uno dei diversi tipi di spoke supportati per il Network Connectivity Center. Per informazioni su Network Connectivity Center, consulta la panoramica del Network Connectivity Center. Per ulteriori informazioni sull'appliance router, consulta la Panoramica dell'appliance router.

Esempio di configurazione

Nella seguente topologia, un sito esterno si connette a due reti VPC utilizzando uno spoke dell'appliance router.

La VM che ospita l'istanza dell'appliance router ha un'interfaccia in ogni rete VPC. L'istanza dell'appliance router mantiene le sessioni BGP (Border Gateway Protocol) con i router Cloud in entrambe queste reti.

Ogni router Cloud ha due interfacce. L'interfaccia dell'appliance router in ogni rete peer con entrambe le interfacce del router Cloud appropriato, per un totale di quattro sessioni di peering.

Creazione di sessioni BGP per le appliance del router
Topologia di esempio sito-cloud (fai clic per ingrandire)

Attività obbligatorie

Per impostare la configurazione di esempio, assicurati di soddisfare i prerequisiti per eseguire questa procedura e poi di completare le attività richieste:

  1. Crea la macchina virtuale (VM) Compute Engine che funge da istanza dell'appliance router. Puoi creare la VM utilizzando una soluzione partner supportata o la tua immagine personalizzata.

  2. Assicurati che l'istanza dell'appliance router sia accessibile al traffico BGP tramite la porta TCP 179. Per renderla accessibile, potrebbe essere necessario creare regole firewall.

  3. Crea due spoke, uno in ogni rete VPC. Ogni spoke utilizza la stessa istanza dell'appliance router della risorsa di supporto.

  4. Configura due router Cloud, uno in ogni rete VPC. Per ogni router Cloud, questa attività include le seguenti attività secondarie:

    1. Crea un router Cloud nella stessa regione dell'istanza dell'appliance router.

    2. Crea due interfacce su ogni router Cloud.

    3. Configura il peering BGP su ogni router Cloud.

  5. Configura il peering BGP sull'istanza dell'appliance router.

Il modo in cui completi queste attività può variare notevolmente. Ad esempio, se crei un'istanza dell'appliance router utilizzando una soluzione partner, alcune delle attività successive potrebbero essere automatizzate.

Prima di iniziare

Prima di iniziare, consulta le seguenti sezioni.

Crea o seleziona un progetto

Per semplificare la configurazione di Network Connectivity Center, inizia identificando un progetto valido.

  1. Accedi al tuo account Google Cloud. Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti gratuiti per l'esecuzione, il test e il deployment dei carichi di lavoro.
  2. Nella pagina del selettore dei progetti in Google Cloud Console, seleziona o crea un progetto Google Cloud.

    Vai al selettore progetti

  3. Assicurati che la fatturazione sia attivata per il tuo progetto Cloud. Scopri come verificare se la fatturazione è abilitata su un progetto.

  4. Installa e inizializza Google Cloud CLI.
  5. Nella pagina del selettore dei progetti in Google Cloud Console, seleziona o crea un progetto Google Cloud.

    Vai al selettore progetti

  6. Assicurati che la fatturazione sia attivata per il tuo progetto Cloud. Scopri come verificare se la fatturazione è abilitata su un progetto.

  7. Installa e inizializza Google Cloud CLI.
  1. Se utilizzi Google Cloud CLI, imposta il tuo ID progetto eseguendo il comando seguente. Le istruzioni gcloud in questa pagina presuppongono che tu abbia impostato l'ID progetto.
    gcloud config set project PROJECT_ID
        
  1. Verifica che l'ID sia stato impostato eseguendo il comando seguente:
    gcloud config list --format='text(core.project)'
        

Abilita l'API Network Connectivity

Prima di poter eseguire qualsiasi attività utilizzando Network Connectivity Center, devi abilitare l'API Network Connectivity.

console

Per abilitare l'API Network Connectivity:

  1. In Google Cloud Console, vai alla pagina Centro connettività di rete.

    Vai al Centro connettività di rete

  2. Fai clic su Abilita.

In alternativa, puoi abilitare l'API utilizzando la libreria API della console di Google Cloud, come descritto in Abilitare le API.

Accedi

Per utilizzare Network Connectivity Center, devi disporre delle autorizzazioni descritte in Ruoli e autorizzazioni.

Quando configuri Network Connectivity Center, utilizzi anche risorse di Google Cloud come reti VPC, subnet e regole firewall. Per ulteriori informazioni sulle autorizzazioni necessarie per utilizzare queste risorse, consulta la documentazione per il controllo dell'accesso di Compute Engine.

Indirizzi IP e istanze dell'appliance router

Per configurare un'istanza dell'appliance router, devi stabilire il peering tra l'istanza e il router Cloud. Per configurare il peering, la VM deve utilizzare un indirizzo IP interno RFC 1918. Non puoi eseguire il peering di queste due risorse se la VM utilizza un tipo di indirizzo diverso. Inoltre, entrambi gli indirizzi IP devono trovarsi nella stessa area geografica.

Per informazioni su come visualizzare gli indirizzi IP di una VM, consulta i seguenti documenti:

Per definizioni e informazioni dettagliate sui tipi di indirizzi IP, consulta la pagina Indirizzi IP.

Prenota un indirizzo IP interno statico (consigliato)

Ti consigliamo di fornire all'istanza dell'appliance router un indirizzo IP interno statico in modo che non cambi durante il riavvio. Se l'indirizzo cambia, il peering BGP non riesce.

Sono disponibili diverse opzioni per l'assegnazione di un indirizzo IP riservato. Puoi prenotare l'indirizzo IP in anticipo. In alternativa, puoi prenotare l'indirizzo IP quando crei la VM. Se assegni per errore alla VM un indirizzo temporaneo, puoi in seguito convertire l'indirizzo in un indirizzo statico. Per ulteriori informazioni sugli indirizzi IP statici, consulta Prenotazione di indirizzi IP statici.

Indirizzi IP per il peering BGP

Un'istanza dell'appliance router utilizza il proprio indirizzo IP interno per eseguire il peering con il router Cloud. L'istanza non utilizza un indirizzo locale rispetto al collegamento (ad esempio 169.254.x.x) per il peering BGP.

Analogamente, il router Cloud utilizza due indirizzi IP interni RFC 1918 per eseguire il peering con l'istanza dell'appliance router, un indirizzo per ogni interfaccia. Questi indirizzi IP possono essere assegnati manualmente o automaticamente dalla subnet che contiene sia l'interfaccia dell'istanza dell'appliance router che l'interfaccia del router Cloud.

Creare risorse VPC

Le seguenti sezioni descrivono come creare reti e subnet VPC.

Crea due reti VPC

Se non lo hai già fatto, crea due reti VPC. Imposta la modalità di routing dinamico di ciascuna rete su global.

Per ulteriori informazioni sulla creazione di reti VPC, consulta la sezione Creazione di reti.

console

Per creare una rete VPC personalizzata utilizzando Google Cloud Console, consulta la sezione Creare una rete in modalità personalizzata. Assicurati di impostare la modalità di routing dinamico su Globale. Se vuoi seguire le convenzioni di denominazione utilizzate nella configurazione di esempio, chiama le reti network-a e network-b.

gcloud

Per creare una rete VPC personalizzata, inserisci questo comando:

  gcloud compute networks create NAME \
      --subnet-mode custom \
      --bgp-routing-mode global

Sostituisci NAME con il nome della rete VPC, ad esempio network-a o network-b.

Server

Per creare una rete VPC personalizzata mediante l'API Compute Engine, consulta Utilizzo di VPC.

Crea una subnet

Crea una subnet in network-a e una subnet in network-b.

console

Per aggiungere una subnet utilizzando Google Cloud Console, consulta la sezione Aggiungere subnet.

Se vuoi seguire le convenzioni di denominazione utilizzate nella configurazione di esempio, utilizza i valori seguenti per la subnet in network-a:

  • Nome: subnet-a
  • Regione: us-central1
  • Intervallo: 10.1.3.0/24

Utilizza i valori seguenti per la subnet in network-b:

  • Nome: subnet-b
  • Regione: us-central1
  • Intervallo: 192.168.10.0/24

gcloud

Per creare una subnet VPC, inserisci questo comando:

  gcloud compute networks subnets create NAME \
      --network=NETWORK \
      --region=REGION \
      --range=RANGE

Sostituisci quanto segue:

  • NAME: il nome della subnet che contiene la VM dell'appliance router, ad esempio subnet-a o subnet-b
  • NETWORK: la rete che contiene la subnet, ad esempio network-a o network-b
  • REGION: l'area geografica che contiene la subnet, ad esempio us-central1
  • RANGE: intervallo IP della subnet nella notazione CIDR, ad esempio 10.1.3.0/24 o 192.168.10.0/24

Server

Per creare una subnet VPC utilizzando l'API Compute Engine, consulta Utilizzo di VPC.

Crea la VM dell'appliance router

Crea la VM di Compute Engine che funge da istanza dell'appliance router. La VM è rappresentata nella topologia di esempio come router-app-a. Ha due interfacce, una in network-a e una in network-b.

Quando crei la VM, devi selezionare un'immagine dell'appliance virtuale di rete. Questa immagine può essere:

Per ulteriori informazioni sulla specifica delle immagini, consulta le seguenti risorse:

Per informazioni dettagliate sulla creazione di una VM, consulta la pagina Creazione e avvio di un'istanza VM.

Gli esempi in questa sezione presuppongono che siano stati riservati indirizzi IP per l'istanza dell'appliance router. Per ulteriori informazioni, consulta gli indirizzi IP per l'appliance router.

console

Per creare la VM utilizzata nella configurazione di esempio, consulta Creazione e avvio di un'istanza VM. Quando crei la VM, effettua le seguenti scelte:

  • Se vuoi seguire le convenzioni di denominazione utilizzate nella configurazione di esempio, utilizza i valori seguenti:

    • Nome: router-app-a
    • Regione:us-central1
    • Zona: us-central1-a
  • Per selezionare un'immagine, vai all'area Disco di avvio della pagina, fai clic su Cambia e vai all'immagine appropriata per la VM.

  • Espandi Networking, dischi, sicurezza, gestione, single-tenancy, quindi espandi Networking. Utilizza i seguenti valori:

    • In Inoltro IP, seleziona Attiva.
    • In Interfacce di rete, crea due interfacce: una in network-a e una in network-b. Per creare ciascuna interfaccia, seleziona la rete appropriata, quindi fai clic su Aggiungi interfaccia di rete. Compila i seguenti campi:
      • Seleziona la subnet in cui vuoi individuare l'istanza dell'appliance router, ad esempio subnet-a o subnet-b.
      • In IP interno principale, seleziona l'indirizzo IP interno RFC 1918 che vuoi utilizzare, ad esempio, 10.1.3.8 o 192.168.10.3.
      • Sotto Livello di servizio di rete, seleziona Premium. Questa scelta massimizza la misura in cui il traffico utilizza la rete di Google.

gcloud

Per creare le due VM dell'appliance router utilizzate nella configurazione di esempio, esegui due volte il comando seguente. Sostituisci INSTANCE_NAME con il nome della VM che funge da istanza dell'appliance router.

Nell'esempio seguente, assegni l'indirizzo IP interno statico e l'indirizzo IP esterno statico prenotato in precedenza alla VM. Devi specificare anche il progetto che contiene un'immagine fornita dal fornitore per la VM e il nome dell'immagine.

  gcloud compute instances create INSTANCE_NAME \
      --project=PROJECT \
      --zone=ZONE \
      --machine-type=MACHINE_TYPE \
      --network-tier=NETWORK_TIER \
      --network-interface=[subnet=SUBNET,private-network-ip=INTERNAL_IP_ADDRESS] \
      --can-ip-forward \
      --image-project=IMAGE_PROJECT \
      --image=IMAGE

Sostituisci quanto segue:

  • INSTANCE_NAME: il nome della VM che funge da istanza dell'appliance router, ad esempio router-app-a o router-app-b
  • PROJECT: il nome del progetto che contiene le VM dell'appliance router, ad esempio my-project
  • ZONE: la zona Google Cloud in cui si trova la VM, ad esempio us-west1-a
  • MACHINE_TYPE: la risorsa del tipo di macchina da utilizzare per la VM, ad esempio n1-standard-2
  • NETWORK_TIER: quando crei le VM dell'appliance router, imposta il livello di rete su premium; questa scelta massimizza la misura in cui il traffico utilizza la rete di Google
  • SUBNET: la subnet assegnata all'interfaccia di rete principale della VM, ad esempio subnet-a-1
  • INTERNAL_IP_ADDRESS: l'indirizzo IP interno di RFC 1918 assegnato all'interfaccia VM che si connette al router Cloud, ad esempio 10.0.1.10
  • IMAGE_PROJECT: il nome del progetto che contiene l'immagine specificata nel campo image, ad esempio debian-cloud
  • IMAGE: il nome dell'immagine da installare, ad esempio debian-10-buster-v20210217

Server

Per creare le due VM dell'appliance router utilizzate nella configurazione di esempio, utilizza il metodo compute.instances.insert.

Per ulteriori metodi di creazione, consulta Creazione e avvio di un'istanza VM.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/instances
 {
   "machineType": "zones/ZONE/machineTypes/MACHINE_TYPE",
   "name": "INSTANCE_NAME",
   "canIpForward": "true",
   "networkInterfaces": [{
     "subnetwork": "regions/REGION/subnetworks/SUBNET",
     "networkIP": "INTERNAL_IP_ADDRESS",
     "accessConfigs": [{
         "networkTier": "NETWORK_TIER,
       }]
     }],
    "disks": [{
      "initializeParams": {
          "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE"
      },
      "boot": true
   }]
 }

Sostituisci quanto segue:

  • PROJECT: il nome del progetto che contiene le VM dell'appliance router, ad esempio my-project
  • ZONE: la zona Google Cloud in cui si trova la VM, ad esempio us-west1-a
  • MACHINE_TYPE: la risorsa del tipo di macchina da utilizzare per la VM, ad esempio zones/us-west1-a/machineTypes/n1-standard-2
  • INSTANCE_NAME: il nome della VM, ad esempio router-app-a o router-app-b
  • REGION: l'area geografica che contiene la VM, ad esempio us-west1
  • SUBNET: la subnet assegnata all'interfaccia di rete principale della VM, ad esempio regions/us-west1/subnetworks/subnet-a-1
  • INTERNAL_IP_ADDRESS: l'indirizzo IP interno di RFC 1918 assegnato alla VM; configura l'indirizzo per l'interfaccia della VM che si connette al router Cloud, ad esempio: 10.0.1.10
  • NETWORK_TIER: quando crei le VM dell'appliance router, imposta il livello di rete su premium; questa scelta massimizza la misura in cui il traffico utilizza la rete di Google
  • IMAGE_PROJECT: il nome del progetto che contiene l'immagine specificata quando crei la VM, ad esempio debian-cloud
  • IMAGE: il nome dell'immagine da utilizzare durante la creazione della VM, ad esempio debian-10-buster-v20210217

Crea una regola firewall per consentire il BGP

Crea due regole firewall, una in network-a e in network-b. Ogni regola deve consentire il traffico BGP sulla porta TCP 179.

Per ulteriori informazioni sui comandi firewall, consulta la pagina relativa all'uso delle regole firewall.

console

Per creare una regola firewall VPC utilizzando la console Google Cloud, consulta la sezione Creazione di regole firewall.

gcloud

Per creare una regola firewall VPC utilizzando l'interfaccia a riga di comando di Google Cloud, consulta la sezione Creazione di regole firewall.

Server

Per creare una regola firewall VPC utilizzando l'API Compute Engine, consulta la sezione Creazione di regole firewall.

Creare risorse del Centro connettività di rete

Prima di utilizzare una VM dell'appliance router, devi creare le risorse necessarie del Centro connettività di rete.

Crea un hub

Prima di poter creare gli spoke di Network Connectivity Center, devi creare un hub.

console

  1. In Google Cloud Console, vai alla pagina Centro connettività di rete.

    Vai al Centro connettività di rete

  2. Nel menu a discesa del progetto, seleziona un progetto.

  3. Inserisci un Nome hub.

  4. (Facoltativo) Inserisci una Descrizione.

  5. Verifica l'ID progetto. Se l'ID progetto non è corretto, seleziona un progetto diverso utilizzando il menu a discesa nella parte superiore dello schermo.

  6. Fai clic su Continua.

  7. Nella console viene visualizzato un modulo che ti consente di creare uno spoke. Per compilarlo ora, segui la procedura descritta in Creare uno spoke dell'appliance router.

  8. Fai clic su Fine.

gcloud

Per creare un hub, utilizza il comando gcloud network-connectivity hubs create.

  gcloud network-connectivity hubs create HUB_NAME \
    --description="DESCRIPTION" \
    --labels="KEY"="VALUE"

Sostituisci i seguenti valori:

  • HUB_NAME: il nome del nuovo hub
  • DESCRIPTION: testo facoltativo che descrive l'hub.
  • KEY: la chiave nella coppia chiave-valore del testo facoltativo dell'etichetta
  • VALUE: il valore nella coppia chiave-valore del testo facoltativo dell'etichetta

Server

Per creare un hub, utilizza il metodo networkconnectivity.hubs.create.

  POST https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/hubs
  {
    "name":"HUB_NAME",
    "description":"DESCRIPTION",
    "labels": {
      "KEY": "VALUE"
    }
  }

Sostituisci i seguenti valori:

  • PROJECT_ID: l'ID del progetto contenente il nuovo hub
  • HUB_NAME: il nome del nuovo hub
  • DESCRIPTION: testo facoltativo che descrive l'hub.
  • KEY: la chiave nella coppia chiave-valore del testo facoltativo dell'etichetta
  • VALUE: il valore nella coppia chiave-valore del testo facoltativo dell'etichetta

Crea due spoke di appliance router

Crea due spoke di appliance router. Entrambi gli spoke utilizzano la stessa risorsa di supporto: l'istanza dell'appliance router appena creata. Uno spoke utilizza l'interfaccia in network-a, mentre l'altro utilizza l'interfaccia in network- b.

È necessaria la creazione di uno spoke per abilitare il peering BGP tra l'istanza dell'appliance router e il router Cloud, che creerai nel passaggio successivo.

Per ulteriori informazioni su come creare uno spoke, vedi Lavorare con hub e spoke.

console

Inserisci i dettagli di base dello spoke

  1. In Google Cloud Console, vai alla pagina Centro connettività di rete.

    Vai al Centro connettività di rete

  2. Nel menu a discesa del progetto, seleziona un progetto.

  3. Fai clic sulla scheda Raggi.

  4. Fai clic su Aggiungi spoke.

  5. Nel modulo Nuovo spoke, imposta il Tipo di spoke su Appliance router.

  6. Inserisci un Nome spoke, ad esempio spoke-a o spoke-b.

  7. (Facoltativo) Inserisci una Descrizione.

  8. Seleziona il campo Area geografica per il nuovo spoke.

  9. Nella sezione Trasferimento dati site-to, seleziona Off.

  10. Nell'elenco a discesa Rete VPC, seleziona una rete.

Inserisci i dettagli dell'appliance router

  1. In Collega le istanze allo spoke, utilizza l'elenco a discesa per selezionare un'appliance router, ad esempio router-app-a.
  2. Per aggiungere altre istanze dell'appliance router a questo spoke, fai clic su Aggiungi istanza e ripeti il passaggio precedente.
  3. Al termine, fai clic su Fine e continua con l'opzione Salva lo spoke.

Salvare gli spoke

  1. Per aggiungere i secondi spoke, fai clic su Aggiungi spoke e ripeti il processo, iniziando con un Nome spoke.
  2. Quando hai finito di aggiungere gli spoke, fai clic su Crea. La pagina del Centro connettività di rete si aggiorna per mostrare i dettagli dei tempi di creazione che hai creato.

gcloud

Per creare gli spoke dell'appliance router, utilizza il comando gcloud network-connectivity spokes linked-router-appliances create. Esegui il comando due volte, una per ogni spoke.

  gcloud network-connectivity spokes linked-router-appliances create NAME \
    --hub="HUB_URI" \
    --description="DESCRIPTION" \
    --router-appliance=instance="ROUTER_APPLIANCE_URI",ip=IP_ADDRESS \
    --region=REGION \
    --labels="KEY"="VALUE" \
 

Sostituisci i seguenti valori:

  • NAME: il nome dello spoke, ad esempio spoke-a
  • HUB_URI: l'URI dell'hub a cui colleghi il spoke
  • DESCRIPTION: testo facoltativo che descrive il parlato
  • ROUTER_APPLIANCE_URI: URI dell'istanza dell'appliance router, ad esempio,
    https://www.googleapis.com/compute/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME 
  • IP_ADDRESS: l'indirizzo IP interno dell'istanza dell'appliance router, nella rete VPC appropriata, ad esempio 10.1.3.8 o 192.168.10.3.
  • REGION: l'area geografica di Google Cloud in cui vuoi individuare lo spoke, ad esempio us-central1
  • KEY: la chiave nella coppia chiave-valore del testo facoltativo dell'etichetta
  • VALUE: il valore nella coppia chiave-valore del testo facoltativo dell'etichetta

    Ad esempio, il comando seguente crea uno spoke dell'appliance di router che utilizza router-app-a come risorsa sottostante. Questo comando fa riferimento all'istanza dell'appliance router utilizzando la relativa interfaccia network-a:

    gcloud network-connectivity spokes linked-router-appliances create spoke-a \
        --hub=my-hub \
        --description="Test spoke 1" \
        --router-appliance=instance="https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/instances/router-app-a",ip=10.1.3.8 \
        --region=us-central1 \
    

    Ad esempio, il comando seguente crea uno spoke dell'appliance di router che utilizza router-app-a come risorsa sottostante. Questo comando fa riferimento all'istanza dell'appliance router utilizzando la relativa interfaccia network-b:

    gcloud network-connectivity spokes linked-router-appliances create spoke-b \
        --hub=my-hub \
        --description="Test spoke 1" \
        --router-appliance=instance="https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/instances/router-app-a",ip=192.168.10.3\
        --region=us-central1 \
    

Server

Per creare uno spoke dell'appliance router, utilizza il metodo networkconnectivity.spokes.create. Per ogni istanza dell'appliance router che vuoi associare allo spoke, aggiungi un'istanza utilizzando l'array linkedRouterApplianceInstances.instances.

  POST https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/spokes/SPOKE_NAME
  {
    "hub": "HUB_URI",
    "labels": {"KEY": "VALUE"},
    "linkedRouterApplianceInstances": {
      "instances": [
        {
          "virtualMachine": "ROUTER_APPLIANCE_URI",
          "ipAddress": INTERNAL_IP_ADDRESS,
        },
      ],
      "siteToSiteDataTransfer": BOOLEAN
    }
  }
 

Sostituisci i seguenti valori:

  • PROJECT_ID: l'ID del tuo progetto
  • REGION: l'area geografica di Google Cloud in cui vuoi individuare lo spoke, ad esempio us-west1
  • SPOKE_NAME: il nome che vuoi dare allo spoke
  • HUB_URI: URI dell'hub a cui stai collegando lo spoke, ad esempio
    http://networkconnectivity.googleapis.com/v1/projects/PROJECT_NAME/locations/global/hubs/HUB_NAME 
  • KEY: la chiave nella coppia chiave-valore del testo facoltativo dell'etichetta
  • VALUE: il valore nella coppia chiave-valore del testo facoltativo dell'etichetta
  • ROUTER_APPLIANCE_URI: URI dell'istanza dell'appliance router, ad esempio,
    https://www.googleapis.com/compute/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME 
  • IP_ADDRESS: indirizzo IP interno dell'istanza dell'appliance router per la rete VPC appropriata, ad esempio 10.1.3.8 o 192.168.10.3.
  • BOOLEAN: un valore che determina se il trasferimento di dati site-to-site è abilitato per questo spoke; per questo caso d'uso, imposta l'opzione su false

    Ad esempio, per creare uno spoke che utilizza router-app-a per l'interfaccia in network-a, il corpo della tua richiesta deve essere strutturato come segue:

    {
      "hub": "http://networkconnectivity.googleapis.com/v1/projects/my-project/locations/global/hubs/my-hub",
    
      "labels": {
        "environment" : "test"
      },
    
      "linkedRouterApplianceInstances": {
        "instances": [
          {
            "virtualMachine": "https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/instances/router-app-a",
            "ipAddress": "10.1.3.8",
          },
        ],
        "siteToSiteDataTransfer": false
      }
    }
    
    

    Per creare uno spoke che utilizza router-app-a per l'interfaccia in network-b, il corpo della tua richiesta deve essere strutturato come segue:

    {
      "hub": "http://networkconnectivity.googleapis.com/v1/projects/my-project/locations/global/hubs/my-hub",
    
      "labels": {
        "environment" : "test"
      },
    
      "linkedRouterApplianceInstances": {
        "instances": [
          {
            "virtualMachine": "https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/instances/router-app-a",
            "ipAddress": "192.168.10.3",
          },
        ],
        "siteToSiteDataTransfer": false
      }
    }
    
    

Configura i router Cloud

L'appliance router utilizza i router Cloud per scambiare le route con le reti VPC. Per questo motivo, devi creare un router Cloud in ogni rete VPC e completare qualche altra attività di configurazione.

Crea i router Cloud

Se utilizzi gli stessi valori della topologia di esempio, crea due router Cloud, uno in network-a e uno in network-b. Entrambi i router Cloud dovrebbero essere in us-central1.

Per ulteriori informazioni, consulta la sezione Creazione di router Cloud.

console

Per creare un router Cloud nella console Google Cloud, utilizza uno dei seguenti approcci:

  • Utilizza la pagina Router Cloud, come descritto in Creare un router Cloud.

  • Utilizza la pagina Centro connettività di rete. Il vantaggio di questo approccio è che consente di creare il router, le interfacce e le sessioni BGP contemporaneamente. Per ulteriori informazioni sul completamento di tutti questi passaggi insieme, consulta Configurazione del peering BGP sul router Cloud.

gcloud

Per creare un router Cloud, inserisci il comando seguente:

  gcloud compute routers create NAME \
      --region=REGION \
      --network=NETWORK \
      --asn=ASN \
      --project=PROJECT_ID

Sostituisci quanto segue:

  • NAME: il nome del router Cloud, ad esempio cloud-router-a o cloud-router-b.
  • REGION: l'area geografica che contiene il router Cloud, ad esempio us-central1
  • NETWORK: la rete VPC contenente il router Cloud, ad esempio network-a o network-b
  • ASN: numero di sistema autonomo (ASN) per il router Cloud, questo ASN deve essere un ASN privato a 16 o 32 bit come definito in RFC 6996, ad esempio 65000.
  • PROJECT_ID: l'ID progetto per il router Cloud, ad esempio my-project

Server

Per creare un router Cloud, utilizza il metodo compute.routers.insert.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers
{
 "name": "NAME",
 "network": "NETWORK",
 "bgp": {
   "asn": ASN
  }
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID progetto per il router Cloud, ad esempio my-project
  • REGION: l'area geografica che contiene il router Cloud, ad esempio us-central1
  • NAME: il nome del router Cloud, ad esempio cloud-router-a o cloud-router-b.
  • NETWORK: l'URI della rete VPC che contiene il router Cloud, ad esempio /global/networks/network-a o /global/networks/network-b
  • ASN: numero di sistema autonomo (ASN) per il router Cloud, questo ASN deve essere un ASN privato a 16 o 32 bit come definito in RFC 6996, ad esempio 65000.

Crea due interfacce ridondanti su ogni router Cloud

Per ogni router Cloud, crea due interfacce ridondanti. Ogni interfaccia deve essere associata alla subnet appropriata.

Se utilizzi i valori della topologia di esempio, procedi nel seguente modo:

  • Per cloud-router-a, crea due interfacce ridondanti in subnet-a.
  • Per cloud-router-b, crea due interfacce ridondanti in subnet-b.

Ogni interfaccia del router Cloud utilizza un indirizzo IP interno a livello di regione. Se specifichi esplicitamente l'indirizzo IP interno per l'interfaccia, quest'ultimo deve appartenere all'intervallo di indirizzi IP principali della subnet. Non può essere già utilizzato da un'altra risorsa, ad esempio una VM o un'altra interfaccia di un router Cloud.

Per questo passaggio non sono disponibili istruzioni di Google Cloud Console. Se utilizzi la console Google Cloud, quando completi l'attività successiva (Creazione di peering BGP su ogni router Cloud), le interfacce vengono create automaticamente.

gcloud

Per creare interfacce ridondanti sui router Cloud, utilizza il comando gcloud compute routers add-interface.

Completa i seguenti passaggi due volte, una volta per cloud-router-a e di nuovo per cloud-router-b:

  1. Per ogni router Cloud, crea la prima interfaccia:

    gcloud compute routers add-interface NAME \
        --interface-name=INTERFACE_NAME \
        --ip-address=IP_ADDRESS \
        --subnetwork=SUBNET \
        --region=REGION \
        --project=PROJECT_ID
    
  2. Per ogni router Cloud, crea l'interfaccia ridondante:

    gcloud compute routers add-interface NAME \
        --interface-name=INTERFACE_NAME \
        --ip-address=IP_ADDRESS \
        --subnetwork=SUBNET \
        --redundant-interface=REDUNDANT_INTERFACE \
        --region=REGION \
        --project=PROJECT_ID
    

    Sostituisci quanto segue:

    • NAME: nome del router Cloud da aggiornare, ad esempio cloud-router-a o cloud-router-b
    • INTERFACE_NAME: il nome dell'interfaccia, ad esempio router-appliance-interface-0 o router-appliance-interface-1.
    • IP_ADDRESS: l'indirizzo IP interno di RFC 1918 da utilizzare per l'interfaccia; se non specifichi l'opzione --ip-address, Google cerca di trovare un indirizzo IP gratuito dall'intervallo IP principale della subnet da assegnare all'interfaccia
    • SUBNET: la subnet che include l'indirizzo IP interno, ad esempio subnet-a o subnet-b
    • REDUNDANT_INTERFACE: l'interfaccia del router Cloud ridondante che esegue il peering con la stessa istanza dell'appliance router dell'interfaccia principale, ad esempio router-appliance-interface-0.
    • REGION: l'area geografica di Google Cloud in cui si trova il router Cloud, ad esempio us-central1
    • PROJECT_ID: l'ID progetto per il router Cloud, ad esempio my-project

    Comandi di esempio per cloud-router-a

    Il comando seguente crea la prima interfaccia su cloud-router-a:

    gcloud compute routers add-interface cloud-router-a \
        --interface-name=router-appliance-interface-0 \
        --ip-address=10.1.3.14 \
        --subnetwork=subnet-a \
        --region=us-central1 \
        --project=my-project
    

    Il comando seguente crea l'interfaccia ridondante su cloud-router-a:

    gcloud compute routers add-interface cloud-router-a \
        --interface-name=router-appliance-interface-1 \
        --ip-address=10.1.3.15 \
        --subnetwork=subnet-a \
        --region=us-central1 \
        --project=my-project
    

    Comandi di esempio per cloud-router-b

    Il comando seguente crea la prima interfaccia su cloud-router-b:

    gcloud compute routers add-interface cloud-router-b \
        --interface-name=router-appliance-interface-0 \
        --ip-address=192.168.10.14 \
        --subnetwork=subnet-b \
        --region=us-central1 \
        --project=my-project
    

    Il comando seguente crea l'interfaccia ridondante su cloud-router-b:

    gcloud compute routers add-interface cloud-router-b \
       --interface-name=router-appliance-interface-1 \
        --ip-address=192.168.10.15 \
       --subnetwork=subnet-b \
       --region=us-central1 \
       --project=my-project
    

Server

Per creare interfacce ridondanti sui router Cloud, utilizza il metodo compute.routers.patch.

Completa i seguenti passaggi due volte, una volta per cloud-router-a e di nuovo per cloud-router-b:

  1. Crea la prima interfaccia del router Cloud:

    "PATCH
    https"://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/NAME
    {
      "region":"REGION",
      "interfaces":[
        {
          "name":"INTERFACE_NAME",
          "privateIpAddress:"IP_ADDRESS",
          "subnetwork": "https":"//www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET"
        }
      ]
    }
    
  2. Crea l'interfaccia del router Cloud ridondante:

    "PATCH
    https"://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/NAME
    {
      "region":"REGION",
      "interfaces":[
        {
          "name":"INTERFACE_NAME_1",
          "privateIpAddress:"IP_ADDRESS",
          "subnetwork": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET"
        },
        {
          "name":"INTERFACE_NAME_2",
          "privateIpAddress:"IP_ADDRESS",
          "subnetwork": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET",
          "redundantInterface": "INTERFACE_NAME_1"
        }
      ]
    }
    

    Sostituisci quanto segue:

    • PROJECT_ID: l'ID progetto per il router Cloud, ad esempio my-project
    • REGION: l'area geografica di Google Cloud in cui si trova il router Cloud, ad esempio us-central1
    • NAME: nome del router Cloud da aggiornare, ad esempio cloud-router-a o cloud-router-b
    • NETWORK: la rete VPC contenente il router Cloud, ad esempionetwork-a
    • INTERFACE_NAME_1: il nome dell'interfaccia, ad esempio router-appliance-interface-0 o router-appliance-interface-1.
    • SUBNET: l'URL della subnet che contiene l'indirizzo IP interno RFC 1918
    • IP_ADDRESS: l'indirizzo IP interno da utilizzare per l'interfaccia; se non specifichi l'opzione privateIpAddress, Google cerca di trovare un indirizzo IP gratuito dall'intervallo IP principale della subnet da assegnare all'interfaccia.
    • INTERFACE_NAME_2: l'interfaccia del router Cloud ridondante che esegue il peering con la stessa istanza dell'appliance router dell'interfaccia principale, ad esempio router-appliance-interface-0.

    Comandi di esempio per cloud-router-a

    Il seguente comando crea la prima interfaccia su cloud-router-a:

    "PATCH https"://www.googleapis.com/compute/v1/projects/my-project/regions/us-west1/routers/cloud-router-a
    {
     "region":"us-central1",
    "interfaces":[
       {
        "name":"router-appliance-interface-0",
        "privateIpAddress:"10.1.3.14",
        "subnetwork": "https://www.googleapis.com/compute/v1/projects/my-project/regions/us-central1/subnetworks/>"
      }
    ]
    }
    

    Il comando seguente crea l'interfaccia ridondante su cloud-router-a:

    "PATCH https"://www.googleapis.com/compute/v1/projects/my-project/regions/us-central1/routers/cloud-router-a
    {
    "region":"us-central1",
    "interfaces":[
      {
        "name":"router-appliance-interface-0",
        "privateIpAddress:"10.1.3.14",
        "subnetwork": "https://www.googleapis.com/compute/v1/projects/my-project/regions/us-west1/subnetworks/subnet-a"
      },
      {
        "name":"router-appliance-interface-1",
        "privateIpAddress:"10.1.3.15",
        "subnetwork": "https://www.googleapis.com/compute/v1/projects/my-project/regions/us-west1/subnetworks/subnet-a",
        "redundantInterface": "router-appliance-interface-0"
      }
    ]
    }
    

    Comandi di esempio per cloud-router-b

    Il comando seguente crea la prima interfaccia su cloud-router-b come descritto nella configurazione di esempio:

     "PATCH https"://www.googleapis.com/compute/v1/projects/my-project/regions/us-central1/routers/cloud-router-b
     {
    "region":"us-central1",
    "interfaces":[
      {
        "name":"router-appliance-interface-0",
        "privateIpAddress:"10.1.3.14",
        "subnetwork": "https://www.googleapis.com/compute/v1/projects/my-project/regions/us-central1/subnetworks/>"
        }
      ]
     }
     

    Il comando seguente crea le interfacce ridondanti su cloud-router-b come descritto nella configurazione di esempio:

    "PATCH https"://www.googleapis.com/compute/v1/projects/my-project/regions/us-central1/routers/cloud-router-b
    {
     "region":"us-central1",
     "interfaces":[
      {
        "name":"router-appliance-interface-0",
        "privateIpAddress:"192.168.10.14",
        "subnetwork": "https://www.googleapis.com/compute/v1/projects/my-project/regions/us-central1/subnetworks/subnet-b"
      },
      {
        "name":"router-appliance-interface-1",
        "privateIpAddress:"192.168.10.15",
        "subnetwork": "https://www.googleapis.com/compute/v1/projects/my-project/regions/us-central1/subnetworks/subnet-b",
        "redundantInterface": "router-appliance-interface-0"
      }
     ]
    }
    

Configurare il peering BGP su ogni router Cloud

Per ogni interfaccia sull'istanza dell'appliance router, devi creare due sessioni di peering BGP, una per ogni interfaccia del router Cloud. Se utilizzi i valori della topologia di esempio, procedi nel seguente modo:

  • Crea due sessioni di peering tra cloud-router-a e l'interfaccia network-a di router-app-a.

  • Crea due sessioni di peering tra cloud-router-b e l'interfaccia network-b di router-app-a.

console

Completa i seguenti passaggi due volte, una volta per spoke-a e di nuovo per spoke-b:

  1. Vai alla pagina Centro connettività di rete.
  2. Vai al Centro connettività di rete
  3. Nel menu a discesa del progetto, seleziona un progetto.
  4. Fai clic sulla scheda Raggi.
  5. Nella colonna Nome del parlato, seleziona uno spoke per visualizzare la pagina Dettagli del parlato. Ad esempio, seleziona spoke-a o spoke-b.
  1. Nella colonna Nome, individua router-app-a. Fai clic sull'icona Espandi per visualizzare i link Configura sessione BGP. Fai clic su uno di questi link. In risposta, il sistema visualizza il riquadro Configura il router Cloud e le sessioni BGP.

  1. In Router Cloud, esegui una delle seguenti operazioni:

    • Per selezionare un router Cloud esistente, fai clic su Utilizza esistente. Utilizza il campo Router Cloud per identificare la risorsa appropriata, quindi fai clic su Seleziona e continua.
    • Per creare un router Cloud nella pagina Centro connettività di rete, fai clic su Crea nuovo e segui le istruzioni per creare il router Cloud. Quindi, fai clic su Crea e continua.
  2. In Sessioni BGP, configura le due sessioni BGP. Completa i passaggi seguenti due volte, una per ogni sessione:
    1. Fai clic su Modifica sessione BGP.
    2. Compila il modulo inserendo un Nome, un ASN peer e una Priorità route annunciata (MED). Fai clic su Salva e continua.
  3. Fai clic su Crea.

gcloud

Per creare interfacce ridondanti sui router Cloud, utilizza il comando gcloud compute routers add-bgp-peer.

Completa i seguenti passaggi due volte, una volta per cloud-router-a e di nuovo per cloud-router-b:

  1. Crea il primo peer BGP:

    gcloud compute routers add-bgp-peer NAME \
        --peer-name=PEER_NAME \
        --interface=INTERFACE \
        --peer-ip-address=PEER_IP_ADDRESS \
        --peer-asn=PEER_ASN \
        --instance=ROUTER_APPLIANCE \
        --instance-zone=ROUTER_APPLIANCE_ZONE \
        --region=REGION
    
  2. Crea il secondo peer BGP:

    gcloud compute routers add-bgp-peer NAME \
        --peer-name=PEER_NAME \
        --interface=INTERFACE \
        --peer-ip-address=PEER_IP_ADDRESS \
        --peer-asn=PEER_ASN \
        --instance=ROUTER_APPLIANCE \
        --instance-zone=ROUTER_APPLIANCE_ZONE \
        --region=REGION
    

    Sostituisci quanto segue:

    • NAME: nome del router Cloud da aggiornare, ad esempio cloud-router-a o cloud-router-b
    • PEER_NAME: nome della sessione di peering BGP da stabilire con l'istanza dell'appliance router
    • INTERFACE: il nome dell'interfaccia di questo peer BGP
    • PEER_IP_ADDRESS: indirizzo IP interno del router peer (istanza dell'appliance router), ad esempio 10.1.3.8 o 192.168.10.3
    • PEER_ASN: numero di sistema autonomo BGP (ASN) per questo peer BGP: questo ASN deve essere un ASN privato a 16 o 32 bit come definito in RFC 6996
    • ROUTER_APPLIANCE: il nome della VM che funge da istanza dell'appliance router, ad esempio router-app-a
    • ROUTER_APPLIANCE_ZONE: la zona in cui si trova la VM che funge da istanza dell'appliance router, ad esempio us-central1-a
    • REGION: l'area geografica in cui si trova la VM che funge da istanza dell'appliance router, ad esempio us-central1

    Comandi di esempio per cloud-router-a

    Utilizza i comandi seguenti per creare i peer BGP per cloud-router-a:

    gcloud compute routers add-bgp-peer cloud-router-a \
      --peer-name=router-appliance-bgp-peer-router-app-a-0 \
      --interface=router-appliance-interface-0 \
      --peer-ip-address=10.1.3.8 \
      --peer-asn=65001 \
      --instance=router-app-a \
      --instance-zone=us-central1-a \
      --region=us-central1
    
    gcloud compute routers add-bgp-peer cloud-router-a \
      --peer-name=router-appliance-bgp-peer-router-app-a-1 \
      --interface=router-appliance-interface-1 \
      --peer-ip-address=10.1.3.8 \
      --peer-asn=65001 \
      --instance=router-app-a \
      --instance-zone=us-central1-a \
      --region=us-central1
    

    Comandi di esempio per cloud-router-b

    Utilizza i comandi seguenti per creare i peer BGP per cloud-router-b:

    gcloud compute routers add-bgp-peer cloud-router-b \
       --peer-name=router-appliance-bgp-peer-router-app-a-0 \
      --interface=router-appliance-interface-0 \
      --peer-ip-address=192.168.10.3 \
      --peer-asn=65001 \
      --instance=router-app-a \
      --instance-zone=us-central1-a \
      --region=us-central1
    
    gcloud compute routers add-bgp-peer cloud-router-b \
      --peer-name=router-appliance-bgp-peer-router-app-a-1 \
      --interface=router-appliance-interface-1 \
      --peer-ip-address=192.168.10.3 \
      --peer-asn=65001 \
      --instance=router-app-a \
      --instance-zone=us-central1-a \
      --region=us-central1
    

Server

Per creare peer BGP su un router Cloud, utilizza il metodo compute.routers.patch. Utilizza questo metodo due volte, una per cloud-router-a e un'altra per cloud-router-b.

 PATCH
https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/NAME
   {
    "bgpPeers": [
     {
       "name": "PEER_NAME",
       "interfaceName": "INTERFACE_NAME",
       "ipAddress": "IP_ADDRESS",
       "peerIpAddress": "PEER_IP_ADDRESS",
       "routerApplianceInstance": "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zone/ROUTER_APPLIANCE_ZONE/instances/ROUTER_APPLIANCE_INSTANCE",
       "peerAsn": PEER_ASN,
     }
     {
       "name": "PEER_NAME",
       "interfaceName": "INTERFACE_NAME",
       "ipAddress": "IP_ADDRESS",
       "peerIpAddress": "PEER_IP_ADDRESS",
       "routerApplianceInstance": "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zone/ROUTER_APPLIANCE_ZONE/instances/ROUTER_APPLIANCE_INSTANCE",
       "peerAsn": PEER_ASN
     }
    ]
   }
 

Sostituisci quanto segue:

  • PROJECT_ID: l'ID progetto per il router Cloud
  • REGION: regione in cui si trova la VM che funge da istanza dell'appliance router
  • NAME: il nome del router Cloud da aggiornare
  • PEER_NAME: nome della sessione di peering BGP da stabilire con l'istanza dell'appliance router
  • INTERFACE_NAME: il nome dell'interfaccia del router Cloud a cui aggiungere il peer
  • IP_ADDRESS: l'indirizzo IP interno di RFC 1918 del router Cloud da utilizzare per la sessione di peering
  • PEER_IP_ADDRESS: indirizzo IP interno della VM che agisce come un'istanza dell'appliance router, ad esempio 10.1.3.8 o 192.168.10.3.
  • ROUTER_APPLIANCE_INSTANCE: il nome in formato URL per la VM che funge da istanza dell'appliance router
  • ROUTER_APPLIANCE_ZONE: la zona in cui si trova la VM che funge da istanza dell'appliance router
  • PEER_ASN: numero di sistema autonomo BGP (ASN) per questo peer BGP: questo ASN deve essere un ASN privato a 16 o 32 bit come definito in RFC 6996

    Comandi di esempio per cloud-router-a

    PATCH
    https://compute.googleapis.com/compute/v1/projects/my-project/regions/us-west1/routers/cloud-router-a
    {
     "bgpPeers": [
     {
       "name": "router-appliance-bgp-peer-router-app-a-0",
       "interfaceName": "router-appliance-interface-0",
       "ipAddress": "10.1.3.14",
       "peerIpAddress": "10.1.3.8",
       "routerApplianceInstance": "https://compute.googleapis.com/compute/v1/projects/my-project/zone/us-central1-a/instances/router-app-a",
       "peerAsn": 65001,
     }
     {
       "name": "router-appliance-bgp-peer-router-app-a-1",
       "interfaceName": "router-appliance-interface-1",
       "ipAddress": "10.1.3.15",
       "peerIpAddress": "10.1.3.8",
       "routerApplianceInstance": "https://compute.googleapis.com/compute/v1/projects/my-project/zone/us-central1-a/instances/router-app-a",
       "peerAsn": 65001
     }
     ]
    }
    

    Comandi di esempio per cloud-router-b

    PATCH
    https://compute.googleapis.com/compute/v1/projects/my-project/regions/us-west1/routers/cloud-router-b
    {
     "bgpPeers": [
     {
       "name": "router-appliance-bgp-peer-router-app-a-0",
       "interfaceName": "router-appliance-interface-0",
       "ipAddress": "192.168.10.14",
       "peerIpAddress": "192.168.10.3",
       "routerApplianceInstance": "https://compute.googleapis.com/compute/v1/projects/my-project/zone/us-central1-a/instances/router-app-a",
       "peerAsn": 65001,
     }
     {
       "name": "router-appliance-bgp-peer-router-app-a-1",
       "interfaceName": "router-appliance-interface-1",
       "ipAddress": "192.168.10.15,
       "peerIpAddress": "192.168.10.3",
       "routerApplianceInstance": "https://compute.googleapis.com/compute/v1/projects/my-project/zone/us-central1-a/instances/router-app-a",
       "peerAsn": 65001
     }
     ]
    }
    

Configura BGP sull'istanza dell'appliance router

Configura la tua istanza dell'appliance router per la connettività BGP sui due router Cloud. Per farlo, consulta la documentazione del fornitore per l'immagine dell'appliance router.

Passaggi successivi