Hybrid NAT

Hybrid NAT, un tipo di Private NAT, consente di eseguire la Network Address Translation (NAT) tra una rete virtual private cloud (VPC) e una rete on-premise o un'altra rete del provider cloud. La rete non-Google Cloud VPC deve essere connessa alla rete VPC utilizzando i prodotti di connettività di rete di Google Cloud Google Cloud's , come Cloud Interconnect o Cloud VPN.

Specifiche

Oltre alle specifiche generali di Private NAT, Hybrid NAT presenta le seguenti specifiche:

  • Hybrid NAT consente a una rete VPC di comunicare con una rete on-premise o un'altra rete del provider cloud anche se gli intervalli di indirizzi IP della subnet delle reti si sovrappongono. Utilizzando una configurazione NAT di type=PRIVATE, le risorse nelle subnet sovrapposte e non sovrapposte della rete VPC possono connettersi alle risorse nelle subnet non sovrapposte della rete non-Google Cloud VPC.
  • Per abilitare Hybrid NAT, la rete non-Google Cloud VPC deve annunciare le route dinamiche in modo che la rete VPC possa apprenderle e utilizzarle. Il router Cloud apprende queste route dinamiche da Google Cloud's prodotti di connettività di rete come Cloud Interconnect, VPN ad alta disponibilità o VPN classica con routing dinamico configurato. Le destinazioni di queste route dinamiche sono intervalli di indirizzi IP esterni alla rete VPC

    Allo stesso modo, per il traffico di ritorno, la rete VPC deve annunciare la route di subnet Private NAT utilizzando un router Cloud, e questa route di subnet non deve sovrapporsi a una subnet esistente nelle reti connesse.

  • Hybrid NAT esegue NAT sul traffico proveniente da una rete VPC a una rete on-premise o a un'altra rete del provider cloud. Le reti devono essere connesse tramite Cloud Interconnect o Cloud VPN.

  • Hybrid NAT supporta i tunnel VPN classica esistenti solo se il routing dinamico è abilitato.

  • Devi creare una regola NAT personalizzata con un'espressione di corrispondenza nexthop.is_hybrid. La regola NAT specifica un intervallo di indirizzi IP NAT da una subnet di scopo PRIVATE_NAT che le risorse nella rete VPC possono utilizzare per comunicare con altre reti.

  • Il router Cloud su cui configuri Hybrid NAT deve trovarsi nella stessa regione della rete VPC.

  • Il router Cloud su cui configuri Hybrid NAT non può contenere altre configurazioni NAT.

Configurazione e flusso di lavoro di base di Hybrid NAT

Il seguente diagramma mostra una configurazione di base di Hybrid NAT:

Esempio di traduzione Hybrid NAT.
Esempio di traduzione di Hybrid NAT (fai clic per ingrandire).

In questo esempio, Hybrid NAT è configurato come segue:

  • Il gateway pvt-nat-gw è configurato in vpc-a per essere applicato a tutti gli intervalli di indirizzi IP di subnet-a nella regione us-east1.
  • Il router Cloud e il router on-premise o di un altro provider cloud scambiano le seguenti route di subnet:
    • Il router Cloud annuncia 10.1.2.0/29 al router esterno.
    • Il router esterno annuncia 192.168.2.0/24 a router Cloud.
  • Utilizzando l'intervallo di indirizzi IP NAT di pvt-nat-gw, un'istanza di macchina virtuale (VM) in subnet-a di vpc-a può inviare traffico a una VM in subnet-b della rete on-premise o di un altro provider cloud, anche se subnet-a di vpc-a si sovrappone a un'altra subnet nella rete non-Google Cloud .

Esempio di flusso di lavoro di Hybrid NAT

