In diesem Dokument wird davon ausgegangen, dass Sie mit den grundlegenden Konzepten der VPC-Netzwerke, dem Border Gateway Protocol (BGP), VPNs und der Internet Protocol Security-Tunnel (IPsec) vertraut sind.
Google Cloud bietet einen hochverfügbaren (HA) VPN-Dienst, um Ihr VPC-Netzwerk über ein IPsec-VPN mit Umgebungen zu verbinden, die außerhalb von Google Cloud ausgeführt werden, z. B. in Microsoft Azure. Ein HA VPN bietet ein SLA (Service Level Agreement) mit einer Dienstverfügbarkeit von 99,99 %, wenn es gemäß der Best Practices von Google konfiguriert ist.
Architektur
Das folgende Diagramm zeigt die Architektur, die in diesem Dokument beschrieben wird.
Die im Diagramm dargestellte Architektur umfasst folgende Komponenten:
- Cloud Router: Ein vollständig verteilter und verwalteter Google Cloud-Dienst, der dynamisches Routing mit BGP für Ihre VPC-Netzwerke bereitstellt.
- HA-VPN-Gateway: Von Google verwaltetes VPN-Gateway, das in Google Cloud ausgeführt wird. Jedes HA-VPN-Gateway ist eine regionale Ressource mit zwei Schnittstellen: Schnittstelle 0 und Schnittstelle 1. Jede dieser Schnittstellen hat eine eigene externe IP-Adresse.
- VPN-Tunnel: Verbindungen vom HA VPN-Gateway in Google Cloud zum Peer-VPN-Gateway in Azure, über das verschlüsselter Traffic weitergeleitet wird.
- Virtuelles Netzwerk-Gateway: Zwei private Netzwerke, die im Azure-Cloud-Dienst definiert sind.
Jede Virtual Network Gateway-Verbindung umfasst zwei Tunnel, die für ein einzelnes Kunden-Gateway vorkonfiguriert sind, in diesem Fall eine HA VPN-Gateway-Schnittstelle in Google Cloud. Bei dieser Konfiguration sind mindestens 2 Cloud VPN-Tunnel erforderlich, um das SLA für eine Dienstverfügbarkeit von 99,99 % zu erfüllen.
Für die Verfahren erforderliche IP-Adressen
Für die Verfahren in diesem Dokument verwenden Sie sowohl in Google Cloud als auch in Azure eine Vielzahl an IP-Adressen. Einige dieser IP-Adressen werden beim Erstellen einer Ressource automatisch zugewiesen.
Sie definieren IP-Adressen für nicht automatisch zugewiesene Adressen anhand der verfügbaren IP-Adressen und der Anforderungen Ihrer Organisation.
Für Google Cloud-Ressourcen sind folgende IP-Adressen erforderlich:
- Zum Erstellen eines Subnetzes für ein Virtual Private Cloud-Netzwerk ist ein benutzerdefinierter IP-Adressbereich erforderlich.
- Nachdem das HA VPN-Gateway erstellt wurde, weist Google Cloud dem HA VPN-Gateway automatisch zwei externe IP-Adressen zu. Google weist jeder der beiden Gateway-Schnittstellen eine IP-Adresse zu. Sie benötigen die IP-Adressen für diese Schnittstellen, um die lokalen Netzwerk-Gateways in Azure einzurichten.
Wenn Sie HA VPN-Tunnel in Google Cloud erstellen, benötigt jeder Tunnel eine BGP-Schnittstelle zum Cloud Router und eine BGP-Schnittstelle zum virtuellen Aktiv-Aktiv-Netzwerk-Gateway (VPN-Gateway) in Azure. Wählen Sie für jeden Tunnel ein Paar Link-Local-BGP-Peering-IPv4-Adressen in einem /30-Block aus den Bereichen
169.254.21.*
und169.254.22.*
aus. Das sind die gültigen Bereiche für Azure APIPA-BGP-Peering-IPv4-Adressen. Sie müssen insgesamt vier IP-Adressen wählen.Die von Ihnen ausgewählten BGP-Peering-IPv4-Adressen müssen unter allen Cloud Routern in allen Regionen eines VPC-Netzwerks einmalig sein.
Azure-Ressourcen benötigen folgende IP-Adressen:
- Wenn Sie das virtuelle Netzwerk (VNet) erstellen, benötigt das VNet einen IP-Adressbereich für das Netzwerk und einen IP-Adressbereich für das Subnetz des Netzwerks. Sie können die Standard-Adressbereiche verwenden oder benutzerdefinierte Adressbereiche eingeben.
- Wenn Sie das Aktiv-Aktiv-Gateway für virtuelle Netzwerke (VPN-Gateway) erstellen, benötigt das Gateway einen Subnetz-Adressbereich. Sie können den Standardbereich verwenden oder einen benutzerdefinierten Bereich eingeben.
- Wenn Sie das BGP für das Aktiv-Aktiv-VPN-Gateway konfigurieren, benötigt das Gateway zwei APIPA-BGP-Peering-IP-Adressen. Wie bereits erwähnt, sind
169.254.21.*
und169.254.22.*
die gültigen Bereiche für Azure APIPA-BGP-Peering-IP-Adressen. - Nachdem Sie ein Aktiv-Aktiv-VPN-Gateway erstellt haben, weist Azure jeder Gateway-Schnittstelle automatisch eine externe IP-Adresse zu. Sie benötigen diese IP-Adressen, um das Peer-VPN-Gateway in Google Cloud einzurichten.
Beachten Sie beim Definieren von IP-Adressen, dass Sie für jedes Netzwerk einen eindeutigen Satz an IP-Adressen verwenden.
Lernziele
- Erstellen Sie ein virtuelles Azure-Netzwerk (VNet) und ein Aktiv-Aktiv-Gateway für virtuelle Netzwerke (VPN-Gateway).
- Erstellen Sie die erforderlichen Komponenten in Google Cloud: ein VPC-Netzwerk, einen Cloud Router, ein HA VPN-Gateway, ein Peer-VPN-Gateway und zwei HA VPN-Tunnel mit BGP-Sitzungen.
- Erstellen Sie zwei lokale Netzwerk-Gateways und zwei VPN-Verbindungen in Azure. Prüfen Sie die Cloud Router-Konfiguration und den Status Ihrer HA VPN-Tunnel in Google Cloud.
- Die Cloud VPN-Verbindung zwischen dem VPC-Netzwerk in Google Cloud und dem virtuellen Netzwerk (VNet) in Azure testen.
Kosten
Für die Verfahren in diesem Dokument werden kostenpflichtige Komponenten von Google Cloud verwendet, darunter:
Eine Schätzung der Kosten für die Google Cloud-Komponenten erhalten Sie mit dem Google Cloud-Preisrechner.
Für die Verfahren in diesem Dokument werden kostenpflichtige Komponenten von Microsoft Azure Cloud-Diensten verwendet, darunter:
- VPN-Gateways
- Lokale Netzwerk-Gateways
Eine Schätzung der Kosten für die Azure-Komponenten erhalten Sie mit dem Azure-Preisrechner.
Hinweis
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.
-
Enable the Compute Engine API.
-
In the Google Cloud console, activate Cloud Shell.
-
Prüfen Sie, ob Sie die erforderlichen Administratorrollen zum Konfigurieren von Netzwerkkomponenten haben:
- Netzwerkadministrator:
compute.networkAdmin
- Sicherheitsadministrator:
compute.securityAdmin
- Compute-Administrator:
compute.admin
Weitere Informationen zu den Zwecken dieser Rollen finden Sie unter IAM-Rollen für netzwerkbezogene Jobfunktionen.
- Netzwerkadministrator:
Ein VNet und ein Aktiv-Aktiv-VPN-Gateway in Azure erstellen
In Azure müssen Sie folgende Komponenten einrichten:
- Ein virtuelles Azure-Netzwerk (VNet), das es Azure-Ressourcen ermöglicht, mit Ihrem Google Cloud VPN zu kommunizieren.
- Ein Aktiv-Aktiv-VPN-Gateway, das es beiden Instanzen der virtuellen Maschinen (VMs) des Gateways ermöglicht, VPN-Tunnel zu Ihrem Google Cloud VPN einzurichten.
VNet erstellen
Mit einem VNet können Azure-Ressourcen sicher miteinander, mit dem Internet und mit anderen Netzwerken (z. B. Cloud VPN) kommunizieren. Weitere Informationen zum Erstellen eines VNet finden Sie in der Azure-Dokumentation zum Erstellen eines VNet.
- Melden Sie sich im Azure-Portal an.
- Geben Sie im Feld Ressourcen, Dienst und Dokumente suchen (G+/)
virtual network
ein. - Wählen Sie in der Liste der Marketplace-Ergebnisse die Option Virtuelles Netzwerk.
- Wählen Sie auf der Seite Virtuelles Netzwerk Erstellen aus.
Konfigurieren Sie auf dem Tab Grundlagen der Seite Virtuelles Netzwerk erstellen die folgenden VNet-Einstellungen für Projektdetails und Instanzdetails:
- Prüfen Sie im Feld Abo, ob das aufgeführte Abo das richtige ist. Wenn Sie das Abo ändern möchten, wählen Sie es in der Liste aus.
- Klicken Sie zum Angeben der Ressourcengruppe auf Neu erstellen, um eine neue Gruppe zu erstellen, und geben Sie einen Namen wie
azure‑to‑google‑resgroup
für den Namen der Ressourcengruppe ein. - Geben Sie im Feld Name den Namen für Ihr VNet ein, z. B.
azure‑to‑google‑network
. Wählen Sie im Feld Region einen Speicherort für Ihr VNet aus.
Der ausgewählte Standort bestimmt den Speicherort der Ressourcen, die Sie in diesem virtuellen Netzwerk bereitstellen.
Verwenden Sie auf dem Tab IP-Adressen im Feld IPv4-Adressbereich den Standard-Adressraum und das Standard-Subnetz, das von Azure erstellt wurde.
Behalten Sie auf dem Tab Sicherheit für BastionHost, DDoS-Standardschutz und Firewall den Standardwert Deaktivieren bei.
Wählen Sie Prüfen + erstellen aus, um die VNet-Einstellungen zu validieren.
Nachdem die Einstellungen validiert wurden, wählen Sie Erstellen.
Aktiv-Aktiv-VPN-Gateway erstellen
Mit den folgenden Verfahren wird das Aktiv-Aktiv-VPN-Gateway erstellt:
- Im ersten Verfahren werden die Projekt- und Instanzdetails definiert.
- Im zweiten Verfahren wird die IP-Adresse für das Gateway angegeben.
Momenten erstellen das Aktiv-Aktiv-VPN-Gateway nur. Sie müssen Ihre Google Cloud-Komponenten erstellen, bevor Sie die erforderlichen Tunnel in Azure konfigurieren können. Weitere Informationen zum Erstellen eines Aktiv-Aktiv-VPN-Gateways finden Sie in der Azure-Dokumentation unter Aktiv-Aktiv-VPN-Gateways mit dem Portal konfigurieren.
Gateway-Details definieren
- Melden Sie sich im Azure-Portal an.
- Geben Sie unter Ressourcen, Dienst und Dokumente suchen (G+/)
virtual network gateway
ein. - Suchen Sie in den Suchergebnissen unter Dienste nach Virtuelle Netzwerk-Gateways und wählen Sie dieses Element aus.
- Wählen Sie auf der Seite Virtuelles Netzwerk-Gateway Erstellen aus.
Geben Sie auf der Seite Grundlagen auf der Seite Virtuelles Netzwerk-Gateway erstellen in den Bereichen Projektdetails und Instanzdetails folgende Werte an:
- Wählen Sie in der Liste Abo das Abo aus, das Sie verwenden möchten.
- Optional: Geben Sie im Feld Gateway-Subnetzadressenbereich den Adressbereich für das Subnetz ein.
- Prüfen Sie, ob die Ressourcengruppe die Ressourcengruppe anzeigt, die dem virtuellen Netzwerk entspricht, das Sie auf dieser Seite auswählen.
- Geben Sie unter Name den Namen Ihres Gateways ein, z. B.
azure‑to‑google‑gateway
. - Wählen Sie unter Region dieselbe Region aus, die Sie beim Erstellen Ihres VNET verwendet haben.
- Wählen Sie für Gateway-Typ VPN aus.
Wählen Sie als VPN-Typ den routenbasierten VPN-Typ.
Wählen Sie in der Liste SKU die gewünschte Gateway-SKU aus.
Die im Drop-down-Menü aufgeführten SKUs hängen vom ausgewählten VPN-Typ ab.
Wählen Sie in der Liste Generation die Generation aus, die Sie verwenden möchten.
Wählen Sie in der Liste Virtuelles Netzwerk das zuvor erstellte VNet aus
Bleiben Sie auf für den nächsten Vorgang auf dieser Seite.
Gateway-IP-Adressen definieren
Führen Sie auf dem Tab Grundlagen der Seite Virtuelles Netzwerk-Gateway erstellen folgende Schritte aus, um die externen IP-Adressen zu erstellen, die das Aktiv-Aktiv-VPN-Gateway verwenden wird:
Wählen Sie für Öffentliche IP-Adresse Neu erstellen aus.
Azure weist Ihrem Aktiv-Aktiv-VPN-Gateway automatisch die externe IP-Adresse zu.
Geben Sie im Feld Name der öffentlichen IP-Adresse einen Namen für Ihre externe IP-Adressinstanz ein, z. B.
azure‑to‑google‑network‑ip1
.Wählen Sie für Aktiv-Aktiv-Modus aktivieren Aktiviert aus.
Optional: Konfigurieren Sie die Verfügbarkeitszone, falls für Ihre Region verfügbar. Sie können beispielsweise Zonenredundant auswählen.
Wählen Sie für Zweite öffentliche IP-Adresse Neu erstellen aus.
Geben Sie im Feld Name der öffentlichen IP-Adresse den Namen der zweiten externen IP-Adresse ein, z. B.
azure‑to‑google‑network‑ip2
.Wählen Sie für BGP konfigurieren Aktiviert aus.
Legen Sie unter Autonome Systemnummern (ASN) die ASN auf einen zulässigen und gültigen Wert fest.
Sie verwenden diesen ASN-Wert, wenn Sie die BGP-Sitzungen für die Tunnel in Google Cloud einrichten. Notieren Sie diesen Wert als
AZURE_ASN
, um auf dieses Aktiv-Aktiv-VPN-Gateway zu verweisen.Geben Sie unter Benutzerdefinierte Azure APIPA BGP-IP-Adresse die erste APIPA BGP-IP-Adresse ein und notieren Sie sich den Wert als
AZURE_BGP_IP_0
. Die gültigen Bereiche für Azure APIPA-BGP-IP-Adressen sind169.254.21.*
und169.254.22.*
.Geben Sie unter Zweite benutzerdefinierte Azure APIPA BGP-IP-Adresse die zweite APIPA BGP-IP-Adresse ein und notieren Sie sich den Wert als
AZURE_BGP_IP_1
. Sie verwenden diese Variablen beim Konfigurieren der BGP-Sitzungen in Google Cloud.
Wählen Sie Prüfen + erstellen aus, um die Validierung auszuführen.
Wählen Sie nach Abschluss der Validierung Erstellen aus, um das VPN-Gateway bereitzustellen.
Externe IP-Adressen für das Aktiv-Aktiv-VPN-Gateway anzeigen und aufzeichnen
Sie benötigen die externen IP-Adressen, die Azure dem Aktiv-Aktiv-VPN-Gateway automatisch zugewiesen hat. Mit diesen IP-Adressen erstellen Sie die Peer-VPN-Gateway-Ressource in Google Cloud.
- Suchen Sie auf der Seite Übersicht für das gerade erstellte Aktiv-Aktiv-Gateway nach den externen IP-Adressen für das Gateway.
- Notieren Sie die auf dem Bildschirm angezeigten IP-Adressen:
- Notieren Sie die erste externe IP-Adresse als
AZURE_GW_IP_0
. - Notieren Sie sich die zweite externe IP-Adresse als
AZURE_GW_IP_1
.
- Notieren Sie die erste externe IP-Adresse als
Später werden diese IP-Adressen in diesem Dokument als AZURE_GW_IP_0
und AZURE_GW_IP_1
bezeichnet.
Google Cloud-Komponenten erstellen
In Google Cloud müssen Sie folgende Komponenten einrichten:
- Ein VPC-Netzwerk
- Ein HA VPN-Gateway
- Einen Cloud Router
- Ein Peer-VPN-Gateway
- HA VPN-Tunnel mit BGP-Sitzungen
Bei folgenden Verfahren wird davon ausgegangen, dass Sie Google Cloud (wie unter Vorbereitung beschrieben) eingerichtet haben. Wenn Sie diese Schritte noch nicht ausgeführt haben, holen Sie dies jetzt nach.
VPC-Netzwerk, Subnetz, HA-VPN-Gateway und Cloud Router in Google Cloud erstellen
In Google Cloud erstellen Sie ein VPC-Netzwerk, ein HA-VPN-Gateway und einen Cloud Router und konfigurieren dann die Firewallregeln in Google Cloud.
Achten Sie darauf, dass Sie in Google Cloud Shell in dem Cloud-Projekt arbeiten, das Sie erstellt oder ausgewählt haben:
gcloud config set project YOUR_PROJECT_ID export PROJECT_ID=`gcloud config list --format="value(core.project)"`
Ersetzen Sie
YOUR_PROJECT_ID
durch Ihre Cloudprojekt-ID.Erstellen Sie ein benutzerdefiniertes VPC-Netzwerk mit einem einzelnen Subnetz:
gcloud compute networks create NETWORK \ --subnet-mode SUBNET_MODE \ --bgp-routing-mode BGP_ROUTING_MODE
Dabei gilt:
NETWORK
ist der Name des Netzwerks, z. B.google‑to‑azure‑vpc
.SUBNET_MODE
ist der Subnetzmodus, aufcustom
festgelegt.
BGP_ROUTING_MODE
ist der BGP-Routingmodus, aufglobal
festgelegt.Der Befehl sollte in etwa wie das folgende Beispiel aussehen:
gcloud compute networks create google-to-azure-vpc \ --subnet-mode custom \ --bgp-routing-mode global
Erstellen Sie ein Subnetz zum Hosten der Test-VMs:
gcloud compute networks subnets create SUBNET_NAME \ --network NETWORK \ --region SUBNET_REGION \ --range SUBNET_IP_ADDRESS_RANGE
Dabei gilt:
SUBNET_NAME
ist der Subnetzname.SUBNET_REGION
ist die Region, in der das Subnetz erstellt werden soll.SUBNET_IP_ADDRESS_RANGE
ist der IP-Adressbereich für das Subnetz.
Der Befehl sollte in etwa wie das folgende Beispiel aussehen:
gcloud compute networks subnets create subnet-central1 \ --network google-to-azure-vpc \ --region us-central1 \ --range 10.1.1.0/24
Erstellen Sie das HA-VPN-Gateway:
gcloud compute vpn-gateways create HA_VPN_GATEWAY_NAME \ --network NETWORK \ --region REGION
Ersetzen Sie
HA_VPN_GATEWAY_NAME
durch den Namen für das HA-VPN-Gateway.Der Befehl sollte in etwa wie das folgende Beispiel aussehen:
gcloud compute vpn-gateways create ha-vpn-gw-a \ --network google-to-azure-vpc \ --region us-central1
Das von Ihnen erstellte Gateway sollte in etwa der folgenden Beispielausgabe entsprechen:
Created [https://www.googleapis.com/compute/v1/projects/YOUR_PROJECT_ID/regions/us-central1/vpnGateways/ha-vpn-gw-a]. NAME INTERFACE0 INTERFACE1 NETWORK REGION ha-vpn-gw-a 203.0.113.1 203.0.113.2 google-to-azure-vpc us-central1
In der Ausgabe werden die externen IPv4-Adressen aufgeführt, die den einzelnen Gateway-Schnittstellen (
INTERFACE0
undINTERFACE1
) automatisch zugewiesen wurden. Sie benötigen diese IP-Adressen, wenn Sie die lokalen Netzwerk-Gateways in Azure einrichten:- Notieren Sie sich die IP-Adresse für
INTERFACE0
inHA_VPN_INT_0
. - Notieren Sie sich die IP-Adresse für
INTERFACE1
inHA_VPN_INT_1
.
- Notieren Sie sich die IP-Adresse für
Erstellen Sie einen Cloud Router:
gcloud compute routers create ROUTER_NAME \ --region REGION \ --network NETWORK \ --asn GOOGLE_ASN \
Dabei gilt:
ROUTER_NAME
ist der Name für Ihren Cloud Router.REGION
ist die Region, in der Sie das HA VPN-Gateway und die Tunnel erstellen.GOOGLE_ASN
ist die private autonome Systemnummer (ASN) für den Cloud Router, den Sie erstellen. Dies kann eine beliebige private ASN im Bereich64512-65534
oder4200000000-4294967294
sein, die Sie nicht bereits als Peer-ASN in derselben Region und demselben Netzwerk verwenden.
Der Befehl sollte in etwa wie das folgende Beispiel aussehen:
gcloud compute routers create cloud-router \ --region us-central1 \ --network google-to-azure-vpc \ --asn 65534
Peer-VPN-Gateway für das Azure-VPN erstellen
In diesem Abschnitt erstellen Sie eine externe VPN-Gateway-Ressource, die Google Cloud Informationen zu Ihrem Aktiv-Aktiv-VPN-Gateway in Azure zur Verfügung stellt. Sie erstellen ein einzelnes Peer-VPN-Gateway, das zwei separate Schnittstellen mit jeweils einer eigenen externen IP-Adresse verwendet.
Erstellen Sie ein einzelnes externes Peer-VPN-Gateway mit zwei Schnittstellen:
gcloud compute external-vpn-gateways create AZURE_GW_NAME \ --interfaces 0=AZURE_GW_IP_0,1=AZURE_GW_IP_1
Dabei gilt:
AZURE_GW_NAME
ist der Name Ihres Azure-Aktiv-Aktiv-VPN-GatewaysAZURE_GW_IP_0
ist die externe IP-Adresse für eine Schnittstelle vom Peer-GatewayAZURE_GW_IP_1
ist die externe IP-Adresse für eine weitere Schnittstelle vom Peer-Gateway
Die von Ihnen erstellte Peer-VPN-Gateway-Ressource sollte dem folgenden Beispiel ähnlich sein, in dem AZURE_GW_IP_0
und AZURE_GW_IP_1
die tatsächlichen externen IP-Adressen der Peer-Gateway-Schnittstellen zeigen:
gcloud compute external-vpn-gateways create azure-peer-gw \ --interfaces 0=203.0.113.1,1=203.0.113.2 Created [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/externalVpnGateways/peer-gw]. NAME INTERFACE0 INTERFACE1 azure-peer-gw 203.0.113.1 203.0.113.2
VPN-Tunnel erstellen
Sie müssen zwei VPN-Tunnel erstellen: einen Tunnel pro Schnittstelle im Peer-VPN-Gateway. Verwenden Sie beim Konfigurieren von VPN-Tunneln zu Azure das IKEv2-Verschlüsselungsprotokoll.
Ersetzen Sie bei den Befehlen in diesem Abschnitt Folgendes:
TUNNEL_NAME_IF0
undTUNNEL_NAME_IF1
: Wenn Sie bei der Benennung der Tunnel den Namen der Gateway-Schnittstelle einbeziehen, können die Tunnel später leichter identifiziert werden.AZURE_GW_NAME
: der Name des zuvor erstellten externen Peer-GatewaysAZURE_GW_INT_NUM_0
undAZURE_GW_INT_NUM_1
: die zuvor auf dem externen Peer-Gateway konfigurierte Nummer der SchnittstelleIKE_VERS
: Verwenden Sie2
für IKEv2.SHARED_SECRET
: Ihr vorinstallierter Schlüssel (gemeinsames Secret), der dem vorinstallierten Schlüssel entsprechen muss, den Sie beim Einrichten von VPN-Verbindungen in Azure angeben. Empfehlungen finden Sie unter Starken vorinstallierten Schlüssel generieren.HA_VPN_GATEWAY_NAME
: der Name des HA VPN-Gateways.INT_NUM_0
: die Nummer0
für die erste Schnittstelle auf dem HA VPN-Gateway, das Sie zuvor erstellt haben.INT_NUM_1
: die Nummer1
für die zweite Schnittstelle auf dem HA VPN-Gateway, das Sie zuvor erstellt haben.
So erstellen Sie die VPN-Tunnel:
Erstellen Sie den VPN-Tunnel für Schnittstelle 0:
gcloud compute vpn-tunnels create TUNNEL_NAME_IF0 \ --peer-external-gateway=AZURE_GW_NAME \ --peer-external-gateway-interface=AZURE_GW_INT_NUM_0 \ --region=REGION \ --ike-version=IKE_VERS \ --shared-secret=SHARED_SECRET \ --router=ROUTER_NAME \ --vpn-gateway=HA_VPN_GATEWAY_NAME \ --interface=INT_NUM_0
Der Befehl sollte in etwa wie das folgende Beispiel aussehen:
gcloud compute vpn-tunnels create azure-tunnel-1 \ --peer-external-gateway azure-peer-gw \ --peer-external-gateway-interface 0 \ --region us-central1 \ --ike-version 2 \ --shared-secret xo2aTKHipD/oE1GAXgj3lMwjBmJXZjqD \ --router cloud-router \ --vpn-gateway ha-vpn-gw-a \ --interface 0
Erstellen Sie den VPN-Tunnel für Schnittstelle 1:
gcloud compute vpn-tunnels create TUNNEL_NAME_IF1 \ --peer-external-gateway=AZURE_GW_NAME \ --peer-external-gateway-interface=AZURE_GW_INT_NUM_1 \ --region=REGION \ --ike-version=IKE_VERS \ --shared-secret=SHARED_SECRET \ --router=ROUTER_NAME \ --vpn-gateway=HA_VPN_GATEWAY_NAME \ --interface=INT_NUM_1
Der Befehl sollte in etwa wie das folgende Beispiel aussehen:
gcloud compute vpn-tunnels create azure-tunnel-2 \ --peer-external-gateway azure-peer-gw \ --peer-external-gateway-interface 1 \ --region us-central1 \ --ike-version 2 \ --shared-secret xo2aTKHipD/oE1GAXgj3lMwjBmJXZjqD \ --router cloud-router \ --vpn-gateway ha-vpn-gw-a \ --interface 1
BGP-Sitzungen erstellen
Für dynamisches Routing verwenden Sie Cloud Router, um BGP-Sitzungen zwischen Google Cloud und Azure einzurichten. Wir empfehlen, nach Möglichkeit dynamisches Routing anstelle von statischem Routing zu verwenden, wie in der Cloud VPN-Übersicht und Cloud VPN-Netzwerk und Tunnelrouting diskutiert.
Sie müssen für jeden VPN-Tunnel eine BGP-Sitzung erstellen. Jede BGP-Sitzung besteht aus einer BGP-Schnittstelle zum Cloud Router und einem BGP-Peer. Sie erstellen einen BGP-Peer für jeden der beiden soeben erstellten VPN-Tunnel.
Ersetzen Sie bei den Befehlen in diesem Abschnitt Folgendes:
ROUTER_NAME
: Der Name, den Sie dem Cloud Router zugewiesen haben.ROUTER_INTERFACE_NAME_0
undROUTER_INTERFACE_NAME_1
: der Name für die BGP-Schnittstelle von Cloud Router. Dabei kann es hilfreich sein, Namen zu verwenden, die sich auf die zuvor konfigurierten Tunnelnamen beziehen.MASK_LENGTH
: Geben Sie30
an; jede BGP-Sitzung auf demselben Cloud Router muss ein eindeutiges/30
-CIDR aus dem169.254.0.0/16
-Block verwenden.GOOGLE_BGP_IP_0
undGOOGLE_BGP_IP_1
: die BGP-Peering-IP-Adressen für die HA VPN-Gateway-Schnittstellen, die Sie konfigurieren; jeder Tunnel verwendet eine andere Gateway-Schnittstelle. Da die zulässigen Bereiche für Azure APIPA-BGP-Peering-IP-Adressen169.254.21.*
und169.254.22.*
sind, müssen Sie eine verfügbare IP-Adresse im/30
-CIDR dieser Bereiche für Ihre Cloud Router BGP-Peering-IP-Adressen wählen.AZURE_BGP_IP_0
undAZURE_BGP_IP_1
: die APIPA-BGP-Peering-IP-Adressen, die Sie bereits auf dem Azure-Aktiv-VPN-Gateway konfiguriert haben; jeder Tunnel verwendet eine andere Adresse.TUNNEL_NAME_IF0
undTUNNEL_NAME_IF1
: der Tunnel, der der von Ihnen konfigurierten HA VPN-Gateway-Schnittstelle zugeordnet ist.AZURE_ASN
: die ASN, die Sie für das Aktiv-Aktiv-Peer-VPN-Gateway in Azure konfiguriert haben.BGP_PEER_NAME_1
undBGP_PEER_NAME_2
durch eindeutige Namen für jeden BGP-Peer. Beispiele:azure‑bgp‑peer‑1
undazure‑bgp‑peer‑2
.
So erstellen Sie BGP-Sitzungen für die VPN-Tunnel:
Fügen Sie für den ersten VPN-Tunnel dem Cloud Router eine BGP-Schnittstelle hinzu.
gcloud compute routers add-interface ROUTER_NAME \ --interface-name=ROUTER_INTERFACE_NAME_0 \ --mask-length=MASK_LENGTH \ --vpn-tunnel=TUNNEL_NAME_IF0 \ --ip-address=GOOGLE_BGP_IP_0 \ --region=REGION
Der Befehl sollte in etwa wie das folgende Beispiel aussehen:
gcloud compute routers add-interface cloud-router \ --interface-name azure-tunnel-1-int-0 \ --mask-length 30 \ --vpn-tunnel azure-tunnel-1 \ --ip-address 169.254.21.2 \ --region us-central1
Fügen Sie für den ersten VPN-Tunnel der Schnittstelle einen BGP-Peer hinzu.
gcloud compute routers add-bgp-peer ROUTER_NAME \ --peer-name=BGP_PEER_NAME_1 \ --peer-asn=AZURE_ASN \ --interface=ROUTER_INTERFACE_NAME_0 \ --peer-ip-address=AZURE_BGP_IP_0 \ --region=REGION
Der Befehl sollte in etwa wie das folgende Beispiel aussehen:
gcloud compute routers add-bgp-peer cloud-router \ --peer-name azure-bgp-peer-1 \ --peer-asn 65515 \ --interface azure-tunnel-1-int-0 \ --peer-ip-address 169.254.21.1 \ --region us-central1
Fügen Sie für den zweiten VPN-Tunnel dem Cloud Router eine BGP-Schnittstelle hinzu:
gcloud compute routers add-interface ROUTER_NAME \ --interface-name=ROUTER_INTERFACE_NAME_1 \ --mask-length=MASK_LENGTH \ --vpn-tunnel=TUNNEL_NAME_IF0 \ --ip-address=GOOGLE_BGP_IP_1 \ --region=REGION
Der Befehl sollte in etwa wie das folgende Beispiel aussehen:
gcloud compute routers add-interface cloud-router \ --interface-name azure-tunnel-2-int-1 \ --mask-length 30 \ --vpn-tunnel azure-tunnel-2 \ --ip-address 169.254.22.2 \ --region us-central1
Fügen Sie für den zweiten VPN-Tunnel der Schnittstelle einen BGP-Peer hinzu:
gcloud compute routers add-bgp-peer ROUTER_NAME \ --peer-name=BGP_PEER_NAME_2 \ --peer-asn=AZURE_ASN \ --interface=ROUTER_INTERFACE_NAME_1 \ --peer-ip-address=AZURE_BGP_IP_1 \ --region=REGION
Der Befehl sollte in etwa wie das folgende Beispiel aussehen:
gcloud compute routers add-bgp-peer cloud-router \ --peer-name azure-bgp-peer-2 \ --peer-asn 65515 \ --interface azure-tunnel-2-int-1 \ --peer-ip-address 169.254.22.1 \ --region us-central1
Lokale Netzwerk-Gateways und VPN-Verbindungen in Azure erstellen
Nachdem Sie die Google Cloud-Komponenten erstellt und konfiguriert haben, kehren Sie zu Ihrer Azure-Umgebung zurück, um Google Cloud mit Azure zu verbinden. Erstellen Sie zur Fertigstellung dieser Verbindung die folgenden Komponenten in Azure:
- Zwei lokale Netzwerk-Gateways, die Ihr Google Cloud-VPN in Azure darstellen.
- Zwei VPN-Verbindungen, die den beiden HA VPN-Tunneln entsprechen, die Sie in Google Cloud konfiguriert haben.
Zwei lokale Netzwerk-Gateways erstellen
Ein lokales Netzwerk-Gateway ist ein bestimmtes Objekt, das Ihr Google Cloud VPN in Azure darstellt. Wenn Sie ein lokales Netzwerk-Gateway erstellen, geben Sie folgende Informationen an:
- Ein Name für das lokale Netzwerk-Gateway.
- Die IP-Adresse der HA VPN-Schnittstelle, die in der Verbindung verwendet werden soll.
- Die IP-Adresse des Google Cloud Routers, zu dem Sie eine Verbindung herstellen möchten.
- Die IP-Adresspräfixe, die über das VPN-Gateway an den Cloud Router weitergeleitet werden. Die von Ihnen angegebenen Adresspräfixe sind die Präfixe in Ihrem Cloud VPN. Wenn sich Ihr virtuelles privates Cloud-Netzwerk ändert oder Sie die externe IP-Adresse für den Cloud Router ändern müssen, können Sie die Werte später aktualisieren.
Sie müssen zwei lokale Netzwerk-Gateways erstellen: ein Gateway, das eine Verbindung zur ersten HA VPN-Tunnel-Schnittstelle in Google Cloud herstellt, und ein Gateway, das eine Verbindung zur zweiten HA VPN-Tunnel-Schnittstelle herstellt.
Weitere Informationen finden Sie im Abschnitt Lokales Netzwerk-Gateway erstellen der Anleitung Site-to-Site-VPN-Verbindung im Azure-Portal erstellen in der Azure-Dokumentation.
So erstellen Sie das erste lokale Netzwerk-Gateway:
- Melden Sie sich im Azure-Portal an.
- Geben Sie unter Ressourcen, Dienst und Dokumente suchen (G+/) local network gateway ein.
- Suchen Sie in den Suchergebnissen unter Marktplatz nach Lokales Netzwerk-Gateway und wählen Sie es aus.
- Klicken Sie auf Erstellen.
Geben Sie auf dem Tab Grundlagen der Seite Lokales Netzwerk-Gateway erstellen die folgenden Werte für Ihr lokales Netzwerk-Gateway an:
- Prüfen Sie in der Liste Abo, ob das richtige Abo angezeigt wird.
- Wählen Sie in der Liste Ressourcengruppe die Ressourcengruppe aus, die Sie zuvor in diesem Dokument für VNet erstellt haben.
- Wählen Sie unter Region den Standort aus, an dem sich Ihr VNet befindet.
- Geben Sie unter Name einen Namen für Ihr lokales Netzwerk-Gateway ein, z. B.
azure-to-google-locgateway1
. - Wählen Sie unter Endpunkt IP-Adresse aus.
- Geben Sie in das Feld IP-Adresse die IP-Adresse für
INTERFACE0
Ihres HA VPN ein (alsoHA_VPN_INT_0
). Geben Sie unter Adressraum die Adressbereiche für das Netzwerk ein, das dieses lokale Netzwerk darstellt.
Sie können mehrere Adressbereiche hinzufügen. Achten Sie darauf, dass sich die hier angegebenen Bereiche nicht mit Bereichen anderer Netzwerke überschneiden, zu denen Sie eine Verbindung herstellen möchten.
Konfigurieren Sie auf dem Tab Erweitert die BGP-Einstellungen:
- Wählen Sie für BGP-Einstellungen konfigurieren die Option Ja aus.
- Geben Sie unter Autonomous System Number (ASN) (Nummer des autonomen Systems) die ASN für Ihren Cloud Router ein (d. h.
GOOGLE_ASN
). - Geben Sie unter BGP-Peer-IP-Adresse die BGP-IP-Adresse für den Cloud Router in Tunnel 1 ein (
GOOGLE_BGP_IP_0
).
Klicken Sie unten auf der Seite auf Prüfen und erstellen, um die Konfiguration des lokalen Netzwerk-Gateways zu validieren.
Nachdem die Validierung erfolgreich war, klicken Sie auf Erstellen, um das lokale Netzwerk-Gateway zu erstellen.
So erstellen Sie das zweite lokale Netzwerk-Gateway:
- Geben Sie im Azure-Portal unter Ressourcen, Dienst und Dokumente suchen (G+/)
local network gateway
ein. - Suchen Sie in den Suchergebnissen unter Marketplace nach Local Network Gateway und wählen Sie dieses Element aus.
Geben Sie auf dem Tab Grundlagen der Seite Lokales Netzwerk-Gateway erstellen die folgenden Werte für Ihr lokales Netzwerk-Gateway an:
- Prüfen Sie in der Liste Abo, ob das richtige Abo angezeigt wird.
- Wählen Sie in der Liste Ressourcengruppe die Ressourcengruppe aus, die Sie zuvor in diesem Dokument für VNet erstellt haben.
- Wählen Sie unter Region die Region Ihres VNet aus.
- Geben Sie unter Name einen Namen für Ihr lokales Netzwerk-Gateway ein, z. B.
azure-to-google-locgateway2
. - Wählen Sie unter Endpunkt IP-Adresse aus.
- Geben Sie in das Feld IP-Adresse die IP-Adresse für
INTERFACE1
Ihres HA VPN ein (alsoHA_VPN_INT_1
). - Geben Sie unter Adressraum die Adressbereiche für das Netzwerk ein, das dieses lokale Netzwerk darstellt.
Sie können mehrere Adressbereiche hinzufügen. Achten Sie darauf, dass sich die hier angegebenen Bereiche nicht mit Bereichen anderer Netzwerke überschneiden, zu denen Sie eine Verbindung herstellen möchten.
Konfigurieren Sie auf dem Tab Erweitert die BGP-Einstellungen:
- Wählen Sie für BGP-Einstellungen konfigurieren die Option Ja aus.
- Geben Sie unter Autonomous System Number (ASN) (Nummer des autonomen Systems) die ASN für Ihren Cloud Router ein (d. h.
GOOGLE_ASN
). - Geben Sie unter BGP-Peer-IP-Adresse die BGP-IP-Adresse für den Cloud Router in Tunnel 1 ein (
GOOGLE_BGP_IP_1
).
Klicken Sie unten auf der Seite auf Überprüfen und erstellen, um die Konfiguration des lokalen Netzwerk-Gateways zu validieren.
Nachdem die Validierung erfolgreich war, klicken Sie auf Erstellen, um das lokale Netzwerk-Gateway zu erstellen.
Zwei VPN-Verbindungen erstellen
Zum Erstellen der VPN-Verbindungen in Azure benötigen Sie die vorinstallierten Schlüssel oder SHARED_SECRET, die Sie beim Einrichten der HA VPN-Tunnel in Google Cloud konfiguriert haben.
- Suchen Sie im Azure-Portal das Aktiv-Aktiv-VPN-Gateway, das Sie unter Aktiv-Aktiv-VPN-Gateway erstellen erstellt haben.
- Wählen Sie Verbindungen.
- Wählen Sie oben auf der Seite Verbindungen +Hinzufügen aus.
- Geben Sie auf der Seite Verbindung hinzufügen folgende Werte für Ihre erste Verbindung an:
- Geben Sie unter Name einen Namen für die Verbindung ein, z. B.
azure-vnet-to-google1
. - Wählen Sie als Verbindungstyp die Option Site-to-Site (IPsec) aus.
- Geben Sie unter Lokales Netzwerk-Gateway das erste von Ihnen erstellte lokale Netzwerk-Gateway an, z. B.
azure-to-google-locgateway1
. - Geben Sie unter Freigegebener Schlüssel (PSK) den freigegebenen Schlüssel an, den Sie für den ersten HA VPN-Tunnel konfiguriert haben.
- Wählen Sie BGP aktivieren aus.
- Setzen Sie das IKE-Protokoll auf IKEv2.
- Klicken Sie auf OK.
- Wählen Sie auf der Seite Verbindungen +Hinzufügen aus, um eine zweite Verbindung mit folgenden Werten hinzuzufügen:
- Geben Sie unter Name einen Namen für die Verbindung ein, z. B.
azure-vnet-to-google2
. - Wählen Sie als Verbindungstyp die Option Site-to-Site (IPsec) aus.
- Geben Sie unter Lokales Netzwerk-Gateway das zweite von Ihnen erstellte lokale Netzwerk-Gateway an, z. B.
azure-to-google-locgateway2
. - Geben Sie unter Freigegebener Schlüssel (PSK) den freigegebenen Schlüssel an, den Sie für den zweiten HA VPN-Tunnel konfiguriert haben.
- Wählen Sie BGP aktivieren aus.
- Setzen Sie das IKE-Protokoll auf IKEv2.
- Klicken Sie auf OK.
- Geben Sie unter Name einen Namen für die Verbindung ein, z. B.
- Prüfen Sie auf der Seite Verbindungen, ob der Status beider Verbindungen als Verbunden aufgeführt wird.
Konfiguration prüfen
In Google Cloud können Sie Ihre HA VPN-Konfiguration verifizieren. Dazu prüfen Sie zuerst die Konfiguration Ihres Cloud Routers und dann den Status der HA VPN-Tunnel.
Listen Sie in Cloud Shell die von Cloud Router ausgewählten BGP-Peering-IP-Adressen auf:
gcloud compute routers get-status ROUTER_NAME \ --region=REGION \ --format='flattened(result.bgpPeerStatus[].name, result.bgpPeerStatus[].ipAddress, result.bgpPeerStatus[].peerIpAddress)'
Der Befehl sollte in etwa wie das folgende Beispiel aussehen:
gcloud compute routers get-status cloud-router \ --region us-central1 \ --format='flattened(result.bgpPeerStatus[].name,result.bgpPeerStatus[].ipAddress,result.bgpPeerStatus[].peerIpAddress)'
Die erwartete Ausgabe für einen Cloud Router, der zwei HA VPN-Tunnel verwaltet (Index
0
und Index1
), sollte wie im folgenden Beispiel aussehen:result.bgpPeerStatus[0].ipAddress: 169.254.21.2 result.bgpPeerStatus[0].name: azure-bgp-peer-1 result.bgpPeerStatus[0].peerIpAddress: 169.254.21.1 result.bgpPeerStatus[1].ipAddress: 169.254.22.2 result.bgpPeerStatus[1].name: azure-bgp-peer-2 result.bgpPeerStatus[1].peerIpAddress: 169.254.22.1
Rufen Sie in Cloud Shell den Status des ersten HA VPN-Tunnels auf:
gcloud compute vpn-tunnels describe TUNNEL_NAME_IF0 \ --region=REGION
Dabei gilt:
TUNNEL_NAME_IF0
: der Tunnel, der der ersten von Ihnen konfigurierten HA VPN-Gateway-Schnittstelle zugeordnet ist.REGION
: die Region, in der Sie das HA VPN-Gateway bereitgestellt haben.
Der Befehl sollte in etwa wie das folgende Beispiel aussehen:
gcloud compute vpn-tunnels describe azure-tunnel-1 -–region=us-central1
Die erwartete Ausgabe für den Tunnel sollte in etwa so aussehen:
creationTimestamp: '2022-09-28T17:13:21.592-07:00' description: '' detailedStatus: Tunnel is up and running. id: '278561789474069966' ikeVersion: 2 kind: compute#vpnTunnel localTrafficSelector: - 0.0.0.0/0 name: azure-tunnel-1 peerExternalGateway: https://www.googleapis.com/compute/v1/projects/PROJECT-ID/global/externalVpnGateways/azure-peer-gw peerExternalGatewayInterface: 0 peerIp: 203.0.113.1 region: https://www.googleapis.com/compute/v1/projects/PROJECT-ID/regions/us-central1 remoteTrafficSelector: - 0.0.0.0/0 router: https://www.googleapis.com/compute/v1/projects/PROJECT-ID/regions/us-central1/routers/cloud-router selfLink: https://www.googleapis.com/compute/v1/projects/PROJECT-ID/regions/us-central1/vpnTunnels/azure-tunnel-1 sharedSecret: '*************' sharedSecretHash: ALDZGgSMUxj8KFahMoG_L0Fz9paz status: ESTABLISHED vpnGateway: https://www.googleapis.com/compute/v1/projects/PROJECT-ID/regions/us-central1/vpnGateways/ha-vpn-gw-a vpnGatewayInterface: 0
Rufen Sie in Cloud Shell den Status des zweiten HA VPN-Tunnels auf:
gcloud compute vpn-tunnels describe TUNNEL_NAME_IF1 \ --region=REGION
Dabei gilt:
TUNNEL_NAME_IF1
: der Tunnel, der der zweiten von Ihnen konfigurierten HA VPN-Gateway-Schnittstelle zugeordnet ist.REGION
: die Region, in der Sie das HA VPN-Gateway bereitgestellt haben.
Der Befehl sollte in etwa wie das folgende Beispiel aussehen:
gcloud compute vpn-tunnels describe azure-tunnel-2 --region=us-central1
Die erwartete Ausgabe für den Tunnel sollte in etwa so aussehen:
creationTimestamp: '2022-09-28T17:13:21.592-07:00' description: '' detailedStatus: Tunnel is up and running. id: '5665972275117479944' ikeVersion: 2 kind: compute#vpnTunnel localTrafficSelector: - 0.0.0.0/0 name: azure-tunnel-2 peerExternalGateway: https://www.googleapis.com/compute/v1/projects/PROJECT-ID/global/externalVpnGateways/azure-peer-gw peerExternalGatewayInterface: 1 peerIp: 203.0.113.2 region: https://www.googleapis.com/compute/v1/projects/PROJECT-ID/regions/us-central1 remoteTrafficSelector: - 0.0.0.0/0 router: https://www.googleapis.com/compute/v1/projects/PROJECT-ID/regions/us-central1/routers/cloud-router selfLink: https://www.googleapis.com/compute/v1/projects/PROJECT-ID/regions/us-central1/vpnTunnels/azure-tunnel-2 sharedSecret: '*************' sharedSecretHash: ALDZGgSMUxj8KFahMoG_L0Fz9ddd
Verbindung testen
Wenn Sie HA VPN-Verbindungen testen möchten, müssen Sie zuerst VMs auf jeder Seite des Tunnels erstellen.
Prüfen Sie als Nächstes, ob Sie in Google Cloud Firewallregeln definiert haben, die eingehenden ICMP-Traffic von den Azure-Netzwerk-Subnetzen zulassen. Wenn die VMs und Firewallregeln eingerichtet sind, können Sie die Konnektivität mit ping und die Bandbreite mit iperf testen.
Erstellen Sie Test-VMs auf jeder Seite der Tunnel, um Ping-Anfragen zu testen.
Sie müssen außerdem die Firewall des Azure-Netzwerks so konfigurieren, dass eingehender Traffic von den in Ihrer Virtual Private Cloud verwendeten Subnetz-Präfixen zugelassen wird.
Konfigurieren Sie in Google Cloud eine Firewallregel, die eingehenden ICMP-Traffic von Ihrem Azure-VPN zulässt:
gcloud compute firewall-rules create RULE_NAME \ --network NETWORK \ --direction ingress \ --action allow \ --source-ranges AZURE_VNET_RANGE \ --rules icmp \
Ersetzen Sie
AZURE_VNET_RANGE
durch den IP-Adressbereich, der Ihrem Azure VNet zugewiesen ist.Der Befehl sollte in etwa wie das folgende Beispiel aussehen:
gcloud compute firewall-rules create allow-azure-icmp \ --network google-to-azure-vpc \ --direction ingress \ --action allow \ --source-ranges 10.0.0.0/16 \ --rules icmp
Testen Sie die Verbindung mit dem Befehl ping.
Messen Sie die Bandbreite zwischen den Testmaschinen mit iperf.
Bereinigen
Löschen Sie die Google Cloud- und Azure-Ressourcen, die Sie in dieser Anleitung erstellt haben.
Google Cloud-Projekt löschen
Damit Ihrem Google Cloud-Konto die in dieser Anleitung verwendeten Ressourcen nicht in Rechnung gestellt werden, können Sie Ihr 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.
Azure-Ressourcengruppe löschen
Löschen Sie die Azure Manager-Ressourcengruppe, die Sie beim Erstellen des VNets erzeugt haben. In dieser Anleitung lautet der Name der Beispielressourcengruppe azure-to-google-resgroup
.
Weitere Informationen finden Sie unter Azure Resource Manager-Ressourcengruppe und Ressourcenlöschung.
Nächste Schritte
- Mehr über Google Cloud VPN erfahren
- Mehr über Best Practices und Referenzarchitekturen für das VPC-Design erfahren