Panoramica del forwarding del protocollo

Il forwarding dei protocolli utilizza una regola di inoltro regionale per inviare i pacchetti di un protocollo specifico a una singola istanza di una macchina virtuale (VM). La regola di inoltro può avere un indirizzo IP interno o esterno. Il forwarding del protocollo invia i pacchetti mantenendo l'indirizzo IP di destinazione della regola di inoltro. La La regola di forwarding fa riferimento a un oggetto denominato istanza di destinazione, che a sua volta fa riferimento a una singola istanza VM.

Puoi utilizzare il forwarding del protocollo per:

  • Fornisci un indirizzo IP che può essere spostato da un'istanza all'altra modificando la VM a cui fa riferimento l'oggetto dell'istanza di destinazione oppure modificando all'istanza di destinazione a cui fa riferimento la regola di forwarding.
  • Inoltra i pacchetti a VM diverse in base al protocollo e alla porta. Due regole di inoltro possono condividere lo stesso indirizzo IP purché le informazioni su porta e protocollo siano univoche.
  • (Solo inoltro del protocollo esterno) Definisci indirizzi IP esterni aggiuntivi per una determinata interfaccia di rete. A differenza di un'interfaccia di rete con un NAT 1:1 configurazione per il proprio indirizzo IPv4 esterno, l'inoltro di protocollo mantiene all'indirizzo IP di destinazione della regola di forwarding.
  • Invia i pacchetti i cui indirizzi IP di origine corrispondono all'indirizzo IP della regola di inoltro.

L'inoltro del protocollo è diverso da un caricamento passthrough Google Cloud nel nei seguenti modi:

  • Nessun bilanciamento del carico. Un'istanza di destinazione distribuisce i pacchetti solo in un VM.
  • Nessun controllo di integrità. A differenza di un servizio di backend, un'istanza di destinazione per supportare un controllo di integrità. Devi utilizzare altri mezzi per assicurarti che il software necessario sia in esecuzione e operativo sulla VM a cui fa riferimento l'istanza di destinazione.

Architettura

