Übung: Erstellen eines Site-to-Site-VPN-Gateways mit Azure CLI-Befehlen
Sie können nun Ihr Site-to-Site-VPN-Gateway vervollständigen, indem Sie die öffentlichen IP-Adressen, die virtuellen Netzwerkgateways und die Verbindungen erstellen. Wie Sie wissen, haben Sie beim Erstellen Ihrer lokalen Netzwerkgateways Platzhalter für die öffentlichen IP-Adressen verwendet. Daher besteht eine Ihrer Aufgaben nun darin, diese Gateways mit den tatsächlichen öffentlichen IP-Adressen zu aktualisieren, die Ihren virtuellen Netzwerkgateways zugewiesen sind.
Im Idealfall werden die öffentlichen IP-Adressen und die virtuellen Netzwerkgateways vor den lokalen Netzwerkgateways erstellt. In dieser Übung erfahren Sie, wie Sie die lokalen Netzwerkgateways aktualisieren. Dieselben Befehle können Sie verwenden, um jedes Konfigurationselement in den lokalen Netzwerkgateways zu aktualisieren, z.B. die Adressräume von Remotenetzwerken.
Erstellen des VPN-Gateways auf Azure-Seite
Zuerst erstellen Sie das VPN-Gateway für das Azure-Ende der Verbindung. Die Erstellung eines Gateways für das virtuelle Netzwerk kann bis zu 45 Minuten dauern. Um Zeit zu sparen, verwenden Sie Azure CLI-Befehle mit dem --no-wait
-Parameter. Dieser Parameter ermöglicht Ihnen, die beiden virtuellen Netzwerkgateways gleichzeitig zu erstellen, um die zum Erstellen dieser Ressourcen erforderliche Gesamtzeit zu minimieren.
Führen Sie den folgenden Befehl in Cloud Shell aus, um die öffentliche IP-Adresse PIP-VNG-Azure-VNet-1 zu erstellen.
az network public-ip create \ --resource-group <rgn>[sandbox resource group name]</rgn> \ --name PIP-VNG-Azure-VNet-1 \ --allocation-method Static
Führen Sie den folgenden Befehl in Cloud Shell aus, um das virtuelle Netzwerk VNG-Azure-VNet-1 zu erstellen.
az network vnet create \ --resource-group <rgn>[sandbox resource group name]</rgn> \ --name VNG-Azure-VNet-1 \ --subnet-name GatewaySubnet
Führen Sie den folgenden Befehl in Cloud Shell aus, um das virtuelle Netzwerkgateway VNG-Azure-VNet-1 zu erstellen.
az network vnet-gateway create \ --resource-group <rgn>[sandbox resource group name]</rgn> \ --name VNG-Azure-VNet-1 \ --public-ip-addresses PIP-VNG-Azure-VNet-1 \ --vnet VNG-Azure-VNet-1 \ --gateway-type Vpn \ --vpn-type RouteBased \ --sku VpnGw1 \ --no-wait
Erstellen des lokalen VPN-Gateways
Im nächsten Schritt erstellen Sie ein VPN-Gateway, um ein lokales VPN-Gerät zu simulieren.
Führen Sie den folgenden Befehl in Cloud Shell aus, um die öffentliche IP-Adresse PIP-VNG-HQ-Network zu erstellen.
az network public-ip create \ --resource-group <rgn>[sandbox resource group name]</rgn> \ --name PIP-VNG-HQ-Network \ --allocation-method Static
Führen Sie den folgenden Befehl in Cloud Shell aus, um das virtuelle Netzwerk VNG-HQ-Network zu erstellen.
az network vnet create \ --resource-group <rgn>[sandbox resource group name]</rgn> \ --name VNG-HQ-Network \ --subnet-name GatewaySubnet
Führen Sie den folgenden Befehl in Cloud Shell aus, um das virtuelle Netzwerkgateway VNG-HQ-Network zu erstellen.
az network vnet-gateway create \ --resource-group <rgn>[sandbox resource group name]</rgn> \ --name VNG-HQ-Network \ --public-ip-addresses PIP-VNG-HQ-Network \ --vnet VNG-HQ-Network \ --gateway-type Vpn \ --vpn-type RouteBased \ --sku VpnGw1 \ --no-wait
Die Gatewayerstellung dauert ungefähr 30 Minuten oder länger. Führen Sie den folgenden Befehl aus, um den Fortschritt der Gatewayerstellung zu überwachen. Der Linux-Befehl
watch
wird verwendet, um denaz network vnet-gateway list
-Befehl regelmäßig auszuführen, damit Sie den Fortschritt überwachen können.watch -d -n 5 az network vnet-gateway list \ --resource-group <rgn>[sandbox resource group name]</rgn> \ --output table
Sobald für jedes VPN-Gateway der ProvisioningState (Bereitstellungsstatus) Succeeded (Erfolgreich) angezeigt wird, können Sie fortfahren. Drücken Sie STRG+C, um den Befehl nach der Erstellung des Gateways abzubrechen.
ActiveActive EnableBgp EnablePrivateIpAddress GatewayType Location Name ProvisioningState ResourceGroup ResourceGuid VpnType -------------- ----------- ------------------------ ------------- -------------- ---------------- ------------------- ----------------------------- ------------------------------------ ---------- False False False Vpn southcentralus VNG-Azure-VNet-1 Succeeded <rgn>[sandbox resource group name]</rgn> 48dc714e-a700-42ad-810f-a8163ee8e001 RouteBased False False False Vpn southcentralus VNG-HQ-Network Succeeded <rgn>[sandbox resource group name]</rgn> 49b3041d-e878-40d9-a135-58e0ecb7e48b RouteBased
Aktualisieren der IP-Adressen in den lokalen Netzwerkgateways
Wichtig
Ihre virtuellen Netzwerkgateways müssen erfolgreich bereitgestellt sein, bevor Sie mit der nächsten Übung beginnen. Es kann bis zu 30 Minuten oder länger dauern, bis ein Gateway abgeschlossen ist. Wenn für „ProvisioningState“ noch nicht „Succeeded“ anzeigt wird, müssen Sie warten.
In diesem Abschnitt aktualisieren Sie die Remotegateway-IP-Adressverweise, die in den lokalen Netzwerkgateways definiert sind. Gateways des lokalen Netzwerks können erst aktualisiert werden, wenn Sie die VPN-Gateways erstellt und ihnen eine IPv4-Adresse zugewiesen und zugeordnet haben.
Verwenden Sie den folgenden Azure CLI-Befehl, um zu überprüfen, ob beide Gateways des virtuellen Netzwerks erstellt wurden. Als Anfangsstatus wird Updating angezeigt. Es soll sowohl für „VNG-Azure-VNet-1“ als auch „VNG-HQ-Network“ der Status Succeeded angezeigt werden.
az network vnet-gateway list \ --resource-group <rgn>[sandbox resource group name]</rgn> \ --output table
Name Location GatewayType VpnType VpnGatewayGeneration EnableBgp EnablePrivateIpAddress Active ResourceGuid ProvisioningState ResourceGroup ---------------- ---------- ------------- ---------- ---------------------- ----------- ------------------------ -------- ------------------------------------ ------------------- ------------------------------------------ VNG-Azure-VNet-1 westus Vpn RouteBased Generation1 False False False 9a2e60e6-da57-4274-99fd-e1f8b2c0326d Succeeded learn-cfbcca66-16fd-423e-b688-66f242d8f09e VNG-HQ-Network westus Vpn RouteBased Generation1 False False False c36430ed-e6c0-4230-ae40-cf937a102bcd Succeeded learn-cfbcca66-16fd-423e-b688-66f242d8f09e
Warten Sie, bis die Listen der Gateways erfolgreich zurückgegeben wurden. Außerdem sei daran erinnert, dass die lokalen Netzwerkgatewayressourcen die Einstellungen des Remotegateways und -netzwerks definieren, nach denen sie benannt sind. Beispielsweise enthält das lokale Netzwerkgateway LNG-Azure-VNet-1 Informationen wie z. B. die IP-Adresse und Netzwerke für Azure-VNet-1.
Führen Sie den folgenden Befehl in Cloud Shell aus, um die IPv4-Adresse abzurufen, die PIP-VNG-Azure-VNet-1 zugewiesen ist, und speichern Sie sie in einer Variablen.
PIPVNGAZUREVNET1=$(az network public-ip show \ --resource-group <rgn>[sandbox resource group name]</rgn> \ --name PIP-VNG-Azure-VNet-1 \ --query "[ipAddress]" \ --output tsv)
Führen Sie den folgenden Befehl in Cloud Shell aus, um das lokale Netzwerkgateway LNG-Azure-VNet-1 so zu aktualisieren, dass es auf die öffentliche IP-Adresse verweist, die dem virtuellen Netzwerkgateway VNG-Azure-VNet-1 zugewiesen ist.
az network local-gateway update \ --resource-group <rgn>[sandbox resource group name]</rgn> \ --name LNG-Azure-VNet-1 \ --gateway-ip-address $PIPVNGAZUREVNET1
Führen Sie den folgenden Befehl in Cloud Shell aus, um die IPv4-Adresse abzurufen, die PIP-VNG-HQ-Network zugewiesen ist, und speichern Sie sie in einer Variablen.
PIPVNGHQNETWORK=$(az network public-ip show \ --resource-group <rgn>[sandbox resource group name]</rgn> \ --name PIP-VNG-HQ-Network \ --query "[ipAddress]" \ --output tsv)
Führen Sie den folgenden Befehl in Cloud Shell aus, um das lokale Netzwerkgateway LNG-HQ-Network so zu aktualisieren, dass es auf die öffentliche IP-Adresse verweist, die dem virtuellen Netzwerkgateway VNG-HQ-Network zugewiesen ist.
az network local-gateway update \ --resource-group <rgn>[sandbox resource group name]</rgn> \ --name LNG-HQ-Network \ --gateway-ip-address $PIPVNGHQNETWORK
Erstellen der Verbindungen
Sie schließen die Konfiguration ab, indem Sie die Verbindungen zwischen jedem VPN-Gateway und dem lokalen Netzwerkgateway herstellen, das die Verweise auf die öffentlichen IP-Adressen für das Remotenetzwerk dieses Gateways enthält.
Erstellen Sie den gemeinsam verwendeten Schlüssel (shared key), der für die Verbindungen verwendet werden soll. Ersetzen Sie im folgenden Befehl
<shared key>
durch eine Textzeichenfolge, die für den vorinstallierten IPSec-Schlüssel verwendet werden soll. Der vorinstallierte Schlüssel ist eine Zeichenfolge mit max. 128 druckbaren ASCII-Zeichen. Es dürfen keine Sonderzeichen wie Bindestriche oder Tilden enthalten sein. Sie verwenden diesen vorinstallierten Schlüssel für beide Verbindungen.Hinweis
In diesem Beispiel eignen sich beliebige Zahlen für einen gemeinsam genutzten Schlüssel: SHAREDKEY=123456789. Es wird empfohlen, in Produktionsumgebungen eine Zeichenfolge druckbarer ASCII-Zeichen mit einer maximalen Länge von 128 Zeichen und ohne Sonderzeichen wie Bindestriche oder Tilden zu verwenden.
SHAREDKEY=<shared key>
Beachten Sie, dass LNG-HQ-Network einen Verweis auf die IP-Adresse in Ihrem simulierten lokalen VPN-Gerät enthält. Führen Sie den folgenden Befehl in Cloud Shell aus, um eine Verbindung von VNG-Azure-VNet-1 zu LNG-HQ-Network herzustellen.
az network vpn-connection create \ --resource-group <rgn>[sandbox resource group name]</rgn> \ --name Azure-VNet-1-To-HQ-Network \ --vnet-gateway1 VNG-Azure-VNet-1 \ --shared-key $SHAREDKEY \ --local-gateway2 LNG-HQ-Network
Beachten Sie, dass LNG-Azure-VNet-1 einen Verweis auf die öffentliche IP-Adresse enthält, die dem VPN-Gateway VNG-Azure-VNet-1 zugeordnet ist. Diese Verbindung würde normalerweise von Ihrem lokalen Gerät hergestellt. Führen Sie den folgenden Befehl in Cloud Shell aus, um eine Verbindung von VNG-HQ-Network zu LNG-Azure-VNet-1 herzustellen.
az network vpn-connection create \ --resource-group <rgn>[sandbox resource group name]</rgn> \ --name HQ-Network-To-Azure-VNet-1 \ --vnet-gateway1 VNG-HQ-Network \ --shared-key $SHAREDKEY \ --local-gateway2 LNG-Azure-VNet-1
Sie haben nun die Konfiguration der Site-to-Site-Verbindung abgeschlossen. Dies kann einige Minuten dauern, aber die Tunnel sollten eine Verbindung automatisch herstellen und aktiv werden.
Überprüfungsschritte
Vergewissern Sie sich, dass die VPN-Tunnel verbunden sind.
Führen Sie den folgenden Befehl aus, um sich zu vergewissern, dass Azure-VNet-1-To-HQ-Network verbunden ist.
az network vpn-connection show \ --resource-group <rgn>[sandbox resource group name]</rgn> \ --name Azure-VNet-1-To-HQ-Network \ --output table \ --query '{Name:name,ConnectionStatus:connectionStatus}'
Es sollte eine Ausgabe wie im Folgenden angezeigt werden, die angibt, dass die Verbindung erfolgreich hergestellt wurde. Wenn der
ConnectionStatus
alsConnecting
oderUnknown
angezeigt wird, warten Sie eine oder zwei Minuten, bevor Sie den Befehl erneut ausführen. Es kann ein paar Minuten dauern, bis die Verbindungen vollständig geschlossen sind.Name ConnectionStatus -------------------------- ------------------ Azure-VNet-1-To-HQ-Network Connected
Die Site-to-Site-Konfiguration ist nun abgeschlossen. Ihre endgültige Topologie, einschließlich der Subnetze und Verbindungen mit logischen Verbindungspunkten, ist in der folgenden Abbildung dargestellt. Nachdem die VPN-Verbindungen erfolgreich hergestellt wurden, können virtuelle Computer, die in den Subnetzen Dienste und Anwendungen bereitgestellt wurden, miteinander kommunizieren.