Gestione delle interfacce di rete
Dopo aver creato un'istanza del server virtuale, puoi aggiungere due stili di nuove interfacce di rete (interfacce di rete child e interfacce di rete virtuali) o modificare le interfacce già associate all'istanza. Quando si modifica un'interfaccia di rete, è possibile modificarne il nome, associare o annullare l'associazione di un indirizzo IP mobile o accedere al gruppo di sicurezza associato a un'interfaccia.
Informazioni sulle interfacce di rete
Un'interfaccia di rete connette un'istanza del server virtuale ad una rete. Quando si crea un'istanza di server virtuale, è possibile utilizzare le interfacce di rete per assegnare più indirizzi IP.
Il seguente elenco illustra il funzionamento delle interfacce di rete con la tua istanza.
- Puoi creare e assegnare più interfacce di rete per ogni istanza del server virtuale. Il numero di interfacce di rete che puoi assegnare a un'istanza del server virtuale dipende dal conteggio vCPU incluso nel profilo
utilizzato per eseguire il provisioning di un'istanza.
- 2 - 16 vCPUs: Fino a cinque interfacce di rete
- 17 - 48 vCPUs: Fino a 10 interfacce di rete
- 49 o più vCPUs: Fino a 15 interfacce di rete
- È possibile associare ciascuna interfaccia di rete a una sottorete diversa all’interno della stessa zona.
- A ogni rete viene assegnato un indirizzo MAC (Media Access Control) univoco e immutabile e riceve un indirizzo IP privato dall'intervallo di sottorete.
- È possibile assegnare un indirizzo IP flottante a ciascuna interfaccia di rete sull'istanza del server virtuale. Nel percorso dati, la traduzione dell'indirizzo di rete (NAT) viene applicata tra l'indirizzo IP flottante e l'indirizzo IP primario dell'interfaccia di rete.
- IBM Cloud Per impostazione predefinita, l'interfaccia principale è
eth0nella consol. Le interfacce secondarie sono, per impostazione predefinita,eth1,eth2e così via. - È possibile assegnare gruppi di sicurezza a ciascuna interfaccia di rete.
- È possibile modificare il nome di qualsiasi interfaccia di rete esistente.
La larghezza di banda viene distribuita tra le interfacce di rete collegate all'istanza del server virtuale. Per ulteriori informazioni, consultare Assegnazione della larghezza di banda.
Se assegni una nuova interfaccia di rete a un'istanza del server virtuale mentre è in esecuzione, devi configurare l'interfaccia di rete per l'utilizzo dell'istanza. È possibile arrestare e quindi riavviare l'istanza oppure è possibile configurare
manualmente l'interfaccia nel sistema operativo guest. Ad esempio, su un sistema operativo basato su Linux, è possibile utilizzare il comando ip link set dev
per recuperare la configurazione dell'indirizzo IP dell'interfaccia.
Aggiunta o modifica di interfacce di rete
Per aggiungere o modificare le interfacce di rete associate alle tue istanze del server virtuale, completa la seguente procedura.
- Nella console IBM Cloud, andare all'icona Menu di navigazione
>Istruttura
> Calcolo > Istanze server virtuali.
- Fai clic sul nome di un'istanza del server virtuale che include l'interfaccia di rete che vuoi modificare. In alternativa, puoi aggiungere un'interfaccia di rete all'istanza del server virtuale.
- Nella pagina dei dettagli dell'istanza, trova la sezione Interfacce di rete.
- Per i passi specifici per l'aggiunta di un indirizzo IP mobile o di un'interfaccia di rete, consultare le seguenti sezioni.
Aggiunta di un indirizzo IP flottante
Se si desidera aggiungere un indirizzo IP flottante a un'interfaccia di rete per consentire al traffico proveniente da Internet di accedere all'istanza del server virtuale, completare i seguenti passaggi.
- Se si aggiunge un indirizzo IP flottante all'istanza del server virtuale per la prima volta, identificare un'interfaccia di rete nella sezione Interfacce di rete della pagina Dettagli istanza. In genere,
l'interfaccia di rete primaria dell'istanza viene utilizzata per collegare un IP flottante. Per impostazione predefinita, la prima interfaccia è denominata "
eth0" nel sistema operativo guest. L'associazione iniziale dell'indirizzo IP mobile all'interfaccia di rete primaria consente di stabilire il percorso dati. Successivamente, è possibile associare l'IP flottante a un'interfaccia di rete diversa sull'istanza, oppure associare IP flottanti separati a interfacce di rete secondarie. - Fare clic sull'icona Modifica
per modificare l'interfaccia di rete primaria.
- Nella pagina Modifica interfaccia di rete, individua il campo Indirizzo IP mobile. È possibile selezionare Prenota un nuovo IP mobile oppure è possibile selezionare un indirizzo IP mobile esistente.
- Dopo aver effettuato la selezione, fare clic su Salva.
Aggiunta di un'interfaccia di rete
Puoi aggiungere fino a 15 interfacce di rete alla tua istanza server virtuale, a seconda del conteggio vCPU incluso nel profilo dell'istanza. Un'interfaccia di rete stabilisce un indirizzo IP univoco, fornendo l'opzione di più indirizzi IP per la tua istanza server virtuale. Prima di iniziare ad aggiungere un'interfaccia, assicurati di aver creato una subnet univoca da associare alla nuova interfaccia di rete. Ogni interfaccia di rete deve trovarsi su una sottorete diversa all'interno della stessa zona.
Per aggiungere un'interfaccia di rete alla tua istanza del server virtuale, completa la seguente procedura.
- Nella sezione Interfacce di rete della pagina Dettagli istanza, fai clic su Nuova interfaccia.
- Nella pagina Nuova interfaccia di rete, il nome dell'interfaccia assume il valore predefinito di un numero incrementato. Se questa istanza è la prima nuova interfaccia dopo l'interfaccia primaria, il nome predefinito è
eth1. Se vuoi, puoi cambiare il nome. - Selezionare una sottorete univoca dalle sottoreti assegnate alle interfacce di rete esistenti.
- Selezionare il gruppo di protezione che si desidera associare all'interfaccia di rete.
- Fai clic su Crea.
- Se la tua istanza del server virtuale era in esecuzione quando hai aggiunto l'interfaccia di rete, devi configurare l'interfaccia di rete per l'istanza. È possibile arrestare e quindi riavviare l'istanza oppure è possibile configurare manualmente
l'interfaccia nel sistema operativo guest. Ad esempio, su un sistema operativo basato su Linux, è possibile utilizzare il comando
ip link set devup per recuperare la configurazione dell'indirizzo IP dell'interfaccia.
Aggiunta di un'interfaccia di rete virtuale
È possibile creare un'interfaccia di rete virtuale senza collegarla a una destinazione. L'interfaccia di rete virtuale può esistere anche quando la relativa destinazione viene rimossa. Per ulteriori informazioni, vedi Gestione delle interfacce di rete virtuali.
Le interfacce di rete virtuali possono essere collegate a nuove istanze del server virtuale e non possono essere aggiunte a istanze del server virtuale esistenti con interfacce di rete secondarie.
- Nella console IBM Cloud, andare all'icona Menu di navigazione
>Istruttura
> Calcolo > Istanze server virtuali.
- Fare clic su Crea per avviare la creazione di una nuova istanza del server virtuale in grado di utilizzare un'interfaccia di rete virtuale.
- Nella sezione Rete, selezionare se creare uno dei seguenti:
- Collegamento di rete con un'interfaccia di rete virtuale: un'interfaccia di rete che dispone di ulteriori funzioni, come gli indirizzi IP secondari e un ciclo di vita separato dall'istanza del server virtuale che stai creando.
- Interfaccia di rete istanza: un'interfaccia di rete secondaria.
Configurazione di un'istanza del server virtuale con più interfacce
A volte le istanze dei server virtuali comunicano con altre istanze tramite più interfacce di rete, ad esempio per utilizzare sottoreti differenti per scopi di comunicazione differenti. È possibile che si desideri una sottorete per la comunicazione dati e un'altra sottorete per la comunicazione di controllo. Poiché un'istanza del server virtuale è configurata con un singolo instradamento predefinito associato all'interfaccia di rete principale, la comunicazione su altre interfacce potrebbe non funzionare inizialmente. (I controlli di spoofing IP per motivi di sicurezza possono anche impedire il flusso di comunicazione sulle interfacce di rete non primarie.)
È possibile stabilire la comunicazione per un'interfaccia di rete secondaria utilizzando una delle seguenti opzioni. Questi esempi sono per una piattaforma Linux come Ubuntu.
- Aggiungere un instradamento statico per la seconda sottorete.
- Aggiungere una tabella di instradamento separata per la seconda sottorete.
Le tabelle di instradamento per le istanze del server virtuale vengono generate per impostazione predefinita quando viene eseguito il provisioning di un'istanza. La modifica della tabella di instradamento generata è un'attività non banale. Se devi modificare la tabella di instradamento di un'istanza del server virtuale, quando esegui il provisioning dell'istanza puoi includere i dati utente per descrivere e riconfigurare la tabella di instradamento dell'istanza. Un'altra opzione è quella di utilizzare un'immagine personalizzata per eseguire il provisioning di un'istanza e controllare cosa viene creato per più interfacce di rete. Quando utilizzi le immagini predefinite per eseguire il provisioning delle istanze, la configurazione di rete viene creata per te. Il controllo di ciò che viene generato è limitato.
Le sezioni seguenti descrivono queste soluzioni in modo più dettagliato.
Esempio di configurazione del server virtuale:
-
Due server virtuali (
Virtual-server-1eVirtual-server-2) in cui entrambi i server virtuali appartengono allo stesso VPC. -
Ogni server virtuale ha due interfacce da due sottoreti:
- Virtual-server-1 ha l'interfaccia
eth0danet_1_0e l'interfacciaeth1danet_1_1. - Virtual-server-2 ha l'interfaccia
eth0danet_2_0e l'interfacciaeth1danet_2_1.
- Virtual-server-1 ha l'interfaccia
-
Ogni
net_*_0del server virtuale è configurato con un instradamento predefinito. -
Ogni IP gateway della sottorete e CIDR sono noti.
Qui vengono utilizzati nomi alfabetici. L'ID gateway reale sarebbe simile a
192.168.100.1, al CIDR192.168.100.0/24e all'indirizzo IP192.168.100.6.
| Sottorete | IP gateway | CIDR sottorete | IP interfaccia |
|---|---|---|---|
net_1_0 |
gw_ip_1_0 |
cidr_1_0 |
ip_1_0 |
net_1_1 |
gw_ip_1_1 |
cidr_1_1 |
ip_1_1 |
net_2_0 |
gw_ip_2_0 |
cidr_2_0 |
ip_2_0 |
net_2_1 |
gw_ip_2_1 |
cidr_2_1 |
ip_2_1 |
Aggiunta di un instradamento statico per la seconda interfaccia
Questa soluzione rende una sottorete il gateway predefinito (automaticamente mediante la creazione dell'istanza del server virtuale) e aggiunge un instradamento statico per la seconda sottorete:
-
Su
Virtual-server-1:ip route add cidr_2_1 via gw_ip_1_1 dev eth1 -
Su
Virtual-server-2:ip route add cidr_1_1 via gw_ip_2_1 dev eth1
Aggiunta di una tabella di instradamento separata per la seconda interfaccia
- Su
Virtual-server-1:
echo 201 eth1tab >> /etc/iproute2/rt_tables
ip route add cidr_1_1 dev eth1 proto kernel scope link src ip_1_1 table eth1tab
ip route add default via gw_1_1 dev eth1 table eth1tab
- Su
Virtual-server-2:
echo 201 eth1tab >> /etc/iproute2/rt_tables
ip route add cidr_2_1 dev eth1 proto kernel scope link src ip_2_1 table eth1tab
ip route add default via gw_2_1 dev eth1 table eth1tab
ip rule add from ip_2_1 table eth1tab
Anche se questo approccio è un po' più complicato rispetto all'aggiunta di un instradamento statico, fornisce un modo per personalizzare le politiche di instradamento per interfacce differenti.
Creazione di un'interfaccia di rete virtuale dalla CLI
Le interfacce di rete virtuali possono essere collegate a nuove istanze del server virtuale e non possono essere aggiunte a istanze del server virtuale esistenti con interfacce di rete secondarie.
È possibile creare un'interfaccia di rete virtuale utilizzando la CLI (command - line interface). Per ulteriori informazioni sulle funzionalità, le considerazioni sulla pianificazione, l'introduzione e i casi di utilizzo, consulta Informazioni sulle interfacce di rete virtuali.
Per creare un'interfaccia di rete virtuale utilizzando la CLI, utilizza il comando ibmcloud is virtual - network - interface - create.
ibmcloud is virtual-network-interface-create [--name NAME] [--allow-ip-spoofing false | true] [--auto-delete false | true] [--enable-infrastructure-nat false | true] [[--rip RIP | [--rip-address RIP_ADDRESS --rip-auto-delete RIP_AUTO_DELETE --rip-name RIP_NAME]]] [--subnet SUBNET] [--ips RESERVED_IPS_JSON | @RESERVED_IPS_JSON_FILE] [--sgs SGS] [--resource-group-id RESOURCE_GROUP_ID | --resource-group-name RESOURCE_GROUP_NAME] [--vpc VPC] [--output JSON] [-q, --quiet]
Il seguente esempio crea un'interfaccia di rete virtuale che si basa su impostazioni dell'IP riservato. Il nome dell'interfaccia di rete virtuale è cli-vni-1. L'ID dell'indirizzo IP riservato è 7208-d4c0abbe-3fc2-4696-9fe1-4eb3dc9af976.
L'ID dell'indirizzo IP primario riservato è 7208-d83b7e58-3c3d-47d0-89c5-02d9a20c72fd. Gli indirizzi IP riservati secondari sono 10.240.64.13. Gli ID del gruppo di sicurezza da associare all'interfaccia di rete virtuale
sono r006-aa7c7658-e503-4456-b342-8d6a89e05115 e r006-4fb388f1-2b6e-4013-b279-7a8748f4d6ca. L'ID per il gruppo di risorse in cui viene creata l'interfaccia di rete virtuale è 11caaa983d9c4beb82690daab08717e9.
ibmcloud is virtual-network-interface-create --name cli-vni-1 --allow-ip-spoofing true --auto-delete false --enable-infrastructure-nat true --rip 7208-d4c0abbe-3fc2-4696-9fe1-4eb3dc9af976 --ips '[{"id":"7208-d83b7e58-3c3d-47d0-89c5-02d9a20c72fd"},{"address":"10.240.64.13", "auto_delete": false, "name": "srip2"}]' --sgs r006-aa7c7658-e503-4456-b342-8d6a89e05115,r006-4fb388f1-2b6e-4013-b279-7a8748f4d6ca --resource-group-id 11caaa983d9c4beb82690daab08717e9
Per ulteriori informazioni, vedi ibmcloud is virtual - network - interface - create nella pagina di riferimento della CLI VPC.
Creazione di un server virtuale con un'interfaccia di rete virtuale esistente
Puoi creare un'istanza del server virtuale che utilizza un'interfaccia di rete virtuale esistente utilizzando la CLI (command - line interface).
Per creare un'istanza del server virtuale con un'interfaccia di rete virtuale utilizzando la CLI, utilizza il comando ibmcloud is instance - create.
Il seguente esempio crea un server virtuale che include un'interfaccia di rete virtuale esistente. Il nome del server virtuale è my-instance-name. L'ID del VPC è 72b27b5c-f4b0-48bb-b954-5becc7c1dcb8. Il nome della zona
è us-south-1. Il profilo per il server virtuale è bx2-2x8. La sottorete è 72b27b5c-f4b0-48bb-b954-5becc7c1dcb8. Il nome del collegamento di rete primario è cli-pnac-1. L'ID dell'interfaccia
di rete virtuale associata all'interfaccia di rete primaria è 7322-1293a27a-7178-4e62-ba5b-272623c989aa. La configurazione del collegamento di rete include il nome instance-snac-1 e l'ID interfaccia di rete virtuale
02h7-56705448-c9d9-43dc-aa11-20d42333cd87. L'ID immagine per il server virtuale è r123-72b27b5c-f4b0-48bb-b954-5becc7c1dcb8.
ibmcloud is instance-create my-instance-name 72b27b5c-f4b0-48bb-b954-5becc7c1dcb8 us-south-1 bx2-2x8 72b27b5c-f4b0-48bb-b954-5becc7c1dcb8 --pnac-name cli-pnac-1 --pnac-vni 7322-1293a27a-7178-4e62-ba5b-272623c989aa --network-attachments [{"name": "instance-snac-1","virtual_network_interface": {"id":"02h7-56705448-c9d9-43dc-aa11-20d42333cd87"}}] --image r123-72b27b5c-f4b0-48bb-b954-5becc7c1dcb8
Per ulteriori informazioni, vedi ibmcloud is instance - create nella pagina di riferimento della CLI VPC.
Creazione di un'interfaccia di rete virtuale con la API
Le interfacce di rete virtuali possono essere collegate a nuove istanze del server virtuale e non possono essere aggiunte a istanze del server virtuale esistenti con interfacce di rete secondarie.
Puoi creare un'interfaccia di rete virtuale utilizzando l'API. Per ulteriori informazioni sulle funzionalità, le considerazioni sulla pianificazione, l'introduzione e i casi di utilizzo, consulta Informazioni sulle interfacce di rete virtuali.
Per creare un'interfaccia di rete virtuale con l'API, attieniti alla seguente procedura:
-
Imposta il tuo ambiente API con le variabili corrette.
-
Memorizzare eventuali variabili aggiuntive da utilizzare nei comandi API; ad esempio:
version(stringa): la versione API, nel formatoYYYY-MM-DD.
-
Quando vengono avviate tutte le variabili, creare l'interfaccia di rete virtuale. Il seguente esempio include informazioni di esempio per l'indirizzo IP primario, i gruppi di protezione e la sottorete.
curl -X POST \ "$vpc_api_endpoint/v1/virtual_network_interfaces?version=$version&generation=2" \ -H "Authorization: Bearer $iam_token" -d '{ "name": "my-virtual-network-interface", "primary_ip": { "address": "10.0.0.5" }, "security_groups": [ { "id": "be5df5ca-12a0-494b-907e-aa6ec2bfa271" }, { "id": "032e1387-71ba-4e83-b268-a53edf94af19" } ], "subnet": { "id": "032e1387-71ba-4e83-b268-a53edf94af19" } }'
Per ulteriori informazioni, vedi Crea un'interfaccia di rete virtuale.
Se vuoi collegare l'interfaccia di rete virtuale a una nuova istanza del server virtuale, vedi Crea un'istanza.
Creazione di un'interfaccia di rete virtuale con Terraform
Le interfacce di rete virtuali possono essere collegate a nuove istanze del server virtuale e non possono essere aggiunte a istanze del server virtuale esistenti con interfacce di rete secondarie.
Per ulteriori informazioni sulle funzionalità, le considerazioni sulla pianificazione, l'introduzione e i casi di utilizzo, consulta Informazioni sulle interfacce di rete virtuali.
Il seguente esempio crea un'interfaccia di rete virtuale utilizzando Terraform:
resource "ibm_is_virtual_network_interface" "my_virtual_network_interface_instance" {
allow_ip_spoofing = true
auto_delete = false
enable_infrastructure_nat = true
name = "my-virtual-network-interface"
subnet = ibm_is_subnet.my_subnet.id
}
Per ulteriori informazioni, vedi Registro Terraform.
Se vuoi collegare l'interfaccia di rete virtuale a una nuova istanza del server virtuale, vedi il registro Terraform.