Aggiungi interfacce di rete dinamiche a un'istanza

Questa pagina descrive come aggiungere una scheda di interfaccia di rete dinamica (NIC) a un'istanza Compute Engine esistente.

Per informazioni sulla creazione di nuove istanze, consulta Creare VM con più interfacce di rete.

Prima di iniziare

Prima di aggiungere NIC dinamiche a un'istanza:

Aggiungere una NIC dinamica

Le sezioni seguenti descrivono come aggiungere una NIC dinamica a un'istanza singola o a istanze che fanno parte di un gruppo di istanze gestite (MIG).

Quando aggiungi una NIC dinamica, potresti notare un ritardo di propagazione. Questo ritardo è in genere di pochi secondi, ma in rari casi può arrivare fino a un minuto.

Aggiungere una NIC dinamica a un'istanza

Questa sezione descrive come aggiungere una NIC dinamica a un'istanza.

Console

  1. Nella console Google Cloud , vai alla pagina Istanze VM.

    Vai a Istanze VM

  2. Fai clic sul nome dell'istanza a cui vuoi aggiungere una NIC dinamica.

  3. Nella pagina dei dettagli dell'istanza, fai clic su Modifica.

  4. Nella sezione Interfacce di rete dinamiche, fai clic su Aggiungi un'interfaccia di rete dinamica e segui questi passaggi:

    1. Nel campo Tipo di interfaccia, seleziona VPC.

    2. Nel campo Interfaccia di rete principale, seleziona la vNIC principale per cui creare la NIC dinamica.

    3. Nel campo ID VLAN, inserisci l'ID VLAN della NIC dinamica.

    4. Per Rete e Subnet, seleziona la rete e la subnet che vuoi utilizzare.

    5. Seleziona una delle seguenti opzioni per il tipo di stack IP per la NIC dinamica:

      • IPv4 (stack singolo)
      • IPv4 e IPv6 (stack doppio)
      • IPv6 (stack singolo)
    6. Per le NIC dinamiche con indirizzi IPv4:

      1. Per Indirizzo IPv4 interno principale, seleziona una delle seguenti opzioni:

        • Temporaneo (automatico) per assegnare automaticamente un nuovo indirizzo IPv4 temporaneo
        • Temporaneo (personalizzato) per specificare manualmente un nuovo indirizzo IPv4 temporaneo
        • Un indirizzo IPv4 interno statico riservato dall'elenco
        • Prenota indirizzo IPv4 interno statico per prenotare e assegnare un nuovo indirizzo IPv4 interno statico
      2. Per Indirizzo IPv4 esterno, seleziona una delle seguenti opzioni:

        • Temporaneo per assegnare un nuovo indirizzo IPv4 temporaneo
        • Nessuno per non assegnare un indirizzo IPv4 esterno
        • Un indirizzo IPv4 statico riservato dall'elenco
        • Prenota indirizzo IP esterno statico per prenotare e assegnare un nuovo indirizzo IPv4 esterno statico
      3. Se vuoi, puoi assegnare uno o più intervalli IP alias all'interfaccia di rete. Per assegnare un intervallo IP alias:

        1. In Intervalli IP alias, fai clic su Aggiungi intervallo IP.
        2. In Intervallo subnet, seleziona un intervallo di indirizzi IPv4 principale della subnet o un intervallo di indirizzi IPv4 secondario della subnet da utilizzare.
        3. Per Intervallo IP alias, inserisci un intervallo IP in notazione CIDR. Questo intervallo deve essere un intervallo non utilizzato dell'intervallo IP della subnet che hai selezionato.

        Per ulteriori informazioni sull'assegnazione di intervalli IP alias alle interfacce di rete delle VM, consulta Configura intervalli IP alias.

    7. Per le NIC dinamiche con indirizzi IPv6, configura un intervallo di indirizzi IPv6 interno o esterno, a seconda del tipo di accesso della subnet connessa. Per Indirizzo IPv6 interno principale o Indirizzo IPv6 esterno, seleziona una delle seguenti opzioni:

      • Temporaneo (automatico) per assegnare automaticamente un nuovo intervallo di indirizzi IPv6 temporanei
      • Temporaneo (personalizzato) per specificare manualmente un nuovo intervallo di indirizzi IPv6 temporanei
      • Un intervallo di indirizzi IPv6 statici riservati dall'elenco
      • Prenota indirizzo IPv6 interno statico o Prenota indirizzo IPv6 esterno statico per prenotare e assegnare un nuovo intervallo di indirizzi IPv6 statici
    8. Per completare la modifica delle proprietà della NIC dinamica, fai clic su Fine.

  5. Per salvare la configurazione, fai clic su Salva.