Il forwarding del protocollo utilizza regole di inoltro esterne o interne regionali e un oggetto istanza di destinazione zonale. L'istanza di destinazione e la VM a cui fa riferimento devono trovarsi in una zona della regione della regola di inoltro.

  • Forwarding del protocollo esterno. Puoi configurare più regole di inoltro per far puntare a una singola istanza di destinazione, il che ti consente di utilizzare più indirizzi IP esterni con una singola istanza VM. Puoi usare questa opzione in scenari in cui vuoi gestire i dati di una sola istanza VM, ma attraverso diverse indirizzi IP o protocolli e porte diversi. Ciò è particolarmente utile per per configurare l'hosting virtuale SSL. L'inoltro del protocollo esterno può gestire le connessioni da client IPv6.

    Il forwarding dei protocolli esterni supporta i seguenti protocolli: AH, ESP, GRE, ICMP, ICMPv6, SCTP, TCP e UDP

    Il seguente diagramma mostra un esempio di forwarding del protocollo esterno dell'architettura. Per informazioni sulla configurazione, vedi Configurare il protocollo esterno di routing.

    Architettura di inoltro del protocollo esterno.
    Architettura di forwarding del protocollo esterno
  • Inoltro del protocollo interno. L'inoltro di protocolli interni utilizza un indirizzo IPv4 interno regionale (dall'intervallo di indirizzi IPv4 principale di una subnet) o un indirizzo IPv6 interno regionale (dall'intervallo di indirizzi IPv6 di una subnet).

    L'inoltro del protocollo interno supporta i protocolli TCP e UDP.

    Il seguente diagramma mostra un esempio di architettura di forwarding del protocollo interno. Per scoprire come configurare questa opzione, consulta Configurare il forwarding del protocollo interno.

    Architettura di inoltro del protocollo interno.
    Architettura di inoltro dei protocolli interni

    Con il forwarding del protocollo interno, puoi modificare la destinazione di un forwarding per passare da un'istanza di destinazione a un servizio di backend di un e il bilanciatore del carico passthrough. Per maggiori dettagli, consulta Passare da un'istanza di destinazione all'altra e un backend Google Cloud.

Regole di forwarding

Ogni regola di inoltro corrisponde a un indirizzo IP, a un protocollo e, facoltativamente, a informazioni sulla porta (se specificate e se il protocollo supporta le porte). Quando viene eseguito un inoltro fa riferimento a un'istanza di destinazione, Google Cloud instrada i pacchetti l'indirizzo, il protocollo e le specifiche della porta della regola di forwarding alla VM a cui viene fatto riferimento dall'istanza di destinazione.

  • Inoltro del protocollo interno:

    • Supporto degli indirizzi IPv4: un indirizzo IPv4 interno a livello di regione di destinazione (statico riservato o temporaneo) dall'intervallo IPv4 principale di una subnet.

    • Supporto degli indirizzi IPv6: la regola di inoltro fa riferimento a un intervallo di /96 indirizzi IP dall'intervallo di indirizzi IPv6 interno /64 della subnet. La subnet deve essere una subnet a doppio stack con ipv6-access-type impostato su INTERNAL. Gli indirizzi IPv6 interni sono disponibili solo nel livello Premium. Prenotare un IPv6 interno a livello di regione indirizzo è supportato solo per le istanze, quindi devi utilizzare un indirizzo IPv6 temporaneo la regola di forwarding.

    • Opzioni di protocollo:TCP(valore predefinito) e UDP.

    • Opzioni di specifica delle porte:un elenco di massimo cinque porte contigue o o tutte le porte non contigue.

  • Inoltro del protocollo esterno:

    • Supporto degli indirizzi IPv4: la regola di inoltro fa riferimento a un singolo indirizzo IPv4 esterno regionale. IPv4 esterno a livello di regione provengono da un pool univoco per ogni regione Google Cloud. L'indirizzo IP può essere un indirizzo statico riservato o un indirizzo temporaneo.

    • Supporto di indirizzi IPv6: la regola di forwarding fa riferimento a un intervallo di indirizzi IP /96 indirizzi dell'intervallo di indirizzi IPv6 esterni /64 della subnet. La subnet deve essere una subnet a doppio stack con ipv6-access-type impostato su EXTERNAL. Esterni Gli indirizzi IPv6 sono disponibili solo nel livello Premium. L'intervallo di indirizzi IPv6 può essere un indirizzo statico riservato o un indirizzo temporaneo.

    • Opzioni di protocollo: AH, ESP, ICMP, SCTP, TCP (valore predefinito), UDP e L3_DEFAULT

      • L'impostazione del protocollo della regola di forwarding L3_DEFAULT può essere utilizzata per gestire tutto il traffico del protocollo IP.
      • Le regole di inoltro IPv6 non supportano l'impostazione del protocollo ICMP perché il protocollo ICMP supporta solo gli indirizzi IPv4. La pubblicazione di annunci ICMPv6 e GRE imposta il protocollo della regola di forwarding su L3_DEFAULT.
    • Opzioni di specifica delle porte:un intervallo di porte contigue o tutte le porte.

Quando lavori con le regole di forwarding, tieni presente quanto segue:

  • Per l'inoltro del protocollo, una regola di inoltro può fare riferimento a una sola istanza di destinazione.

  • Per i bilanciatori del carico di rete passthrough interni e i bilanciatori del carico di rete passthrough esterni basati sui servizi di backend, una regola di inoltro può fare riferimento a un solo servizio di backend.

  • Puoi passare dal forwarding del protocollo interno a un bilanciatore del carico di rete passthrough interno senza eliminare e ricreare la regola di forwarding. Per passare dal forwarding del protocollo esterno a un bilanciatore del carico di rete passthrough esterno basato su servizio di backend, devi eliminare e ricreare la regola di inoltro. Per maggiori dettagli, consulta Passare da un'istanza di destinazione a un servizio di backend.

  • Le informazioni sulla porta possono essere specificate solo per i protocolli che utilizzano il concetto di porta: TCP, UDP o SCTP.

  • L'opzione del protocollo L3_DEFAULT inoltra tutti AH, ESP, GRE, ICMP, ICMPv6, SCTP, TCP e UDP protocolli. Per i protocolli TCP, UDP e SCTP, L3_DEFAULT inoltra tutti porte.

  • Se prevedi pacchetti UDP frammentati, esegui una delle seguenti operazioni per assicurarti che tutti i frammenti (inclusi quelli senza informazioni sulla porta) vengano inviati all'istanza:

    • Utilizza una singola regola di forwarding di L3_DEFAULT oppure
    • Utilizza una singola regola di inoltro UDP configurata per inoltrare tutte le porte.

Istanze di destinazione

Un'istanza di destinazione è una risorsa di zona che fa riferimento a un'istanza VM nella nella stessa zona. La regola di forwarding che fa riferimento all'istanza di destinazione deve trovarsi in la regione contenente la zona dell'istanza di destinazione. Poiché un'istanza di destinazione non dispone di un criterio Cloud NAT applicato, può essere utilizzato per IPsec traffico che non può attraversare NAT.

Supporto di più NIC

Un'istanza di destinazione supporta la specifica dell'interfaccia di rete (NIC) dell'istanza VM a cui fa riferimento. Utilizza il flag --network per specificare il nome di una rete VPC in cui la VM a cui si fa riferimento ha una NIC:

  • Se ometti il flag --network, l'istanza di destinazione invia i pacchetti all'interfaccia nic0 della VM a cui fa riferimento.
  • Se utilizzi il flag --network, la VM a cui fa riferimento l'istanza di destinazione deve avere una NIC nella rete VPC.
  • Per il forwarding del protocollo interno, la subnet utilizzata dalla regola di forwarding deve Essere collocato nella rete VPC utilizzata dall'istanza di destinazione interfaccia di rete.

Supporto IPv6

Se vuoi che il deployment del forwarding del protocollo esterno supporti il traffico IPv6, l'istanza VM deve essere configurata in una subnet a doppio stack che si trovi nella stessa regione della regola di forwarding IPv6. Puoi utilizzare una sottorete con ipv6-access-type impostato su EXTERNAL o INTERNAL per l'istanza VM. Usando una subnet con ipv6-access-type impostato su INTERNAL richiede l'uso di un doppio stack separato subnet con ipv6-access-type impostato su EXTERNAL per il forwarding esterno personalizzata. Per istruzioni, consulta Aggiungere un componente dual stack subnet.

Inoltre, l'istanza VM stessa deve essere un'istanza dual-stack. Imposta stack-type della VM su IPv4_IPv6. La VM eredita ipv6-access-type (EXTERNAL o INTERNAL) dalla subnet. Per istruzioni, vedi Crea una VM e abilita IPv6. Se quando vuoi utilizzare una VM esistente, aggiornala in modo che sia a doppio stack utilizzando gcloud compute instances network-interfaces update .

Indirizzi IP per i pacchetti di richiesta e risposta

Quando un'istanza di destinazione riceve un pacchetto da un client, gli indirizzi IP di origine e di destinazione sono quelli mostrati in questa tabella.

Tabella 1. Indirizzi IP di origine e di destinazione per i pacchetti di richiesta
Tipo di forwarding del protocollo Indirizzo IP di origine Indirizzo IP di destinazione
Forwarding del protocollo esterno L'indirizzo IP esterno associato a una VM Google Cloud o a indirizzo IP esterno di un client su internet. L'indirizzo IP della regola di forwarding.
Inoltro interno del protocollo L'indirizzo IP interno di un client; per i client Google Cloud, l'indirizzo IPv4 o IPv6 interno principale o un indirizzo IPv4 di un intervallo IP alias dell'interfaccia di rete di una VM. L'indirizzo IP della regola di inoltro.

Il software in esecuzione sulle VM dell'istanza di destinazione deve essere configurato per eseguire seguenti:

  • Ascolta (associa a) l'indirizzo IP della regola di inoltro o a qualsiasi indirizzo IP (0.0.0.0 o ::).
  • Se il protocollo della regola di forwarding supporta le porte, resta in ascolto (associazione a) inclusa nella regola di forwarding.

I pacchetti di ritorno vengono inviati direttamente dall'istanza di destinazione al client. La gli indirizzi IP di origine e di destinazione del pacchetto di risposte dipendono dal protocollo:

  • TCP è orientato alla connessione. Le istanze di destinazione devono rispondere con pacchetti che hanno indirizzi IP di origine corrispondenti all'indirizzo IP della regola di inoltro. In questo modo, il client può associare i pacchetti di risposta alla connessione TCP appropriata.
  • AH, ESP, GRE, ICMP, ICMPv6 e UDP sono senza connessione. Le istanze di destinazione possono inviare pacchetti di risposta con indirizzi IP di origine che corrispondono all'indirizzo IP della regola di forwarding o a qualsiasi indirizzo IP assegnato al NIC della VM nella stessa rete VPC della regola di forwarding. In pratica, la maggior parte i client si aspettano che la risposta provenga dallo stesso indirizzo IP a cui e pacchetti inviati.

La tabella seguente riassume le origini e le destinazioni per i pacchetti di ritorno:

Tabella 2. Indirizzi IP di origine e di destinazione per la restituzione o pacchetti
Tipo di traffico Indirizzo IP di origine Indirizzo IP di destinazione
TCP L'indirizzo IP della regola di inoltro. L'indirizzo IP di origine del pacchetto di richiesta.
AH, ESP, GRE, ICMP, ICMPv6 e UDP* Nella maggior parte dei casi d'uso, l'indirizzo IP della regola di forwarding. L'indirizzo IP di origine del pacchetto di richiesta.

* AH, ESP, GRE, ICMP e ICMPv6 sono supportati solo con il forwarding del protocollo esterno.

Con il forwarding del protocollo interno, è possibile impostare il valore l'origine del pacchetto di risposta all'indirizzo IPv4 interno principale o IPv6 del NIC della VM o un intervallo di indirizzi IP alias. Se per la VM è abilitato l'IP forwarding, possono essere utilizzate anche origini di indirizzi IP arbitrari. Il mancato utilizzo dell'indirizzo IP della regola di inoltro come origine è uno scenario avanzato perché il client riceve un pacchetto di risposta da un indirizzo IP interno che non corrisponde all'indirizzo IP a cui ha inviato un pacchetto di richiesta.

Connettività a internet in uscita dalle istanze di destinazione

Le istanze VM a cui fanno riferimento le istanze di destinazione possono avviare connessioni a internet utilizzando l'indirizzo IP della regola di inoltro associata come indirizzo IP di origine della connessione in uscita.

In genere, un'istanza VM utilizza sempre il proprio indirizzo IP esterno, Cloud NAT per avviare le connessioni. Utilizzi l'IP della regola di forwarding per avviare le connessioni dalle istanze di destinazione solo in scenari speciali ad esempio quando è necessario che le istanze VM abbiano origine e ricezione delle connessioni stesso indirizzo IP esterno.

I pacchetti in uscita inviati dalle VM dell'istanza di destinazione direttamente a internet non hanno limitazioni per i protocolli e le porte di traffico. Anche se un pacchetto in uscita utilizza l'indirizzo IP della regola di inoltro come origine, il protocollo e la porta di origine del pacchetto non devono corrispondere alla specifica della porta e del protocollo della regola di inoltro. Tuttavia, i pacchetti di risposta in entrata devono corrispondere l'indirizzo IP, il protocollo e la porta di destinazione della regola di forwarding. Per maggiori informazioni per informazioni, vedi Percorsi per bilanciatori del carico di rete passthrough esterni e protocollo esterno di routing.

Questo percorso per la connettività a internet da una VM istanza di destinazione è il comportamento predefinito previsto in base alle regole del firewall implicite di Google Cloud. Tuttavia, se hai dubbi sulla sicurezza di lasciare aperto questo percorso, puoi utilizzare regole firewall in uscita mirate per bloccare il traffico in uscita non richiesto verso internet.

Limitazioni

  • Una regola di forwarding non può puntare a più di un'istanza di destinazione.
  • I controlli di integrità non sono supportati con le istanze target. Devi assicurarti che il software necessario sia in esecuzione e operativo sulla VM a cui fa riferimento l'istanza di destinazione.
  • L'inoltro del protocollo interno per il traffico IPv6 presenta le seguenti limitazioni:
    • Il protocollo L3_DEFAULT non è supportato. Usa TCP o UDP.
    • Le NIC multiple non sono supportate.

API e riferimento gcloud

Per le regole di forwarding, consulta quanto segue:

Per le istanze di destinazione, consulta quanto segue:

Prezzi

Il forwarding del protocollo viene addebitato alla stessa tariffa del bilanciamento del carico. C'è un per la regola di forwarding e per i dati in entrata elaborati l'istanza di destinazione.

Per tutte le informazioni sui prezzi, consulta la sezione Prezzi.

Quote e limiti

Per le quote delle regole di forwarding per l'inoltro del protocollo, consulta Quote e limiti: regole di forwarding.

Passaggi successivi