Stabilire la connettività utilizzando un'appliance di terze parti

Network Connectivity Center consente di utilizzare un'appliance virtuale di rete di terze parti per connettività tra un sito esterno e il tuo Virtual Private Cloud (VPC) delle tue risorse di rete. Per stabilire la connettività in questo modo, utilizza la classe Funzionalità dell'appliance router.

L'appliance router è uno dei vari tipi di spoke supportati per Network Connectivity Center. Per informazioni su Network Connectivity Center, consulta Panoramica di Network Connectivity Center. Per ulteriori informazioni informazioni sull'appliance router, consulta 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 rete VPC. L'istanza dell'appliance router mantiene le impostazioni Sessioni Gateway Protocol (BGP) con i router Cloud in entrambi reti.

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

Creazione di sessioni BGP da utilizzare per le appliance router
Topologia di esempio site-to-cloud (fai clic per ingrandire)

Attività obbligatorie

Per impostare la configurazione di esempio, assicurati di soddisfare le prerequisiti per l'esecuzione di questa procedura, quindi completa le attività richieste:

  1. Crea la macchina virtuale (VM) Compute Engine che funge da istanza dell'appliance router. Tu possono creare la VM usando una soluzione partner supportata per creare un'immagine personalizzata.

  2. Assicurati che l'istanza dell'appliance router sia accessibile al traffico BGP tramite la porta TCP 179. Per renderla accessibile, potresti dover crea regole firewall.

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

  4. Configura due router Cloud, uno in ognuno 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 ciascun router Cloud.

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

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

Prima di iniziare

Prima di iniziare, esamina le sezioni seguenti.

Crea o seleziona un progetto

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

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Install the Google Cloud CLI.
  5. To initialize the gcloud CLI, run the following command:

    gcloud init
  6. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  7. Make sure that billing is enabled for your Google Cloud project.

  8. Install the Google Cloud CLI.
  9. To initialize the gcloud CLI, run the following command:

    gcloud init
  10. Se utilizzi Google Cloud CLI, imposta l'ID progetto utilizzando il comando gcloud config set.

    gcloud config set project PROJECT_ID

    Sostituisci PROJECT_ID con il tuo ID progetto univoco.

    Le istruzioni della gcloud CLI in questa pagina presuppongono che l'ID progetto sia stato impostato.

  11. Per verificare di aver impostato correttamente l'ID progetto, utilizza il comando gcloud config list.

    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. Nella console Google Cloud, vai alla pagina Centro connettività di rete.

    Vai a Network Connectivity Center

  2. Fai clic su Attiva.

In alternativa, puoi abilitare l'API utilizzando libreria API della console Google Cloud, come descritto in Abilitazione delle API.

Chiedi l'accesso

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

Quando configuri Network Connectivity Center, lavori anche con Google Cloud di risorse come reti VPC, subnet, e regole firewall. Per ulteriori informazioni sulle autorizzazioni necessarie, con queste risorse, controlla Documentazione sul controllo dell'accesso a Compute Engine.

Indirizzi IP e istanze dell'appliance router

Per configurare un'istanza di appliance router, devi stabilire il peering tra e il router Cloud. Per configurare il peering, la VM deve utilizzare una Indirizzo IP interno RFC 1918. Non puoi eseguire il peering di queste due risorse se la VM utilizza un tipo diverso di indirizzo. Inoltre, entrambi gli indirizzi IP devono essere nello stesso indirizzo regione.

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, vedi Indirizzi IP.

Prenota un indirizzo IP interno statico (opzione consigliata)

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

Esistono diverse opzioni per assegnare un indirizzo IP riservato. Puoi prenotare l'indirizzo IP in anticipo. In alternativa, puoi prenotare l'indirizzo IP quando crei la VM. Se per errore assegni alla VM un indirizzo temporaneo, puoi in seguito convertirlo 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 Cloud Router. L'istanza non utilizza un indirizzo (ad esempio 169.254.x.x) per il peering BGP.

Analogamente, il router Cloud utilizza due indirizzi IP interni RFC 1918 per 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 sia nell'interfaccia del router Cloud.

