In dieser Anleitung wird beschrieben, wie Sie eine VM-Instanz mit mehreren Netzwerkschnittstellen erstellen, die jeweils mit verschiedenen VPC-Netzwerken (Virtual Private Cloud) verbunden sind. Außerdem enthält die Anleitung ein Beispiel dafür, wie Sie das Routing auf einer Linux-VM konfigurieren, damit Sie die Schnittstelle nic1
erfolgreich anpingen können.
VMs mit mehreren Netzwerkschnittstellen-Controllern werden als VMs mit mehreren NICs bezeichnet.
Kosten
In diesem Dokument verwenden Sie die folgenden kostenpflichtigen Komponenten von Google Cloud:
Mit dem Preisrechner können Sie eine Kostenschätzung für Ihre voraussichtliche Nutzung vornehmen.
Vorbereitung
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Compute Engine API.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Compute Engine API.
Konfigurationsbeispiel
Das folgende Diagramm zeigt die VPC-Netzwerke, Subnetze und VMs, die Sie in dieser Anleitung erstellen, sowie Beispielwerte, die Sie für Ressourcennamen und Subnetz-IP-Adressbereiche verwenden können:
Zwei VPC-Netzwerke erstellen
Zum Erstellen einer VM mit mehreren NICs müssen die VPC-Netzwerke, mit denen Sie eine Verbindung herstellen, bereits vorhanden sein. Zwei VPC-Netzwerke erstellen In dieser Anleitung hat jedes VPC-Netzwerk zwei Subnetze.
Um die in der Beispielkonfiguration gezeigte Konfiguration zu erstellen, erstellen Sie Ihre Netzwerke und Subnetze mit den folgenden Werten:
- Ein Netzwerk mit dem Namen
network-1
, das Folgendes enthält:- Ein Subnetz mit dem Namen
subnet-1
, das den primären IPv4-Adressbereich10.10.1.0/24
hat. - Ein Subnetz mit dem Namen
subnet-3
, das den primären IPv4-Adressbereich10.10.3.0/24
hat.
- Ein Subnetz mit dem Namen
Ein Netzwerk mit dem Namen
network-2
, das Folgendes enthält:- Ein Subnetz mit dem Namen
subnet-2
, das den primären IPv4-Adressbereich10.10.2.0/24
hat. - Ein Subnetz mit dem Namen
subnet-4
, das den primären IPv4-Adressbereich10.10.4.0/24
hat.
- Ein Subnetz mit dem Namen
Console
Rufen Sie in der Google Cloud Console die Seite VPC-Netzwerke auf.
Klicken Sie auf VPC-Netzwerk erstellen.
Geben Sie im Feld Name einen Namen für das VPC-Netzwerk ein.
Wählen Sie unter Modus für Subnetzerstellung die Option Benutzerdefiniert aus.
Geben Sie im Bereich Neues Subnetz Folgendes an:
- Geben Sie einen Namen für das Subnetz an.
- Wählen Sie eine Region aus. Achten Sie darauf, dass beide von Ihnen erstellten VPC-Netzwerke dieselbe Region für mindestens eines ihrer Subnetze verwenden. Verwenden Sie dieselbe Region, wenn Sie im folgenden Abschnitt die VM mit mehreren NICs erstellen. In der Beispielkonfiguration wird für alle Subnetze dieselbe Region verwendet.
Geben Sie einen IP-Adressbereich ein. Dies ist der primäre IPv4-Bereich für das Subnetz.
Wenn Sie einen Bereich auswählen, der keine RFC 1918-Adresse ist, prüfen Sie, ob der Bereich mit einer vorhandenen Konfiguration in Konflikt steht. Weitere Informationen finden Sie unter IPv4-Subnetzbereiche.
Klicken Sie auf Fertig.
Klicken Sie auf Subnetz hinzufügen, um ein zweites Subnetz zu erstellen. Verwenden Sie dieses zweite Subnetz zum Testen von
ping
von außerhalb des primären Subnetzbereichs der Netzwerkschnittstelle Ihrer VM-Instanz.Wählen Sie im Abschnitt Firewallregeln die Regel allow-custom aus und klicken Sie dann auf BEARBEITEN. Konfigurieren Sie die Regel so, damit Sie die Konnektivität von den Test-VMs zu
multi-nic-vm
testen können:- Lassen Sie unter IPv4-Bereiche die Kästchen für die IPv4-Adressbereiche der Subnetze aktiviert.
- Geben Sie unter Andere IPv4-Bereiche den Wert
35.235.240.0/20
ein, damit Sie über SSH eine Verbindung zu den Test-VMs herstellen können. Wenn Sie diesen Bereich einschließen, können SSH-Verbindungen mit der TCP-Weiterleitung von Identity-Aware Proxy (IAP) verwendet werden. Weitere Informationen finden Sie unter Eingehende SSH-Verbindungen zu VMs zulassen. - Wählen Sie unter Protokolle und Ports die Option Angegebene Protokolle und Ports aus.
- Wählen Sie TCP aus und geben Sie
22, 3389
ein, um RDP und SSH zuzulassen. - Wählen Sie Andere aus und geben Sie
icmp
ein, um ICMP zuzulassen.
- Wählen Sie TCP aus und geben Sie
Klicken Sie auf Erstellen.
Wiederholen Sie diese Schritte, um ein zweites VPC-Netzwerk zu erstellen. Achten Sie darauf, dass sich die IP-Adressbereiche des Subnetzes nicht mit den Subnetzen Ihres ersten Netzwerks überschneiden, z. B. den in der Beispielkonfiguration verwendeten IP-Adressbereichen.
gcloud
Verwenden Sie den Befehl
networks create
, um ein VPC-Netzwerk zu erstellen.gcloud compute networks create NETWORK --subnet-mode=custom
Ersetzen Sie dabei Folgendes:
NETWORK
: der Name des VPC-Netzwerks
Verwenden Sie den
networks subnets create
-Befehl, um ein Subnetz für Ihr VPC-Netzwerk zu erstellen.gcloud compute networks subnets create NAME \ --network=NETWORK \ --range=RANGE \ --region=REGION
Ersetzen Sie dabei Folgendes:
NAME
: Ein Name für das Subnetz.NETWORK
: der Name des VPC-Netzwerks.RANGE
ist ein IP-Adressbereich. Dies ist der primäre IPv4-Bereich für das Subnetz.Wenn Sie einen Bereich eingeben, der keine RFC 1918-Adresse ist, prüfen Sie, ob der Bereich mit einer vorhandenen Konfiguration in Konflikt steht. Weitere Informationen finden Sie unter IPv4-Subnetzbereiche.
REGION
: eine Region. Achten Sie darauf, dass beide von Ihnen erstellten VPC-Netzwerke dieselbe Region für mindestens eines ihrer Subnetze verwenden. Verwenden Sie dieselbe Region, wenn Sie im folgenden Abschnitt die VM mit mehreren NICs erstellen. In der Beispielkonfiguration wird für alle Subnetze dieselbe Region verwendet.
Wiederholen Sie den vorherigen Schritt, um ein weiteres Subnetz zu erstellen. Verwenden Sie dieses zweite Subnetz zum Testen von
ping
von außerhalb des primären Subnetzbereichs der Netzwerkschnittstelle Ihrer VM-Instanz.Erstellen Sie eine Firewallregel, um SSH, RDP und ICMP zuzulassen:
gcloud compute firewall-rules create allow-ssh-rdp-icmp \ --network NETWORK \ --action=ALLOW \ --direction=INGRESS \ --rules=tcp:22,tcp:3389,icmp \ --source-ranges=SOURCE_RANGE
Ersetzen Sie dabei Folgendes:
NETWORK
: Geben Sie den Wert für das Netzwerk ein, das Sie erstellen:- Geben Sie für das erste Netzwerk
network-1
ein. - Wenn Sie die Schritte in diesem Abschnitt für das zweite Netzwerk wiederholen, geben Sie
network-2
ein.
- Geben Sie für das erste Netzwerk
SOURCE_RANGE
: Geben Sie den Wert für das Netzwerk ein, das Sie erstellen:- Geben Sie für das erste Netzwerk
10.10.3.0/24, 35.235.240.0/20
ein. Wenn Sie10.10.3.0/24
einschließen, können Sie die Konnektivität vontest-vm-1
zurnic0
-Schnittstelle vonmulti-nic-vm
testen. Wenn Sie35.235.240.0/20
einschließen, können SSH-Verbindungen mit der TCP-Weiterleitung von Identity-Aware Proxy (IAP) zugelassen werden. Weitere Informationen finden Sie unter Eingehende SSH-Verbindungen zu VMs zulassen. - Wenn Sie die Schritte in diesem Abschnitt für das zweite Netzwerk wiederholen, geben Sie
10.10.4.0/24, 35.235.240.0/20
ein. Wenn Sie10.10.4.0/24
einschließen, können Sie die Konnektivität vontest-vm-2
zurnic0
-Schnittstelle vonmulti-nic-vm
testen. Wenn Sie35.235.240.0/20
einschließen, können SSH-Verbindungen mit der TCP-Weiterleitung von Identity-Aware Proxy (IAP) zugelassen werden. Weitere Informationen finden Sie unter Eingehende SSH-Verbindungen zu VMs zulassen.
- Geben Sie für das erste Netzwerk
Wiederholen Sie diese Schritte, um ein zweites VPC-Netzwerk zu erstellen. Achten Sie darauf, dass sich die IP-Adressbereiche des Subnetzes nicht mit den Subnetzen Ihres ersten Netzwerks überschneiden, z. B. den in der Beispielkonfiguration verwendeten IP-Adressbereichen.
VM mit mehreren NICs erstellen
Erstellen Sie eine VM-Instanz mit einer Schnittstelle für jedes VPC-Netzwerk, das Sie im vorherigen Abschnitt erstellt haben.
So erstellen Sie eine VM mit mehreren NICs:
Console
Rufen Sie in der Google Cloud Console die Seite Instanz erstellen auf.
Geben Sie im Feld Name einen Namen für die Instanz ein. Dies entspricht
multi-nic-vm
in der Beispielkonfiguration.Wählen Sie im Feld Region die Region aus, in der Sie in jedem Ihrer VPC-Netzwerke ein Subnetz erstellt haben. Die VM-Instanz muss sich in derselben Region wie die Subnetze befinden, mit denen ihre Schnittstellen eine Verbindung herstellen. In der Beispielkonfiguration wird für alle Subnetze dieselbe Region verwendet.
Wählen Sie im Feld Zone eine Zone aus.
Maximieren Sie im Abschnitt Erweiterte Optionen den Bereich Netzwerk und gehen Sie dann so vor:
- Prüfen Sie den Abschnitt Netzwerkschnittstellen. Google Cloud fügt für die erste Netzwerkschnittstelle automatisch ein Netzwerk und ein Subnetzwerk ein. Dies entspricht
network-1
undsubnet-1
in der Beispielkonfiguration. - Wählen Sie für Primäre interne IPv4-Adresse eine der folgenden Optionen aus:
- Sitzungsspezifisch, um eine neue sitzungsspezifische IPv4-Adresse zuzuweisen
- Reservierte statische interne IPv4-Adresse aus der Liste
- Statische interne IP-Adresse reservieren, um eine neue statische interne IPv4-Adresse zu reservieren und zuzuweisen
Wenn Sie die Beispielkonfiguration verwenden, reservieren Sie
10.10.1.3
.
Wählen Sie für Externe IPv4-Adresse eine
None
aus.Zum Hinzufügen einer weiteren Schnittstelle klicken Sie auf Netzwerkschnittstelle hinzufügen.
Wählen Sie unter Netzwerk und Subnetzwerk das zweite von Ihnen erstellte Netzwerk und Subnetzwerk aus. Dies entspricht
network-2
undsubnet-2
in der Beispielkonfiguration.Wählen Sie für IP-Stack-Typ die Option IPv4 (Single-Stack) aus.
Wählen Sie für Primäre interne IPv4-Adresse eine der folgenden Optionen aus:
- Sitzungsspezifisch, um eine neue sitzungsspezifische IPv4-Adresse zuzuweisen
- Reservierte statische interne IPv4-Adresse aus der Liste
- Statische interne IP-Adresse reservieren, um eine neue statische interne IPv4-Adresse zu reservieren und zuzuweisen
Wenn Sie die Beispielkonfiguration verwenden, reservieren Sie
10.10.2.3
.
Wählen Sie für Externe IPv4-Adresse eine
None
aus.Klicken Sie auf Fertig, um das Hinzufügen der Netzwerkschnittstelle abzuschließen.
- Prüfen Sie den Abschnitt Netzwerkschnittstellen. Google Cloud fügt für die erste Netzwerkschnittstelle automatisch ein Netzwerk und ein Subnetzwerk ein. Dies entspricht
Klicken Sie auf Erstellen.
gcloud
Verwenden Sie den Befehl instances create
, um Netzwerkschnittstellen auf einer neuen Instanz zu erstellen.
Geben Sie dabei für jede Schnittstelle das Flag --network-interface
, gefolgt von allen geeigneten Netzwerkschlüsseln, z. B. network
, subnet
, private-network-ip
an. Für die externe IP-Adresse wird mit dem folgenden Befehl no-address
angegeben.
gcloud compute instances create INSTANCE_NAME \ --zone ZONE \ --network-interface \ network=NIC0_NETWORK,subnet=NIC0_SUBNET,private-network-ip=NIC0_INTERNAL_IPV4_ADDRESS,no-address \ --network-interface \ network=NIC1_NETWORK,subnet=NIC1_SUBNET,private-network-ip=NIC1_INTERNAL_IPV4_ADDRESS,no-address
Ersetzen Sie dabei Folgendes:
INSTANCE_NAME
: der Name der zu erstellenden VM. Dies entsprichtmulti-nic-vm
in der Beispielkonfiguration.ZONE
: Die Zone, in der die Instanz erstellt wird. Geben Sie eine Zone in derselben Region ein, in der Sie in jedem Ihrer VPC-Netzwerke ein Subnetz erstellt haben. Die VM-Instanz muss sich in derselben Region wie die Subnetze befinden, mit denen ihre Schnittstellen eine Verbindung herstellen. In der Beispielkonfiguration wird für alle Subnetze dieselbe Region verwendet.- Werte für die erste Schnittstelle:
NIC0_NETWORK
ist das Netzwerk, an das die Schnittstelle angehängt ist. Dies entsprichtnetwork-1
in der Beispielkonfiguration.NIC0_SUBNET
ist das Subnetz, an das die Schnittstelle angehängt ist. Dies entsprichtsubnet-1
in der Beispielkonfiguration.NIC0_INTERNAL_IPV4_ADDRESS
ist die interne IPv4-Adresse, die die Schnittstelle im Zielsubnetz haben soll. Wenn Sie die Beispielkonfiguration verwenden, geben Sie10.10.1.3
ein. Lassen Sie diese aus, wenn Sie nur eine beliebige gültige Adresse zuweisen möchten.
- Werte für die zweite Benutzeroberfläche
NIC1_NETWORK
ist das Netzwerk, an das die Schnittstelle angehängt ist. Dies entsprichtnetwork-2
in der Beispielkonfiguration.NIC1_SUBNET
ist das Subnetz, an das die Schnittstelle angehängt ist. Dies entsprichtsubnet-2
in der Beispielkonfiguration.NIC1_INTERNAL_IPV4_ADDRESS
ist die interne IPv4-Adresse, die die Schnittstelle im Zielsubnetz haben soll. Wenn Sie die Beispielkonfiguration verwenden, geben Sie10.10.2.3
ein. Lassen Sie diese aus, wenn Sie nur eine beliebige gültige Adresse zuweisen möchten.
Zwei Test-VMs erstellen
Erstellen Sie zwei zusätzliche VM-Instanzen:
- Eine im selben Netzwerk, aber in einem anderen Subnetz, als die
nic0
-Schnittstelle der von Ihnen erstellten Multi-NIC-VM. Dies entsprichttest-vm-1
insubnet-3
in der Beispielkonfiguration. - Eine im selben Netzwerk, aber in einem anderen Subnetz, als die
nic1
-Schnittstelle der von Ihnen erstellten Multi-NIC-VM. Dies entsprichttest-vm-2
insubnet-4
in der Beispielkonfiguration.
Sie verwenden diese VM-Instanzen zum Testen von ping
aus den Subnetzen, die sich außerhalb des primären Subnetzbereichs Ihrer VM-Instanz mit mehreren Netzwerkschnittstellen befinden.
So erstellen Sie die VM-Instanzen:
Console
Rufen Sie in der Google Cloud Console die Seite Instanz erstellen auf.
Geben Sie im Feld Name einen Namen für die Instanz ein.
Wählen Sie im Feld Region die Region aus, in der Sie das zusätzliche Subnetz im ersten VPC-Netzwerk platziert haben.
Wählen Sie im Feld Zone eine Zone aus.
Maximieren Sie im Abschnitt Erweiterte Optionen den Bereich Netzwerk und gehen Sie dann so vor:
- Prüfen Sie den Abschnitt Netzwerkschnittstellen. Achten Sie darauf, dass sich das Subnetz von dem Subnetz unterscheidet, das von der Schnittstelle
nic0
Ihrer Multi-NIC-VM verwendet wird.
- Prüfen Sie den Abschnitt Netzwerkschnittstellen. Achten Sie darauf, dass sich das Subnetz von dem Subnetz unterscheidet, das von der Schnittstelle
Klicken Sie auf Erstellen.
Wiederholen Sie diese Schritte, um eine Instanz im zweiten VPC-Netzwerk und in einem Subnetz zu erstellen, das sich von der Schnittstelle
nic1
Ihrer VM mit mehreren NICs unterscheidet.
gcloud
Führen Sie den Befehl
instances create
aus und fügen Sie dabei für jede Schnittstelle das Flag--network-interface
hinzu, gefolgt von allen geeigneten Netzwerkschlüsseln, z. B.network
,subnet
ein ,private-network-ip
oderaddress
.gcloud compute instances create INSTANCE_NAME \ --zone ZONE \ --network-interface \ network=NIC0_NETWORK,subnet=NIC0_SUBNET, private-network-ip=NIC0_INTERNAL_IPV4_ADDRESS
Ersetzen Sie dabei Folgendes:
INSTANCE_NAME
: der Name der zu erstellenden VM.ZONE
: Die Zone, in der die Instanz erstellt wird. Geben Sie die Region ein, in der Sie das zusätzliche Subnetz in Ihrem ersten VPC-Netzwerk platziert haben – das Subnetz, das nicht von der Multi-NIC-VM verwendet wird.NIC0_NETWORK
ist das Netzwerk, an das die Schnittstelle angehängt ist.NIC0_SUBNET
ist das Subnetz, an das die Schnittstelle angehängt ist.NIC0_INTERNAL_IPV4_ADDRESS
ist die interne IPv4-Adresse, die die Schnittstelle im Zielsubnetz haben soll. Lassen Sie diese aus, wenn Sie nur eine beliebige gültige Adresse zuweisen möchten.
Wiederholen Sie den vorherigen Schritt, um eine Instanz im zweiten VPC-Netzwerk und in einem Subnetz zu erstellen, das sich von der Schnittstelle
nic1
Ihrer VM mit mehreren NICs unterscheidet.
Verbindung zur Multi-NIC-VM testen
Führen Sie die Schritte in diesem Abschnitt aus, um ping
von den zusätzlichen VM-Instanzen zu testen, die Sie für jede Schnittstelle Ihrer VM-Instanz mit mehreren Netzwerkschnittstellen erstellt haben.
In der folgenden Tabelle sind die Szenarien aufgeführt, in denen Sie an diesem Punkt der Anleitung unter Verwendung der IP-Adresswerte aus der Beispielkonfiguration erfolgreich pingen können.
Von | Bis | ping successful |
---|---|---|
VM (test-vm-1 ) im selben Netzwerk, aber in einem anderen Subnetz wie die nic0 -Schnittstelle von multi-nic-vm . |
Interne IP-Adresse (10.10.1.3 ) der nic0 -Schnittstelle von multi-nic-vm |
|
VM (test-vm-2 ) im selben Netzwerk, aber in einem anderen Subnetz wie die nic1 -Schnittstelle von multi-nic-vm .
|
Interne IP-Adresse (10.10.2.3 ) der nic1 -Schnittstelle von multi-nic-vm |
IP-Adressen der Multi-NIC-VM abrufen
Rufen Sie bei Bedarf die Schnittstellen-IP-Adressen Ihrer Multi-NIC-VM ab, damit Sie sie in den folgenden Abschnitten anpingen können.
Console
Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf.
Suchen Sie in der Liste der VM-Instanzen die von Ihnen erstellte VM mit mehreren NICs und notieren Sie diese Werte, damit Sie sie in den folgenden Schritten anpingen können:
- Die internen IP-Adressen der zugehörigen
nic0
- undnic1
-Schnittstellen
- Die internen IP-Adressen der zugehörigen
gcloud
Führen Sie den Befehl
instances list
aus:gcloud compute instances list
Suchen Sie die VM mit mehreren NICs und notieren Sie Folgendes in der Ausgabe:
INTERNAL_IP
: Die erste und die zweite Adresse entsprechen den Netzwerkschnittstellennic0
undnic1
.
Pingen Sie die nic0
-Schnittstelle Ihrer VM an.
Suchen Sie in der Liste der VM-Instanzen die VM, die Sie im selben Netzwerk, aber in einem anderen Subnetz erstellt haben, als
nic0
-Schnittstelle der VM mit mehreren NICs.- Klicken Sie in der Zeile der Instanz auf SSH.
Führen Sie den folgenden Befehl aus, um die interne IP-Adresse der Schnittstelle
nic0
Ihrer Multi-NIC-VM zu pingen:ping INTERNAL_IP_NIC0
Ersetzen Sie
INTERNAL_IP_NIC0
durch die entsprechende Adresse, die Sie zuvor notiert haben. Wenn Sie die Beispielkonfiguration verwenden, geben Sie10.10.1.3
ein.Beachten Sie, dass der Ping-Befehl erfolgreich ist.
Führen Sie
exit
aus, um das Terminalfenster zu schließen.
Pingen Sie die nic1
-Schnittstelle Ihrer VM an.
Suchen Sie in der Liste der VM-Instanzen die Instanz, die Sie im selben Netzwerk, aber in einem anderen Subnetz erstellt haben, als
nic1
-Schnittstelle der VM mit mehreren NICs.- Klicken Sie in der Zeile der Instanz auf SSH.
Führen Sie den folgenden Befehl aus, um die interne IP-Adresse der zweiten Schnittstelle Ihrer Multi-NIC-VM zu pingen:
ping INTERNAL_IP_NIC1
Ersetzen Sie
INTERNAL_IP_NIC1
durch die entsprechende Adresse, die Sie zuvor notiert haben. Wenn Sie die Beispielkonfiguration verwenden, geben Sie10.10.2.3
ein.Beachten Sie, dass der Ping-Befehl nicht erfolgreich ist.
Führen Sie
exit
aus, um das Terminalfenster zu schließen.
Richtlinienrouting konfigurieren
Der Ping-Test im vorherigen Abschnitt ist aufgrund des asymmetrischen Routings fehlgeschlagen. Traffic wird an die nic1
-Schnittstelle von multi-nic-vm
gesendet, aber die Standardroute für die VM führt dazu, dass die Antworten von nic0
. Weitere Informationen finden Sie unter DHCP-Verhalten mit mehreren Netzwerkschnittstellen.
Mithilfe der Schritte in diesem Abschnitt können Sie das Richtlinienrouting konfigurieren, damit ausgehende Pakete über die richtige Schnittstelle verbleiben.
In dieser Anleitung werden Linux-VMs verwendet. Quellbasiertes Richtlinienrouting wird von Windows-Betriebssystemen nicht unterstützt.
Standardgateway für die Schnittstelle nic1
der VM suchen
Sie können das Standardgateway für die Schnittstelle einer VM-Instanz durch Abfrage des Metadatenservers ermitteln. Wenn Sie die Beispielkonfiguration verwenden, lautet der Wert 10.10.2.1
.
Stellen Sie die folgende Anfrage von der multi-NIC-VM, um das Standardgateway für die IPv4-Adresse einer nic1
-Schnittstelle zu finden:
curl http://metadata.google.internal/computeMetadata/v1/instance/network-interfaces/1/gateway -H "Metadata-Flavor: Google"
Wenn Sie das Standardgateway für eine andere Netzwerkschnittstelle ermitteln möchten, geben Sie die entsprechende Schnittstellennummer an. Wie Sie den Namen finden, den Google Cloud der Schnittstelle zugewiesen hat, erfahren Sie unter IP-Adressen der Multi-NIC-VM abrufen.
Dieser unterscheidet sich vom vom Betriebssystem zugewiesenen Interface-Namen.
Die Schnittstelle hat das Format nicNUMBER
. Gib in deiner Anfrage an den Metadatenserver nur die Nummer ein. Geben Sie beispielsweise für nic2
2
an.
Neue Routingtabelle auf der Multi-NIC-VM konfigurieren
In diesem Abschnitt wird beschrieben, wie Sie eine neue Routingtabelle auf der Multi-NIC-VM konfigurieren.
Aktivieren Sie die serielle Konsole mithilfe der Schritte unter Zugriff für eine VM-Instanz aktivieren.
Stellen Sie eine Verbindung zur seriellen Konsole her, um die Verbindung zur VM beim Ändern der Standardroute zu vermeiden.
Führen Sie
ip link list
aus, um die Netzwerkschnittstellen Ihrer VM aufzulisten, und notieren Sie sich den Namen der Schnittstellenic1
, z. B.ens5
.Prüfen Sie mit dem folgenden Befehl, ob die
nic1
-Schnittstelle mit einer IP-Adresse konfiguriert ist.ip addr show NIC
Ersetzen Sie
NIC
durch den Namen der Schnittstellenic1
aus dem vorherigen Schritt.Wenn der Schnittstelle
nic1
keine IP-Adresse automatisch zugewiesen wurde, können Sie die IP-Adresse mit dem folgenden Befehl manuell zuweisen:sudo ip addr add IP_ADDRESS dev NIC
Ersetzen Sie dabei Folgendes:
IP_ADDRESS
: Die interne IP-Adresse, die auf der Schnittstelle konfiguriert werden soll. Dies entspricht10.10.2.3
in der Beispielkonfiguration.NIC
ist der Name der Schnittstellenic1
aus dem vorherigen Schritt.
Erstellen Sie eine benutzerdefinierte Routingtabelle für die Netzwerkschnittstelle
nic1
.echo "1 ROUTE_TABLE_NAME" | sudo tee -a /etc/iproute2/rt_tables
Ersetzen Sie
ROUTE_TABLE_NAME
durch einen Namen für die Routentabelle, z. B.route-nic1
.Erstellen Sie in der benutzerdefinierten Routingtabelle die Standardroute, die für die Netzwerkschnittstelle
nic1
bestimmt ist, und eine Route mit einem Quellhinweis für an das Gateway gesendete Pakete.sudo ip route add default via GATEWAY dev NIC table ROUTE_TABLE_NAME sudo ip route add GATEWAY src IP_ADDRESS dev NIC table ROUTE_TABLE_NAME
Ersetzen Sie dabei Folgendes:
GATEWAY
: die Standard-Gateway-IP-Adresse der Schnittstelle Dies entspricht10.10.2.1
in der Beispielkonfiguration.NIC
: die Schnittstelle, für die Sie eine Route hinzufügen möchten Beispiel:ens5
.ROUTE_TABLE_NAME
: der Name der Routentabelle.IP_ADDRESS
: die auf der Schnittstelle konfigurierte interne IP-Adresse Dies entspricht10.10.2.3
in der Beispielkonfiguration.
Erstellen Sie Routingregeln, die die VM anweisen, die benutzerdefinierte Routingtabelle für Pakete mit Quellen oder Zielen zu verwenden, die mit der primären internen IPv4-Adresse übereinstimmen, die der Schnittstelle
nic1
zugewiesen ist:sudo ip rule add from IP_ADDRESS/PREFIX_LENGTH table ROUTE_TABLE_NAME sudo ip rule add to IP_ADDRESS/PREFIX_LENGTH table ROUTE_TABLE_NAME
Ersetzen Sie dabei Folgendes:
IP_ADDRESS
: die auf der Schnittstelle konfigurierte interne IP-Adresse Dies entspricht10.10.2.3
in der Beispielkonfiguration.PREFIX_LENGTH
: die Präfixlänge für die konfigurierte IP-AdresseROUTE_TABLE_NAME
: der Name der Routentabelle.
Führen Sie den folgenden Befehl aus, um alle Einträge aus der Cache-Routingtabelle zu entfernen. Dies kann erforderlich sein, wenn Sie eine vorhandene VM mit zuvor konfigurierten Routingtabellen verwenden.
sudo ip route flush cache
Konnektivität zur VM mit mehreren NICs noch einmal testen
In der folgenden Tabelle sehen Sie die Szenarien, in denen Sie jetzt nach dem Konfigurieren des Richtlinienroutings einen Ping-Test durchführen können. Wiederholen Sie die Schritte zum Pingen der nic1-Schnittstelle Ihrer VM, um zu bestätigen, dass Sie jetzt beide IP-Adressen erfolgreich anpingen können.
Von | Bis | ping successful |
---|---|---|
VM (test-vm-1 ) im selben Netzwerk, aber in einem anderen Subnetz wie die nic0 -Schnittstelle von multi-nic-vm . |
Interne IP-Adresse (10.10.1.3 ) der nic0 -Schnittstelle von multi-nic-vm |
|
VM (test-vm-2 ) im selben Netzwerk, aber in einem anderen Subnetz wie die nic1 -Schnittstelle von multi-nic-vm .
|
Interne IP-Adressen (10.10.2.3 ) der nic1 -Schnittstelle von multi-nic-vm |
Bereinigen
Damit Ihrem Google Cloud-Konto die in dieser Anleitung verwendeten Ressourcen nicht in Rechnung gestellt werden, löschen Sie entweder das Projekt, das die Ressourcen enthält, oder Sie behalten das Projekt und löschen die einzelnen Ressourcen.
Projekt löschen
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
Einzelne Ressourcen löschen
Wenn Sie nicht das gesamte Projekt löschen möchten, löschen Sie die VPC-Netzwerke und VM-Instanzen, die Sie für die Anleitung erstellt haben.
Bevor Sie ein Netzwerk löschen können, müssen Sie alle Ressourcen in allen seinen Subnetzen löschen sowie alle Ressourcen, die auf das Netzwerk verweisen.
Instanzen löschen
So löschen Sie Instanzen:
Console
Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf.
Klicken Sie die Kästchen der Instanzen an, die Sie löschen möchten.
Klicken Sie auf die Schaltfläche Löschen.
gcloud
Führen Sie den Befehl gcloud compute instances delete
aus.
Wenn Sie eine Instanz auf diese Weise löschen, fährt die Instanz herunter und wird aus der Liste der Instanzen entfernt. Alle der Instanz angehängten Ressourcen, wie nichtflüchtige Speicher und alle statischen IP-Adressen, werden freigegeben.
Verwenden Sie folgenden Befehl, um eine Instanz zu löschen:
gcloud compute instances delete example-instance [example-instance-2 example-instance-3..]
VPC-Netzwerk löschen
So löschen Sie ein VPC-Netzwerk:
Console
Rufen Sie in der Google Cloud Console die Seite VPC-Netzwerke auf.
Klicken Sie auf den Namen eines VPC-Netzwerks, um die zugehörige Seite VPC-Netzwerkdetails aufzurufen.
Klicken Sie auf VPC-Netzwerk löschen.
Klicken Sie in der angezeigten Meldung zur Bestätigung auf Löschen.
gcloud
Führen Sie den Befehl networks delete
aus.
gcloud compute networks delete NETWORK
Ersetzen Sie NETWORK
durch den Namen des zu löschenden Netzwerks.
Nächste Schritte
- Übersicht zu mehreren Netzwerkschnittstellen lesen
- Lesen Sie VMs mit mehreren Netzwerkschnittstellen erstellen.