Nel diagramma precedente, vm-a con l'indirizzo IP interno 192.168.1.2 in subnet-a di vpc-a deve scaricare un aggiornamento da vm-b con l'indirizzo IP interno 192.168.2.2 in subnet-b di una rete on-premise o di un altro provider cloud. Cloud Interconnect connette la rete VPC alla rete on-premise o a un altro cloud provider network. Supponiamo che la rete non-Google Cloud VPC contenga un'altra subnet 192.168.1.0/24 che si sovrappone alla subnet in vpc-a. Affinché subnet-a di vpc-a possa comunicare con subnet-b della rete non-Google Cloud , devi configurare un gateway Private NAT, pvt-nat-gw, in vpc-a come segue:

  • Specifica una subnet Private NAT di scopo PRIVATE_NAT, ad esempio 10.1.2.0/29. Crea questa subnet prima di configurare il gateway Private NAT. Assicurati che questa subnet non si sovrapponga a una subnet esistente in nessuna delle reti connesse.
  • Crea una regola NAT con match='nexthop.is_hybrid'.
  • Configura il gateway Private NAT in modo che venga applicato a tutti gli intervalli di indirizzi IP di subnet-a.

Hybrid NAT segue la procedura di prenotazione delle porte per prenotare i seguenti indirizzi IP di origine NAT e tuple di porte di origine per ciascuna delle VM nella rete. Ad esempio, il gateway Private NAT riserva 64 porte di origine per vm-a: 10.1.2.2:34000 a 10.1.2.2:34063.

Quando la VM utilizza il protocollo TCP per inviare un pacchetto al server di aggiornamento 192.168.2.2 sulla porta di destinazione 80, si verifica quanto segue:

  1. La VM invia un pacchetto di richiesta con questi attributi:

    • Indirizzo IP di origine: 192.168.1.2, l'indirizzo IP interno della VM
    • Porta di origine: 24000, la porta di origine effimera scelta dal sistema operativo della VM
    • Indirizzo di destinazione: 192.168.2.2, l'indirizzo IP del server di aggiornamento
    • Porta di destinazione: 80, la porta di destinazione per il traffico HTTP verso il server di aggiornamento
    • Protocollo: TCP
  2. Il gateway pvt-nat-gw esegue la Network Address Translation dell'origine (SNAT o NAT di origine) per il traffico in uscita, riscrivendo l'indirizzo IP di origine NAT e la porta di origine del pacchetto di richiesta:

    • Indirizzo IP di origine NAT: 10.1.2.2, da una delle tuple di indirizzi IP di origine e porte di origine NAT riservate della VM
    • Porta di origine: 34022, una porta di origine inutilizzata da una delle tuple di porte di origine riservate della VM
    • Indirizzo di destinazione: 192.168.2.2, invariato
    • Porta di destinazione: 80, invariata
    • Protocollo: TCP, invariato
  3. Il server di aggiornamento invia un pacchetto di risposta che arriva sul pvt-nat-gw gateway con questi attributi:

    • Indirizzo IP di origine: 192.168.2.2, l'indirizzo IP interno del server di aggiornamento
    • Porta di origine: 80, la risposta HTTP del server di aggiornamento
    • Indirizzo di destinazione: 10.1.2.2, che corrisponde all'indirizzo IP di origine NAT originale del pacchetto di richiesta
    • Porta di destinazione: 34022, che corrisponde alla porta di origine del pacchetto di richiesta
    • Protocollo: TCP, invariato
  4. Il gateway pvt-nat-gw esegue la Network Address Translation della destinazione (DNAT) sul pacchetto di risposta e riscrive l'indirizzo di destinazione e la porta di destinazione del pacchetto di risposta in modo che il pacchetto venga recapitato alla VM che ha richiesto l'aggiornamento con i seguenti attributi:

    • Indirizzo IP di origine: 192.168.2.2, invariato
    • Porta di origine: 80, invariata
    • Indirizzo di destinazione: 192.168.1.2, l'indirizzo IP interno della VM
    • Porta di destinazione: 24000, che corrisponde alla porta di origine effimera originale del pacchetto di richiesta
    • Protocollo: TCP, invariato

Passaggi successivi