crea risorse VPC

Le seguenti sezioni descrivono come creare reti VPC subnet.

crea due reti VPC

Se non l'hai già fatto, crea due reti VPC. Imposta di ogni rete modalità di routing dinamico a global.

Per saperne di più sulla creazione di reti VPC, consulta Creare reti.

Console

Per creare una rete VPC personalizzata utilizzando la console Google Cloud, vedi Creazione di una rete in modalità personalizzata. Assicurati di impostare 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, utilizza Comando gcloud compute networks create.

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

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

API

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

Crea una subnet

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

Console

Per aggiungere una subnet utilizzando la console Google Cloud, consulta Aggiunta di subnet.

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

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

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

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

gcloud

Per creare una subnet VPC, utilizza Comando gcloud compute networks subnets create.

  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 subnet, ad esempio network-a o network-b
  • REGION: la regione che contiene una subnet, ad esempio us-central1
  • RANGE: l'intervallo IP della subnet in CIDR notazione, ad esempio 10.1.3.0/24 o 192.168.10.0/24

API

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

Crea la VM dell'appliance router

Crea la VM Compute Engine che funge da istanza dell'appliance router. La 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 una delle seguenti:

Per ulteriori informazioni su come specificare le immagini, consulta le seguenti risorse:

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

Gli esempi in questa sezione presuppongono che tu abbia riservato indirizzi IP per l'istanza dell'appliance router. Per ulteriori informazioni, vedi 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 nell'esempio configurazione, utilizza i seguenti valori:

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

  • Espandi Opzioni avanzate, quindi espandi Networking. Utilizza la i seguenti valori:

    • In IP forwarding, seleziona Abilita.
    • In Interfacce di rete, crea due interfacce, una in network-a e una in network-b. Per creare ogni interfaccia, seleziona Sulla rete appropriata, poi fai clic su Aggiungi un'interfaccia di rete. Completa i seguenti campi:
      • Seleziona la Subnet in cui vuoi individuare il router. dell'appliance, ad esempio subnet-a o subnet-b.
      • In IP interno principale, seleziona la specifica RFC 1918 riservata all'indirizzo IP interno che vuoi utilizzare, ad esempio 10.1.3.8 o 192.168.10.3.
      • In Network Service Tier (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 appliance router utilizzate nella configurazione di esempio, utilizza il comando gcloud compute instances create.

Esegui il comando due volte, una per ogni istanza dell'appliance router. Sostituisci INSTANCE_NAME con il nome della VM che funge da router dell'appliance di ricerca.

Nell'esempio seguente, assegni l'indirizzo IP interno statico e un indirizzo IP esterno statico prenotato in precedenza nella VM. Devi inoltre specificare il progetto che contiene un'immagine fornita dal fornitore per insieme al 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 agisce come 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 si trova in, ad esempio, us-west1-a
  • MACHINE_TYPE: la risorsa 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 RFC 1918 assegnato all'interfaccia della 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, per esempio, debian-10-buster-v20210217

API

a creare le due VM dell'appliance router utilizzate nell'esempio: utilizza Metodo compute.instances.insert.

Per altri metodi di creazione, consulta Creare e avviare 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 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 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: la regione che contiene la VM, ad esempio us-west1
  • SUBNET: la subnet assegnata alla rete principale a riga di comando per la VM, ad esempio regions/us-west1/subnetworks/subnet-a-1
  • INTERNAL_IP_ADDRESS: l'indirizzo IP interno 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: durante la creazione delle VM dell'appliance router, imposta il livello di rete a premium; questa scelta massimizza la misura in cui il traffico utilizza Rete Google
  • IMAGE_PROJECT: il nome del progetto che contiene specificata durante la creazione della VM, ad esempio debian-cloud
  • IMAGE: il nome dell'immagine da utilizzare durante la creazione VM, ad esempio debian-10-buster-v20210217

Crea una regola firewall per consentire BGP

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

Per ulteriori informazioni sui comandi firewall, consulta Utilizzare le regole firewall.

Console

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

gcloud

Per creare una regola firewall VPC utilizzando Google Cloud CLI, consulta Creazione di regole firewall.

API

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

Crea risorse di Network Connectivity Center

Prima di poter utilizzare la VM di un'appliance router, devi creare il necessario Risorse di Network Connectivity Center.

Crea un hub

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

Console

  1. Nella console Google Cloud, vai alla pagina Centro connettività di rete.

    Vai al Network Connectivity Center

  2. Nel menu del progetto, seleziona un progetto.

  3. Inserisci un Nome hub.

  4. Inserisci una descrizione facoltativa.

  5. Verifica l'ID progetto. Se l'ID progetto non è corretto, seleziona un progetto diverso usando il menu 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 segui i passaggi descritti in Crea uno spoke dell'appliance router.

  8. Fai clic su Fine.

gcloud

Per creare un hub, utilizza 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 per testo etichetta facoltativo
  • VALUE: il valore nella coppia chiave-valore per la testo etichetta facoltativo

API

Per creare un hub, utilizza 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 che contiene il nuovo hub
  • HUB_NAME: il nome del nuovo hub
  • DESCRIPTION: testo facoltativo che descrive l'hub
  • KEY: la chiave nella coppia chiave-valore per l'elemento facoltativo testo etichetta
  • VALUE: il valore nella coppia chiave-valore per la testo etichetta facoltativo

Crea due spoke dell'appliance router

Crea due spoke dell'appliance router. Entrambi gli spoke utilizzano lo stesso supporto resource: l'istanza dell'appliance router che hai appena creato. Uno spoke utilizza l'interfaccia in network-a e l'altro utilizza l'interfaccia in network- b.

La creazione di uno spoke è necessaria per attivare il peering BGP tra l'istanza dell'appliance router e il router Cloud, che crei nel passaggio successivo.

Per ulteriori informazioni su come creare uno spoke, consulta Utilizzare hub e spoke.

Console

Inserire i dettagli di base dello spoke

  1. Nella console Google Cloud, vai alla pagina Network Connectivity Center (Centro per la connettività di rete).

    Vai al Network Connectivity Center

  2. Nel menu del progetto, seleziona un progetto.

  3. Fai clic sulla scheda Spoke.

  4. Fai clic su Aggiungi spoke.

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

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

  7. Se vuoi, inserisci una descrizione.

  8. Seleziona il campo Regione per il nuovo spoke.

  9. In Trasferimento di dati site-to-site, seleziona Off.

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

Inserisci i dettagli dell'appliance router

  1. In Collega istanze allo spoke, utilizza il menu 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 vai a Salvare il raggio.

Salva gli spoke

  1. Per aggiungere i secondi spoke, fai clic su Aggiungi spoke e inizia la procedura nuovamente il processo, iniziando con l'inserimento di un Nome spoke.
  2. Quando hai finito di aggiungere gli spoke, fai clic su Crea. La pagina Network Connectivity Center si aggiorna mostrando i dettagli sulla gli spoke creati da te.

gcloud

Per creare gli spoke dell'appliance router, utilizza il metodo 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 del raggio, ad esempio spoke-a
  • HUB_URI: l'URI dell'hub a cui stai collegando ha parlato con
  • DESCRIPTION: testo facoltativo che descrive parlato
  • ROUTER_APPLIANCE_URI: l'URI dell'appliance router ad esempio,
    https://www.googleapis.com/compute/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME 
  • IP_ADDRESS: l'indirizzo IP interno del dell'appliance router, nel riquadro Rete VPC, ad esempio 10.1.3.8 o 192.168.10.3
  • REGION: la regione Google Cloud in cui vuoi individuare lo spoke, ad esempio us-central1
  • KEY: la chiave nella coppia chiave-valore per l'elemento facoltativo testo etichetta
  • VALUE: il valore nella coppia chiave-valore per la testo etichetta facoltativo

    Ad esempio, il comando seguente crea uno spoke dell'appliance router che usa router-app-a come risorse sottostanti. 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 router che usa router-app-a come risorse sottostanti. Questo comando fa riferimento l'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 \
    

API

Per creare uno spoke dell'appliance router, utilizza il metodo Metodo networkconnectivity.spokes.create. Per ogni istanza dell'appliance router che desideri associare spoke, aggiungi un'istanza mediante 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 progetto
  • REGION: la regione Google Cloud in cui vuoi per individuare lo spoke, ad esempio us-west1
  • SPOKE_NAME: il nome che vuoi assegnare allo spoke
  • HUB_URI: l'URI dell'hub che stai attaccare lo spoke, ad esempio
    http://networkconnectivity.googleapis.com/v1/projects/PROJECT_NAME/locations/global/hubs/HUB_NAME 
  • KEY: la chiave nella coppia chiave-valore per il testo facoltativo della etichetta
  • VALUE: il valore nella coppia chiave-valore per il testo facoltativo dell'etichetta
  • ROUTER_APPLIANCE_URI: l'URI dell'appliance router ad esempio,
    https://www.googleapis.com/compute/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME 
  • IP_ADDRESS: l'indirizzo IP interno del router dell'appliance per il VPC rete, ad esempio 10.1.3.8 o 192.168.10.3
  • BOOLEAN: un valore che determina se uno o più siti Data Transfer è abilitato per questo spoke. per questo caso d'uso, imposta l'opzione a false

    Ad esempio, per creare uno spoke che utilizzi router-app-a per l'interfaccia in network-a, il corpo della 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 utilizzi router-app-a per l'interfaccia in network-b, il corpo della 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 reti VPC. Per questo motivo, devi creare un'etichetta in ogni rete VPC e completane alcuni altre 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 devono trovarsi in us-central1.

Per ulteriori informazioni, consulta Creare 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 Crea un router Cloud.

  • Utilizza la pagina Network Connectivity Center. Il vantaggio di questo approccio è che ti consente di creare contemporaneamente il router, le interfacce e le sessioni BGP. Per ulteriori informazioni sul completamento per eseguire tutti questi passaggi, consulta Configurazione del peering BGP sul router Cloud.

gcloud

Per creare un router Cloud, utilizza Comando gcloud compute routers create.

  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: la regione che contiene il router Cloud, ad esempio us-central1
  • NETWORK: la rete VPC contiene il router Cloud, ad esempio network-a o network-b
  • ASN: l'ASN (Autonomous System Number) del Router Cloud: questo ASN deve essere privato a 16 o 32 bit ASN come definito in RFC 6996: ad esempio, 65000
  • PROJECT_ID: l'ID progetto per Router Cloud, ad esempio my-project

API

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 Router Cloud, ad esempio my-project
  • REGION: la regione 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: l'ASN (Autonomous System Number) del Router Cloud: questo ASN deve essere privato a 16 o 32 bit ASN come definito in RFC 6996: ad esempio, 65000

crea due interfacce su ciascun router Cloud

Per stabilire la ridondanza, crea due interfacce su ciascun router Cloud. Su ogni router Cloud, le due interfacce devono essere associate alla stessa subnet dell'interfaccia dell'appliance router corrispondente. Se utilizzi i valori della topologia di esempio:

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

Ogni interfaccia del router Cloud utilizza un indirizzo IP interno regionale. Se specifichi esplicitamente l'indirizzo IP interno per l'interfaccia, l'indirizzo IP deve appartenere all'intervallo di indirizzi IP principale della subnet. Non può essere già in uso da un'altra risorsa, ad esempio una VM o un altro router Cloud a riga di comando.

Non esistono istruzioni della console Google Cloud per questo passaggio. 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 tuoi router Cloud, utilizza Comando gcloud compute routers add-interface.

Completa i seguenti passaggi due volte, una per cloud-router-a e un'altra per cloud-router-b:

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

    gcloud compute routers add-interface ROUTER_NAME \
        --interface-name=FIRST_INTERFACE_NAME \
        --ip-address=FIRST_INTERFACE_IP_ADDRESS \
        --subnetwork=SUBNET \
        --region=REGION \
        --project=PROJECT_ID
    

    Sostituisci quanto segue:

    • ROUTER_NAME: il nome del router Cloud da aggiornare, ad esempio cloud-router-a o cloud-router-b
    • FIRST_INTERFACE_NAME: il nome del dell'interfaccia, ad esempio interface-1
    • FIRST_INTERFACE_IP_ADDRESS: il certificato interno RFC 1918 l'indirizzo IP da utilizzare per la prima interfaccia. se non specifichi , Google cerca di trovare un indirizzo gratuito Intervallo di indirizzi IP della subnet
    • SUBNET: la subnet che contiene Interfaccia del router Cloud e del router corrispondente interfaccia dell'istanza dell'appliance
    • REGION: la regione Google Cloud in cui si trova il Router Cloud, ad esempio us-central1
    • PROJECT_ID: l'ID progetto per Router Cloud, ad esempio my-project
  2. Per ogni router Cloud, crea la seconda interfaccia:

    gcloud compute routers add-interface ROUTER_NAME \
        --interface-name=SECOND_INTERFACE_NAME \
        --ip-address=SECOND_INTERFACE_IP_ADDRESS \
        --subnetwork=SUBNET \
        --redundant-interface=FIRST_INTERFACE_NAME \
        --region=REGION \
        --project=PROJECT_ID
    

    Sostituisci quanto segue:

    • ROUTER_NAME: il nome del router Cloud da aggiornare, ad esempio cloud-router-a o cloud-router-b
    • SECOND_INTERFACE_NAME: il nome del dell'interfaccia, ad esempio interface-2
    • SECOND_INTERFACE_IP_ADDRESS: l'indirizzo IP interno RFC 1918 da utilizzare per la seconda interfaccia. Se non specifichi un valore, Google tenta di trovare un indirizzo libero nell'intervallo di indirizzi IP principale della subnet
    • SUBNET: la subnet che contiene i due Le interfacce del router Cloud e il router corrispondente interfaccia dell'istanza dell'appliance
    • FIRST_INTERFACE_NAME: il nome del creata nel passaggio 1
    • REGION: la regione Google Cloud in cui Il router Cloud, ad esempio us-central1
    • PROJECT_ID: l'ID progetto per 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=interface-1 \
        --ip-address=10.1.3.14 \
        --subnetwork=subnet-a \
        --region=us-central1 \
        --project=my-project
    

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

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

    Comandi di esempio per cloud-router-b

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

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

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

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

API

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

Utilizza la seguente richiesta due volte: una per cloud-router-a e di nuovo per cloud-router-b:

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

Sostituisci quanto segue:

  • PROJECT_ID: l'ID progetto per Router Cloud, ad esempio my-project
  • REGION: la regione Google Cloud in cui Il router Cloud, ad esempio us-central1
  • NAME: il nome del router Cloud da utilizzare aggiorna, ad esempio cloud-router-a o cloud-router-b
  • NETWORK: la rete VPC contiene il router Cloud,ad esempio network-a
  • FIRST_INTERFACE_NAME: il nome della prima interface, ad esempio interface-1
  • FIRST_INTERFACE_IP_ADDRESS: il certificato interno RFC 1918 l'indirizzo IP da utilizzare per la prima interfaccia. se non specifichi un valore, Google cerca di trovare un indirizzo gratuito nell'indirizzo IP principale della subnet
  • SUBNET: la subnet che contiene i due Le interfacce del router Cloud e il router corrispondente interfaccia dell'istanza dell'appliance
  • SECOND_INTERFACE_NAME: il nome della seconda interface, ad esempio interface-2
  • SECOND_INTERFACE_IP_ADDRESS: l'indirizzo IP interno RFC 1918 da utilizzare per la seconda interfaccia. Se non specifichi un valore, Google tenta di trovare un indirizzo libero nell'intervallo di indirizzi IP principale della subnet

    Comandi di esempio per cloud-router-a

    Il seguente comando crea due interfacce 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"
         }
       ]
      }
     

    Comando di esempio per cloud-router-b

    Il seguente comando crea due interfacce su cloud-router-b:

    "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"
       }
     ]
    }
    