gcloud

Per aggiungere una NIC dinamica a un'istanza esistente, utilizza il comando gcloud compute instances network-interfaces add.

gcloud compute instances network-interfaces add INSTANCE_NAME \
   --zone=ZONE \
   --vlan=VLAN_ID \
   --parent-nic-name=PARENT_VNIC_NAME \
   --network=NETWORK \
   --subnetwork=SUBNET

Sostituisci quanto segue:

  • INSTANCE_NAME: il nome dell'istanza a cui aggiungere la NIC dinamica
  • ZONE: la zona dell'istanza
  • VLAN_ID: l'ID VLAN della NIC dinamica
  • PARENT_VNIC_NAME: il nome della vNIC principale, ad esempio nic0
  • NETWORK: la rete a cui è collegata la NIC dinamica
  • SUBNET: la subnet a cui si collega la NIC dinamica

In alternativa, puoi aggiungere una NIC dinamica a un'istanza quando aggiorni le proprietà dell'istanza. Per saperne di più, consulta Aggiorna le proprietà delle istanze.

API

Per aggiungere una NIC dinamica a un'istanza esistente, utilizza il metodo instances.addNetworkInterface.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/addNetworkInterface
{
  "subnetwork": "regions/REGION/subnetworks/SUBNET",
  "parentNicName": "PARENT_VNIC_NAME",
  "vlan": "VLAN_ID"
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto che contiene l'istanza
  • ZONE: la zona contenente l'istanza
  • INSTANCE_NAME: il nome dell'istanza a cui aggiungere una NIC dinamica
  • REGION: la regione che contiene l'istanza
  • SUBNET: la subnet a cui è collegata la NIC dinamica
  • PARENT_VNIC_NAME: il nome della vNIC principale, ad esempio nic0
  • VLAN_ID: l'ID VLAN della NIC dinamica

In alternativa, puoi aggiungere una NIC dinamica a un'istanza quando aggiorni le proprietà dell'istanza. Per saperne di più, consulta Aggiorna le proprietà delle istanze.

Aggiungere una NIC dinamica alle istanze in un MIG

Questa sezione descrive come aggiungere una NIC dinamica alle istanze in un MIG creando un nuovo modello di istanza e applicando la configurazione al MIG. L'aggiornamento di un modello di istanza esistente non è supportato.

Per ulteriori informazioni sulla creazione di template di istanze, consulta Crea template di istanze. Per visualizzare i modelli di istanza esistenti, consulta Scarica, elenca ed elimina modelli di istanza.

Console

  1. Vai alla pagina Template di istanza.

    Vai a Template di istanza

  2. Fai clic sul template di istanza da copiare e aggiornare.

  3. Fai clic su Crea simile.

  4. Espandi la sezione Opzioni avanzate e poi la sezione Networking.

  5. Nella sezione Interfacce di rete dinamiche, fai clic su Aggiungi un'interfaccia di rete dinamica e segui questi passaggi:

    1. Nel campo Tipo di interfaccia, seleziona VPC.

    2. Nel campo Interfaccia di rete principale, seleziona la vNIC principale per cui creare la NIC dinamica.

    3. Nel campo ID VLAN, inserisci l'ID VLAN della NIC dinamica.

    4. Per Rete e Subnet, seleziona la rete e la subnet che vuoi utilizzare.

    5. Seleziona una delle seguenti opzioni per il tipo di stack IP per la NIC dinamica:

      • IPv4 (stack singolo)
      • IPv4 e IPv6 (stack doppio)
      • IPv6 (stack singolo)
    6. Per le NIC dinamiche con indirizzi IPv4:

      1. Per Indirizzo IPv4 interno principale, seleziona una delle seguenti opzioni:

        • Temporaneo (automatico) per assegnare automaticamente un nuovo indirizzo IPv4 temporaneo
        • Temporaneo (personalizzato) per specificare manualmente un nuovo indirizzo IPv4 temporaneo
        • Un indirizzo IPv4 interno statico riservato dall'elenco
        • Prenota indirizzo IPv4 interno statico per prenotare e assegnare un nuovo indirizzo IPv4 interno statico
      2. Per Indirizzo IPv4 esterno, seleziona una delle seguenti opzioni:

        • Temporaneo per assegnare un nuovo indirizzo IPv4 temporaneo
        • Nessuno per non assegnare un indirizzo IPv4 esterno
        • Un indirizzo IPv4 statico riservato dall'elenco
        • Prenota indirizzo IP esterno statico per prenotare e assegnare un nuovo indirizzo IPv4 esterno statico
      3. Se vuoi, puoi assegnare uno o più intervalli IP alias all'interfaccia di rete. Per assegnare un intervallo IP alias:

        1. In Intervalli IP alias, fai clic su Aggiungi intervallo IP.
        2. In Intervallo subnet, seleziona un intervallo di indirizzi IPv4 principale della subnet o un intervallo di indirizzi IPv4 secondario della subnet da utilizzare.
        3. Per Intervallo IP alias, inserisci un intervallo IP in notazione CIDR. Questo intervallo deve essere un intervallo non utilizzato dell'intervallo IP della subnet che hai selezionato.

        Per ulteriori informazioni sull'assegnazione di intervalli IP alias alle interfacce di rete delle VM, consulta Configura intervalli IP alias.

    7. Per le NIC dinamiche con indirizzi IPv6, configura un intervallo di indirizzi IPv6 interno o esterno, a seconda del tipo di accesso della subnet connessa. Per Indirizzo IPv6 interno principale o Indirizzo IPv6 esterno, seleziona una delle seguenti opzioni:

      • Temporaneo (automatico) per assegnare automaticamente un nuovo intervallo di indirizzi IPv6 temporanei
      • Temporaneo (personalizzato) per specificare manualmente un nuovo intervallo di indirizzi IPv6 temporanei
      • Un intervallo di indirizzi IPv6 statici riservati dall'elenco
      • Prenota indirizzo IPv6 interno statico o Prenota indirizzo IPv6 esterno statico per prenotare e assegnare un nuovo intervallo di indirizzi IPv6 statici
    8. Per completare la modifica delle proprietà della NIC dinamica, fai clic su Fine.

  6. Per creare il template di istanza, fai clic su Crea.

  7. Segui i passaggi per applicare nuove configurazioni delle VM in un MIG.

    Se vuoi aggiornare le istanze senza riavviarle o ricrearle, imposta l'azione minima su REFRESH. Per ulteriori informazioni, consulta le seguenti risorse:

gcloud

  1. Per creare un nuovo modello di istanza che aggiunge una NIC dinamica, utilizza il comando gcloud compute instance-templates create.

    Includi il flag --network-interface per ogni interfaccia di rete del modello di istanza esistente e aggiungi una nuova interfaccia di rete che specifica la chiave vlan per creare una NIC dinamica.

    L'esempio seguente aggiunge una NIC dinamica in nic0. Puoi specificare interfacce di rete e proprietà aggiuntive in base alle necessità. Per altri esempi di come creare istanze con più interfacce di rete, consulta Crea VM con più interfacce di rete.

    gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
       --network-interface=network=NETWORK_A,subnet=SUBNET_A \
       --network-interface=network=NETWORK_B,subnet=SUBNET_B,vlan=VLAN_ID
    

    Sostituisci quanto segue:

    • INSTANCE_TEMPLATE_NAME: il nome del nuovo modello di istanza.
    • NETWORK_A, NETWORK_B: la rete a cui è collegata l'interfaccia.
    • SUBNET_A, SUBNET_B: la subnet a cui è collegata l'interfaccia.
    • VLAN_ID: un ID VLAN. Se specifichi un ID VLAN, l'interfaccia di rete viene configurata come NIC dinamica. Devi inserire una NIC dinamica dopo la relativa vNIC padre nel comando.
  2. Segui i passaggi per applicare nuove configurazioni delle VM in un MIG.

    Se vuoi aggiornare le istanze senza riavviarle o ricrearle, imposta l'azione minima su REFRESH. Per ulteriori informazioni, consulta le seguenti risorse:

API

  1. Per creare un nuovo modello di istanza che aggiunge una NIC dinamica, utilizza il metodo instanceTemplates.insert per creare un modello di istanza globale o il metodo regionInstanceTemplates.insert per creare un modello di istanza regionale.

    Nel campo networkInterfaces, specifica ogni interfaccia di rete del modello di istanza esistente e aggiungi una nuova interfaccia di rete che includa il campo vlan per creare una NIC dinamica.

    L'esempio seguente aggiunge una NIC dinamica in nic0. Puoi specificare interfacce di rete e proprietà aggiuntive in base alle necessità. Per altri esempi di come creare istanze con più interfacce di rete, consulta Crea VM con più interfacce di rete.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/instanceTemplates
    {
       ....
    
       "networkInterfaces": [
         {
           "subnetwork": "regions/REGION/subnetworks/SUBNET_A"
         },
         {
           "subnetwork": "regions/REGION/subnetworks/SUBNET_B",
           "vlan": "VLAN_ID"
         },
           additional network interfaces...
       ],
       other instance settings...
     }
    

    Sostituisci quanto segue:

    • PROJECT_ID: l'ID del progetto che contiene il template di istanza.
    • REGION: la regione che contiene le istanze.
    • SUBNET_A, SUBNET_B: le subnet in cui si trova ogni interfaccia di rete.
    • VLAN_ID: un ID VLAN. Se specifichi un ID VLAN, l'interfaccia di rete viene configurata come NIC dinamica. Devi inserire una NIC dinamica dopo la vNIC padre nella richiesta.
  2. Segui i passaggi per applicare nuove configurazioni delle VM in un MIG.

    Se vuoi aggiornare le istanze senza riavviarle o ricrearle, imposta l'azione minima su REFRESH. Per ulteriori informazioni, consulta le seguenti risorse:

Configura il sistema operativo guest per le NIC dinamiche

Questa sezione descrive come completare la configurazione aggiuntiva del sistema operativo guest necessaria quando aggiungi NIC dinamiche a un'istanza nuova o esistente.

Scegli una delle seguenti opzioni di configurazione:

Opzione di configurazione Descrizione
Configurare la gestione automatica delle NIC dinamiche (consigliato)

Utilizza l'agente guest per la gestione automatica delle schede di interfaccia di rete dinamiche.

L'ambiente guest include l'agente guest, che automatizza l'installazione e la gestione delle interfacce VLAN nello spazio dei nomi root nelle distribuzioni Linux delle immagini del sistema operativo Google Cloud .

Se configuri la gestione automatica delle NIC dinamiche, utilizza la versione 20251115.00 o successive dell'agente guest. Sebbene il supporto di questa funzionalità sia stato introdotto nella versione dell'agente guest 20250204.02, esiste un problema noto con le versioni dell'agente guest 20250901.00 a 20251108.00 in cui le NIC dinamiche non vengono installate e gestite automaticamente.

Configura manualmente il sistema operativo guest

Esegui i comandi nel sistema operativo guest per installare le NIC dinamiche.

Se utilizzi questa opzione, la configurazione non viene mantenuta automaticamente dopo un riavvio dell'istanza. Per fare in modo che le configurazioni vengano mantenute dopo un riavvio, utilizza il metodo consigliato per configurare interfacce di rete permanenti per la tua distribuzione Linux. Ad esempio, vedi NetworkConfiguration per Debian e interfaces per Ubuntu.

Configurare la gestione automatica delle NIC dinamiche

Questa sezione descrive come configurare la gestione automatica delle schede di interfaccia di rete dinamiche utilizzando l'agente guest.

Devi completare questi passaggi una sola volta per istanza. Se hai aggiunto una NIC dinamica a un'istanza per la quale hai già completato questi passaggi, non è necessario ripeterli.

Per configurare la gestione automatica delle NIC dinamiche:

  1. Connettiti all'istanza utilizzando SSH.

  2. Assicurati che sull'istanza sia in esecuzione la versione dell'agente guest 20251115.00 o successive:

    1. Per determinare se l'istanza esegue l'agente guest, esegui il comando appropriato elencato in Pacchetti installati per l'ambiente guest.

      1. Se l'istanza non esegue l'agente guest, installa l'ambiente guest.

      2. Se l'istanza esegue l'agente guest, aggiorna l'ambiente guest.

      L'installazione o l'aggiornamento dell'ambiente guest garantisce di avere l'ultima versione dell'agente guest. Puoi confermare la versione seguendo i passaggi descritti in Convalida dell'ambiente guest.

  3. Configura l'agente guest per gestire le NIC dinamiche:

    1. Apri o crea il file di configurazione dell'ambiente guest.

      edit /etc/default/instance_configs.cfg
      
    2. Aggiungi quanto segue al file di configurazione, quindi salva le modifiche ed esci dall'editor.

      [NetworkInterfaces]
      vlan_setup_enabled = true
      manage_primary_nic = true
      

      Per informazioni su queste impostazioni, consulta quanto segue:

      • vlan_setup_enabled = true: configura l'agente guest per installare e gestire le NIC dinamiche
      • manage_primary_nic = true: un'impostazione aggiuntiva richiesta per l'agente guest per gestire le NIC dinamiche create in nic0

      Per ulteriori informazioni sulla modifica del file di configurazione dell'agente guest, consulta Configurazione nella documentazione dell'agente guest.

    3. Riavvia l'agente guest eseguendo questo comando. In alternativa, puoi riavviare l'istanza.

      sudo systemctl restart google-guest-agent.service
      
  4. Elenca le interfacce di rete sulla tua istanza per verificare che l'agente guest abbia installato le NIC dinamiche.

    Ad esempio, il seguente comando mostra un nome come a-gcp.ens4.11 per una NIC dinamica con un ID VLAN di 11 creata come elemento secondario dell'interfaccia ens4.

    sudo ip -d addr
    

Configurare manualmente il sistema operativo guest

Per configurare manualmente le NIC dinamiche nel sistema operativo guest di un'istanza:

  1. Connettiti all'istanza utilizzando SSH.

  2. Se l'istanza esegue l'agente guest, disattiva la gestione automatica delle NIC dinamiche. Puoi determinare se l'istanza esegue l'agente guest utilizzando il comando appropriato elencato in Pacchetti installati per l'ambiente guest.

    Per disattivare la gestione automatica delle NIC dinamiche:

    1. Apri o crea il file di configurazione dell'ambiente guest.

        edit /etc/default/instance_configs.cfg
        

    2. Aggiungi quanto segue al file di configurazione, quindi salva le modifiche ed esci dall'editor.

      [NetworkInterfaces]
      vlan_setup_enabled = false
      manage_primary_nic = false
      

      Per ulteriori informazioni sulla modifica del file di configurazione dell'agente guest, consulta Configurazione nella documentazione dell'agente guest.

    3. Riavvia l'agente guest eseguendo questo comando. In alternativa, puoi riavviare l'istanza.

      sudo systemctl restart google-guest-agent.service
      
  3. Per ogni NIC dinamica che hai creato, esegui le seguenti operazioni:

    1. Recupera l'indirizzo MAC della NIC dinamica. Per trovare l'indirizzo MAC, esegui una query sul server di metadati eseguendo questo comando:

      curl http://metadata.google.internal/computeMetadata/v1/instance/vlan-network-interfaces/VNIC_NUMBER/VLAN_ID/mac -H "Metadata-Flavor: Google"
      

      Sostituisci VNIC_NUMBER/VLAN_ID con il numero della vNIC padre e l'ID VLAN della NIC dinamica. Ad esempio, 0/2 per nic0.2 o 1/4 per nic1.4.

    2. Configura una sottointerfaccia nel sistema operativo guest dell'istanza. Ad esempio, su una VM Debian, esegui i seguenti comandi:

      sudo modprobe 8021q
      sudo ip link add link VNIC_NAME name VNIC_NAME.VLAN_ID type vlan id VLAN_ID
      sudo ip addr add IP_ADDRESS dev VNIC_NAME.VLAN_ID
      sudo ip link set dev VNIC_NAME.VLAN_ID address MAC_ADDRESS
      sudo ip link set up VNIC_NAME.VLAN_ID
      

      Sostituisci quanto segue:

      • VNIC_NAME: il nome della vNIC principale assegnata dal sistema operativo, ad esempio eth1 o ens4
      • IP_ADDRESS: l'indirizzo IP della NIC dinamica che hai creato
      • VLAN_ID: l'ID VLAN che hai assegnato alla NIC dinamica
      • MAC_ADDRESS: l'indirizzo MAC ottenuto nel passaggio precedente

Passaggi successivi