Intervalli IP alias

Gli intervalli IP alias di Google Cloud consentono di assegnare intervalli di indirizzi IP interni come alias alle interfacce di rete di una macchina virtuale (VM). È utile se hai più servizi in esecuzione su una VM e vuoi assegnare a ogni servizio un indirizzo IP diverso. Gli intervalli IP alias funzionano anche con i pod GKE.

Se su una VM è in esecuzione un solo servizio, puoi farvi riferimento utilizzando l'indirizzo IP principale dell'interfaccia. Se su una VM sono in esecuzione più servizi, potresti voler assegnare a ciascuno un indirizzo IP interno diverso. Puoi farlo con gli intervalli IP alias.

Intervalli CIDR primari e secondari della subnet

Tutte le subnet hanno un intervallo CIDR primario, che corrisponde all'intervallo di indirizzi IP interni che definiscono la subnet. Ogni istanza VM riceve il proprio indirizzo IP interno principale da questo intervallo. Puoi anche assegnare intervalli IP alias da quell'intervallo principale oppure aggiungere un intervallo secondario alla subnet e allocare intervalli IP alias dall'intervallo secondario. L'utilizzo di intervalli IP alias non require intervalli di subnet secondari. Questi intervalli di subnet secondari forniscono solo uno strumento organizzativo.

Intervalli IP alias definiti nell'interfaccia di rete di una VM

Con gli alias IP puoi configurare più indirizzi IP interni che rappresentano i container o le applicazioni ospitati in una VM, senza dover definire un'interfaccia di rete separata. Puoi assegnare intervalli IP alias VM dagli intervalli principali o secondari della subnet.

In Configura intervalli IP alias vengono descritti i comandi per la configurazione di una subnet con intervalli secondari e per l'assegnazione di indirizzi IP alias alle VM.

Il seguente diagramma fornisce un'illustrazione di base degli intervalli CIDR primari e secondari e degli intervalli IP alias VM nell'interfaccia principale della VM:

Intervalli CIDR primari e secondari e intervalli IP alias VM (fai clic per ingrandire)
Intervalli CIDR principali e secondari e intervalli IP alias VM (fai clic per ingrandire)
  • Un intervallo CIDR principale 10.1.0.0/16 è configurato come parte di una subnet.
  • Un intervallo CIDR secondario 10.2.0.0/20 è configurato come parte di una subnet.
  • L'IP principale della VM 10.1.0.2 è allocato dall'intervallo CIDR principale 10.1.0.0/16, mentre un intervallo IP alias 10.2.1.0/24 è allocato nella VM dall'intervallo CIDR secondario 10.2.0.0/20.
  • Gli indirizzi nell'intervallo IP alias vengono utilizzati come indirizzi IP dei container ospitati nella VM.

Vantaggi principali degli intervalli IP alias

Quando sono configurati intervalli IP alias, Google Cloud installa automaticamente le route di rete Virtual Private Cloud (VPC) per gli intervalli IP principali e alias per la subnet dell'interfaccia di rete principale. L'agente di orchestrazione dei container non deve specificare la connettività di rete VPC per queste route. Questo semplifica il routing del traffico e la gestione dei container. Devi eseguire la configurazione in-ospite come descritto in Proprietà delle chiavi degli intervalli IP alias.

Quando gli indirizzi IP dei container vengono allocati da Google Cloud, i processi di convalida in Google Cloud assicurano che gli indirizzi IP dei pod dei container non siano in conflitto con gli indirizzi IP delle VM.