Configura il peering BGP su ciascun router Cloud

Per ogni interfaccia dell'istanza dell'appliance router, devi creare due sessioni di peering BGP, una per ogni interfaccia di Cloud Router. Se utilizzando i valori della topologia di esempio:

  • 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 network-b di router-app-a.

Console

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

  1. Vai alla pagina Network Connectivity Center.
  2. Vai al Network Connectivity Center
  3. Nel menu del progetto, seleziona un progetto.
  4. Fai clic sulla scheda Spoke.
  5. Nella colonna Nome spoke, seleziona uno spoke per visualizzare Pagina Dettagli spoke. Ad esempio, seleziona spoke-a oppure spoke-b.
  1. Nella colonna Nome, individua router-app-a. Fai clic sull'icona Espandi per visualizzare Configura sessione BGP. . Fai clic su uno di questi link. In risposta, il sistema visualizza la sezione Configura router Cloud e sessioni BGP dal riquadro.

  1. Nella sezione Router Cloud, esegui una delle seguenti operazioni:

    • Per selezionare un router Cloud esistente, fai clic su Utilizza esistente. Utilizza le funzionalità di 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. Poi Fai clic su Crea e continua.
  2. In Sessioni BGP, configura le due sessioni BGP. Completa la eseguire i seguenti passaggi due volte, una per ciascuna sessione:
    1. Fai clic su Modifica sessione BGP.
    2. Compila il modulo entro il giorno 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 peer BGP sui router Cloud, utilizza Comando gcloud compute routers add-bgp-peer.

Completa i seguenti passaggi due volte: una 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: il nome del router Cloud da aggiornare, ad esempio cloud-router-a o cloud-router-b
    • PEER_NAME: il nome della sessione di peering BGP da stabilire con l'istanza dell'appliance router
    • INTERFACE: il nome dell'interfaccia per questo BGP peer
    • PEER_IP_ADDRESS: il valore indirizzo IP interno del router peer (l'istanza dell'appliance router), ad esempio 10.1.3.8 o 192.168.10.3
    • PEER_ASN: il numero di sistema autonomo (ASN) BGP per questo peer BGP: questo ASN deve essere un ASN privato a 16 bit o a 32 bit come definito nel documento RFC 6996
    • ROUTER_APPLIANCE: il nome della VM che agisce come istanza dell'appliance router, ad esempio router-app-a
    • ROUTER_APPLIANCE_ZONE: la zona in cui VM che funge da istanza dell'appliance router esempio, us-central1-a
    • REGION: la regione in cui la VM agisce come si trova l'istanza dell'appliance router, ad esempio us-central1

    Comandi di esempio per cloud-router-a

    Utilizza i seguenti comandi 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 seguenti comandi 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
    

API

Per creare peer BGP su un router Cloud, utilizza 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 Router Cloud
  • REGION: la regione in cui la VM agisce come l'istanza dell'appliance router è situata
  • NAME: il nome del router Cloud da utilizzare aggiorna
  • PEER_NAME: il nome della sessione di peering BGP da stabilire con l'istanza dell'appliance router
  • INTERFACE_NAME: il nome del router Cloud per aggiungere il peer a
  • IP_ADDRESS: l'indirizzo IP interno RFC 1918 del Router Cloud da usare per la sessione di peering
  • PEER_IP_ADDRESS: indirizzo IP interno di la VM che funge da istanza di appliance router, ad esempio 10.1.3.8 o 192.168.10.3
  • ROUTER_APPLIANCE_INSTANCE: il nome nel formato dell'URL per la VM che funge da istanza dell'appliance router
  • ROUTER_APPLIANCE_ZONE: la zona in cui La VM che funge da istanza dell'appliance router si trova
  • PEER_ASN: il numero di sistema autonomo (ASN) BGP per questo peer BGP. Questo ASN deve essere un ASN privato a 16 o 32 bit come definito nella 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 l'istanza dell'appliance router per la connettività BGP a dai due router Cloud. A questo scopo, consulta la documentazione del fornitore per l'immagine dell'appliance router.

Passaggi successivi