Quando sono configurati indirizzi IP alias, i controlli anti-spoofing vengono eseguiti sul traffico, assicurando che il traffico in uscita dalle VM utilizzi gli indirizzi IP delle VM e quelli dei pod come indirizzi di origine. I controlli anti-spoofing verificano che le VM non inviino traffico con indirizzi IP di origine arbitrari. L'utilizzo di route statiche per il networking di container sarebbe un approccio meno sicuro rispetto all'aliasing IP perché richiederebbe la disattivazione dei controlli anti-spoofing sulle VM host del container (i controlli anti-spoofing sono disabilitati quando l'IP forwarding è abilitato).

Gli intervalli IP alias sono instradabili all'interno della rete virtuale Google Cloud senza richiedere route aggiuntive. Non è necessario aggiungere una route per ogni alias IP e non devi tenere conto delle quote di route.

Gli indirizzi IP alias possono essere annunciati dal router Cloud a una rete on-premise connessa tramite VPN o Interconnect.

L'allocazione di intervalli IP alias da un intervallo CIDR secondario presenta vantaggi. Eseguendo l'allocazione da un intervallo separato dall'intervallo utilizzato per gli indirizzi IP principali, puoi separare l'infrastruttura (VM) dai servizi (container). Quando configuri spazi degli indirizzi separati per infrastruttura e servizi, puoi configurare i controlli firewall per gli indirizzi IP alias VM separatamente dai controlli firewall per gli indirizzi IP principali di una VM. Ad esempio, puoi consentire un determinato traffico per i pod dei container e negare un traffico simile per l'indirizzo IP principale della VM.

Architettura dei container in Google Cloud

Considera uno scenario in cui vuoi configurare servizi containerizzati su Google Cloud. Devi creare le VM che ospitano i servizi e, inoltre, i container.

In questo scenario, vuoi instradare il traffico da e ai container da e verso località on-premise collegate tramite una VPN. Tuttavia, non vuoi che gli indirizzi IP della VM principali siano raggiungibili tramite la VPN. Per creare questa configurazione, l'intervallo IP del container deve essere instradabile attraverso la VPN, ma non l'intervallo IP principale della VM. Al momento della creazione della VM, vuoi anche assegnare automaticamente un pool di indirizzi IP utilizzati per il container.

Per creare questa configurazione:

  • Quando crei la subnet, configuri
    • Un intervallo CIDR principale, ad esempio 10.128.0.0/16
    • Un intervallo CIDR secondario, ad esempio 172.16.0.0/16
  • Utilizza un modello di istanza per creare VM e assegnare automaticamente a ognuna quanto segue:
    • Un IP principale nell'intervallo 10.128.0.0/16
    • Un intervallo di alias /24 dallo spazio CIDR secondario 172.16.0.0/16, in modo da poter assegnare a ogni container su una VM un IP dall'intervallo CIDR secondario /24
  • Crea due regole firewall.
    • Una regola che nega al traffico che passa attraverso la VPN dall'ambiente on-premise di raggiungere l'intervallo CIDR principale della subnet.
    • Una regola che consente al traffico che attraversa la VPN dall'ambiente on-premise di raggiungere l'intervallo CIDR secondario della subnet.

Esempio: configurare i container con intervalli IP alias

Utilizzando intervalli IP alias, gli indirizzi IP dei container possono essere allocati da un intervallo CIDR secondario e configurati come indirizzi IP alias nella VM che ospita il container.

Configurazione dei container con indirizzi IP alias (fai clic per ingrandire)
Configurazione di container con indirizzi IP alias (fai clic per ingrandire)

Per creare la configurazione illustrata sopra:

  1. Crea una subnet con un intervallo CIDR 10.128.0.0/16 da cui sono allocati gli indirizzi IP delle VM, e un intervallo CIDR secondario 172.16.0.0/20 per l'uso esclusivo dei container, che verrà configurato come intervalli IP alias nella VM che li ospita:

    gcloud compute networks subnets create subnet-a \
        --network network-a \
        --range 10.128.0.0/16 \
        --secondary-range container-range=172.16.0.0/20
    
  2. Crea VM con un IP primario compreso nell'intervallo 10.128.0.0/16 e un intervallo IP alias 172.16.0.0/24 dall'intervallo CIDR secondario 172.16.0.0/20 affinché i container in quella VM utilizzino:

    gcloud compute instances create vm1 [...] \
        --network-interface subnet=subnet-a,aliases=container-range:172.16.0.0/24
    gcloud compute instances create vm2 [...] \
        --network-interface subnet=subnet-a,aliases=container-range:172.16.1.0/24
    
  3. Gli indirizzi IP dei container sono configurati in Google Cloud come indirizzi IP alias. In questa configurazione, sia gli IP principali che gli IP alias saranno raggiungibili tramite il tunnel VPN. Se il router Cloud è configurato, annuncierà automaticamente l'intervallo di subnet secondaria 172.16.0.0/20. Per ulteriori informazioni sull'utilizzo della VPN con il router Cloud, consulta Creazione di un tunnel VPN utilizzando il routing dinamico.

Per ulteriori informazioni sui comandi utilizzati per creare questa configurazione, consulta Configurare indirizzi e intervalli IP alias.

Esempio: diversi intervalli IP alias configurati in una singola istanza VM

Gli intervalli IP alias consentono di gestire l'allocazione degli IP per le applicazioni in esecuzione all'interno delle VM, anche con i container.

Potresti avere un deployment in cui alcuni container sono compatibili con le VM e altri no. I container di cui è possibile eseguire la migrazione possono essere configurati utilizzando intervalli /32, semplificando la migrazione individuale. I container non migrabili possono essere configurati utilizzando un intervallo più ampio, poiché rimarranno insieme.

In questo tipo di deployment, potresti richiedere più di un intervallo IP alias per ogni istanza VM, ad esempio /27 per i container non idonee alla migrazione e diversi intervalli /32 per i container compatibili.

Configurazione di VM con più intervalli IP alias (fai clic per ingrandire)
Configurazione di VM con più intervalli IP alias (fai clic per ingrandire)

Per configurare questo esempio, utilizza i seguenti comandi gcloud:

gcloud compute networks create vpc1 --subnet-mode custom
gcloud compute networks subnets create subnet1 --region us-central1 --network vpc1 --range 10.128.0.0/16 --secondary-range secondaryrange1=172.16.0.0/20
gcloud compute instances create vm1 --zone us-central1-a --network-interface "subnet=subnet1,aliases=secondaryrange1:172.16.0.0/27;secondaryrange1:172.16.1.0/32"
gcloud compute instances create vm2 --zone us-central1-a --network-interface "subnet=subnet1,aliases=secondaryrange1:172.16.0.32/27;secondaryrange1:172.16.1.1/32"

Indirizzi IP alias in reti e subnet VPC in modalità automatica

Nelle reti VPC in modalità automatica, esiste una subnet in ogni regione. Queste subnet create automaticamente hanno ciascuna un intervallo CIDR principale, ma nessun intervallo secondario. Per utilizzare l'IP alias con una rete VPC in modalità automatica, puoi allocare intervalli IP alias dall'intervallo CIDR principale della subnet creata automaticamente oppure aggiungere un intervallo secondario alla subnet creata automaticamente e allocare intervalli IP alias dal nuovo intervallo secondario.

In alternativa, puoi creare una nuova subnet con intervalli secondari nella rete VPC in modalità automatica a condizione che nessuno dei relativi intervalli si sovrapponga a 10.128.0.0/9. Potrai quindi creare istanze VM nella nuova subnet e allocare intervalli IP alias da qualsiasi intervallo nella subnet.

Se vuoi aggiungere intervalli secondari alla subnet, consulta Aggiungere intervalli CIDR secondari a una subnet esistente.

Indirizzi IP alias in reti e subnet in modalità personalizzata

Nelle reti in modalità personalizzata:

  • Tutte le subnet vengono create manualmente
  • Un intervallo CIDR principale è obbligatorio.
  • Facoltativamente, puoi creare intervalli CIDR secondari.

Proprietà della chiave degli intervalli IP alias

Le seguenti proprietà si applicano agli intervalli IP alias configurati nelle VM:

  • Dal punto di vista del sistema operativo delle VM, l'indirizzo IP principale e il gateway predefinito vengono generalmente allocati tramite DHCP. Gli indirizzi IP alias possono essere configurati nel sistema operativo della VM, che in genere è Linux o Windows, manualmente o utilizzando gli script.
  • L'indirizzo IP principale e l'intervallo IP alias dell'interfaccia devono essere allocati da intervalli CIDR configurati come parte della stessa subnet. Tieni presente i seguenti requisiti:
    • L'indirizzo IP principale deve essere allocato dall'intervallo CIDR primario.
    • L'intervallo IP alias può essere allocato dall'intervallo CIDR principale o da un intervallo CIDR secondario della stessa subnet.
    • Per un'interfaccia di rete VM, l'IP alias deve provenire dalla stessa risorsa della subnet che fornisce l'indirizzo IP per l'interfaccia di rete principale. Non puoi selezionare un intervallo CIDR primario o secondario da un'altra risorsa della subnet.
    • L'indirizzo IP principale può essere un indirizzo IP interno statico o temporaneo.
    • Gli intervalli IP alias sono facoltativi e non vengono aggiunti automaticamente. Un intervallo IP alias può essere configurato durante la creazione o la modifica dell'istanza.
    • Un intervallo IP alias può essere configurato come intervallo CIDR esplicito (ad esempio 10.128.1.0/24), come singolo indirizzo IP (ad esempio 10.128.7.29/32) o come netmask (/24). Un intervallo IP alias può essere specificato o allocato automaticamente specificando la netmask.
    • Per utilizzare un singolo indirizzo IP in un intervallo IP alias, utilizza la netmask /32.
    • Poiché tutte le subnet in una rete VPC condividono un singolo gateway predefinito, tutti gli indirizzi IP alias all'interno di un'interfaccia condividono lo stesso gateway predefinito dell'indirizzo IP principale.
    • Non puoi utilizzare indirizzi IP riservati in intervalli IP alias.
Gli IP alias all'interno di un'interfaccia condividono lo stesso gateway predefinito dell'indirizzo IP principale (fai clic per ingrandire)
Gli IP alias all'interno di un'interfaccia condividono lo stesso gateway predefinito dell'indirizzo IP principale (fai clic per ingrandire)

DNS con indirizzi IP alias

Google Cloud configura automaticamente il DNS interno per l'IP principale dell'interfaccia principale di ogni istanza VM. In questo modo, il nome host dell'istanza viene associato all'indirizzo IP principale dell'interfaccia principale. Tuttavia, la ricerca DNS su quel nome host funziona solo nella rete che contiene l'interfaccia principale.

Google Cloud non associa automaticamente altri indirizzi IP al nome host. Google Cloud non associa gli indirizzi IP alias nell'interfaccia principale al nome host e non associa alcun indirizzo IP delle interfacce secondarie al nome host.

Puoi configurare manualmente il DNS per associare altri indirizzi IP.

Firewall

Tutto il traffico in entrata o in uscita, incluso quello per gli intervalli IP alias, viene valutato da una regola firewall VPC per un tag di destinazione o account di servizio di destinazione corrispondente. Per maggiori dettagli sui target e sugli IP alias, consulta Destinazioni e indirizzi IP.

Gli intervalli IP alias non sono inclusi quando specifica le origini per una regola firewall in entrata utilizzando i tag di origine o gli account di servizio di origine.

Route statiche

Quando crei una route statica che utilizza un'istanza dell'hop successivo specificata da un indirizzo IPv4 interno, Google Cloud verifica che l'indirizzo IP della VM dell'hop successivo rientri in un intervallo IPv4 della subnet di una subnet nella rete VPC della route. Tuttavia, Google Cloud programma la route solo se l'indirizzo dell'hop successivo è un indirizzo IPv4 interno principale assegnato all'interfaccia di rete (NIC) di una VM nella rete VPC della route (non una rete VPC in peering).

Anche se è possibile creare una route il cui indirizzo dell'hop successivo è un indirizzo IPv4 interno che rientra in un intervallo IP alias, Google Cloud non programma la route e Google Cloud considera l'hop successivo non attivo. I pacchetti inviati alla destinazione della route potrebbero essere ignorati a seconda che esistano altre route per la stessa destinazione e se quelle altre route hanno hop successivi in esecuzione.

Per ulteriori informazioni, vedi:

Peering di rete VPC

Il peering di rete VPC consente di eseguire il peering di due reti VPC in modo che le VM nelle due reti possano comunicare tramite indirizzi IP privati interni.

Gli intervalli IP principali e secondari di una subnet sono raggiungibili dalle istanze VM in una rete in peering.

I controlli di sovrapposizione delle subnet nelle reti in peering assicurano che gli intervalli primari e secondari non si sovrappongano ad intervalli in peering.

Aliasing IP con peering di rete (fai clic per ingrandire)
Aliasing IP con peering di rete (fai clic per ingrandire)

Passaggi successivi