Eine IPv4-Anwendung zu IPv6 in einem virtuellen Azure-Netzwerk mithilfe von PowerShell hinzufügen
Dieser Artikel zeigt Ihnen, wie Sie einer vorhandenen IPv4-Anwendung IPv6-Konnektivität in einem virtuellen Azure-Netzwerk mit einem Load Balancer Standard und öffentlicher IP-Adresse hinzufügen. Das direkte Upgrade umfasst Folgendes:
- IPv6-Adressraum für das virtuelle Netzwerk und das Subnetz
- Load Balancer Standard mit IPv4- und IPV6-Front-End-Konfigurationen
- Virtuelle Computer mit NICs, die sowohl eine IPv4- als auch eine IPv6-Konfiguration besitzen
- Öffentliche IPv6-IP-Adresse, sodass das Lastenausgleichsmodul über eine internetfähige IPv6-Konnektivität verfügt.
Azure Cloud Shell
Azure hostet Azure Cloud Shell, eine interaktive Shell-Umgebung, die Sie über Ihren Browser nutzen können. Sie können entweder Bash oder PowerShell mit Cloud Shell verwenden, um mit Azure-Diensten zu arbeiten. Sie können die vorinstallierten Befehle von Cloud Shell verwenden, um den Code in diesem Artikel auszuführen, ohne etwas in Ihrer lokalen Umgebung installieren zu müssen.
Starten von Azure Cloud Shell:
Option | Beispiel/Link |
---|---|
Wählen Sie rechts oben in einem Code- oder Befehlsblock die Option Ausprobieren aus. Durch die Auswahl von Ausprobieren wird der Code oder Befehl nicht automatisch in Cloud Shell kopiert. | |
Rufen Sie https://shell.azure.com auf, oder klicken Sie auf die Schaltfläche Cloud Shell starten, um Cloud Shell im Browser zu öffnen. | |
Wählen Sie im Azure-Portal rechts oben im Menü die Schaltfläche Cloud Shell aus. |
So verwenden Sie Azure Cloud Shell:
Starten Sie Cloud Shell.
Wählen Sie die Schaltfläche Kopieren für einen Codeblock (oder Befehlsblock) aus, um den Code oder Befehl zu kopieren.
Fügen Sie den Code oder Befehl mit STRG+UMSCHALT+V unter Windows und Linux oder CMD+UMSCHALT+V unter macOS in die Cloud Shell-Sitzung ein.
Drücken Sie die EINGABETASTE, um den Code oder Befehl auszuführen.
Wenn Sie PowerShell lokal installieren und verwenden möchten, müssen Sie für diesen Artikel mindestens Version 6.9.0 des Azure PowerShell-Moduls verwenden. Führen Sie Get-Module -ListAvailable Az
aus, um die installierte Version zu ermitteln. Wenn Sie ein Upgrade ausführen müssen, finden Sie unter Installieren des Azure PowerShell-Moduls Informationen dazu. Wenn Sie PowerShell lokal ausführen, müssen Sie auch Connect-AzAccount
ausführen, um eine Verbindung mit Azure herzustellen.
Voraussetzungen
In diesem Artikel wird davon ausgegangen, dass Sie eine Load Balancer Standard-Instanz wie unter Schnellstart: Erstellen einer Load Balancer Standard-Instanz: Azure PowerShell beschrieben bereitgestellt haben.
Abrufen der Ressourcengruppe
Bevor Sie Ihr virtuelles Dual Stack-Netzwerk erstellen können, müssen Sie mit Get-AzResourceGroup eine Ressourcengruppe abrufen.
$rg = Get-AzResourceGroup -ResourceGroupName "myResourceGroupSLB"
Erstellen von IPv6-Adressen
Erstellen Sie mit New-AzPublicIpAddress eine öffentliche IPv6-Adresse für Ihre Load Balancer Standard-Instanz. Im folgenden Beispiel wird in der Ressourcengruppe myResourceGroupSLB eine öffentliche IPv6-Adresse mit dem Namen PublicIP_v6 erstellt:
$PublicIP_v6 = New-AzPublicIpAddress `
-Name "PublicIP_v6" `
-ResourceGroupName $rg.ResourceGroupName `
-Location $rg.Location `
-Sku Standard `
-AllocationMethod Static `
-IpAddressVersion IPv6
Konfigurieren des Load Balancer-Front-Ends
Rufen Sie die vorhandene Load Balancer-Konfiguration ab, und fügen Sie die neue IPv6-Adresse hinzu, indem Sie Add-AzLoadBalancerFrontendIpConfig wie folgt verwenden:
# Retrieve the load balancer configuration
$lb = Get-AzLoadBalancer -ResourceGroupName $rg.ResourceGroupName -Name "MyLoadBalancer"
# Add IPv6 components to the local copy of the load balancer configuration
$lb | Add-AzLoadBalancerFrontendIpConfig `
-Name "dsLbFrontEnd_v6" `
-PublicIpAddress $PublicIP_v6
#Update the running load balancer with the new frontend
$lb | Set-AzLoadBalancer
Konfigurieren des Back-End-Pools für die Load Balancer-Instanz
Erstellen Sie den Back-End-Pool in der lokalen Kopie der Load Balancer-Konfiguration, und aktualisieren Sie die aktuell ausgeführte Load Balancer-Instanz mit der neuen Konfiguration des Back-End-Pools wie folgt:
$lb | Add-AzLoadBalancerBackendAddressPoolConfig -Name "LbBackEndPool_v6"
# Update the running load balancer with the new backend pool
$lb | Set-AzLoadBalancer
Konfigurieren von Load Balancer-Regeln
Rufen Sie die vorhandene Konfiguration des Load Balancer-Front-Ends und des Back-End-Pools ab, und fügen Sie dann mithilfe von Add-AzLoadBalancerRuleConfig neue Lastenausgleichsregeln hinzu.
# Retrieve the updated (live) versions of the frontend and backend pool
$frontendIPv6 = Get-AzLoadBalancerFrontendIpConfig -Name "dsLbFrontEnd_v6" -LoadBalancer $lb
$backendPoolv6 = Get-AzLoadBalancerBackendAddressPoolConfig -Name "LbBackEndPool_v6" -LoadBalancer $lb
# Create new LB rule with the frontend and backend
$lb | Add-AzLoadBalancerRuleConfig `
-Name "dsLBrule_v6" `
-FrontendIpConfiguration $frontendIPv6 `
-BackendAddressPool $backendPoolv6 `
-Protocol Tcp `
-FrontendPort 80 `
-BackendPort 80
#Finalize all the load balancer updates on the running load balancer
$lb | Set-AzLoadBalancer
Hinzufügen von IPv6-Adressbereichen
Fügen Sie dem virtuellen Netzwerk und Subnetz, die die virtuellen Computer hosten, IPv6-Adressbereiche wie folgt hinzu:
#Add IPv6 ranges to the VNET and subnet
#Retreive the VNET object
$vnet = Get-AzVirtualNetwork -ResourceGroupName $rg.ResourceGroupName -Name "myVnet"
#Add IPv6 prefix to the VNET
$vnet.addressspace.addressprefixes.add("fd00:db8:deca::/48")
#Update the running VNET
$vnet | Set-AzVirtualNetwork
#Retrieve the subnet object from the local copy of the VNET
$subnet= $vnet.subnets[0]
#Add IPv6 prefix to the Subnet (subnet of the VNET prefix, of course)
$subnet.addressprefix.add("fd00:db8:deca::/64")
#Update the running VNET with the new subnet configuration
$vnet | Set-AzVirtualNetwork
Hinzufügen der IPv6-Konfiguration zur NIC
Konfigurieren Sie alle VM-NICs mit einer IPv6-Adresse, indem Sie Add-AzNetworkInterfaceIpConfig wie folgt verwenden:
#Retrieve the NIC objects
$NIC_1 = Get-AzNetworkInterface -Name "myNic1" -ResourceGroupName $rg.ResourceGroupName
$NIC_2 = Get-AzNetworkInterface -Name "myNic2" -ResourceGroupName $rg.ResourceGroupName
$NIC_3 = Get-AzNetworkInterface -Name "myNic3" -ResourceGroupName $rg.ResourceGroupName
#Add an IPv6 IPconfig to NIC_1 and update the NIC on the running VM
$NIC_1 | Add-AzNetworkInterfaceIpConfig -Name MyIPv6Config -Subnet $vnet.Subnets[0] -PrivateIpAddressVersion IPv6 -LoadBalancerBackendAddressPool $backendPoolv6
$NIC_1 | Set-AzNetworkInterface
#Add an IPv6 IPconfig to NIC_2 and update the NIC on the running VM
$NIC_2 | Add-AzNetworkInterfaceIpConfig -Name MyIPv6Config -Subnet $vnet.Subnets[0] -PrivateIpAddressVersion IPv6 -LoadBalancerBackendAddressPool $backendPoolv6
$NIC_2 | Set-AzNetworkInterface
#Add an IPv6 IPconfig to NIC_3 and update the NIC on the running VM
$NIC_3 | Add-AzNetworkInterfaceIpConfig -Name MyIPv6Config -Subnet $vnet.Subnets[0] -PrivateIpAddressVersion IPv6 -LoadBalancerBackendAddressPool $backendPoolv6
$NIC_3 | Set-AzNetworkInterface
Anzeigen des virtuellen IPv6-Dual Stack-Netzwerks im Azure-Portal
Sie können das virtuelle IPv6-Dual Stack-Netzwerk im Azure-Portal wie folgt anzeigen:
Geben Sie in der Suchleiste des Portals virtuelle Netzwerke ein und
Wählen Sie im Fenster Virtuelle Netzwerke myVNet aus.
Wählen Sie Verbundene Geräte unter Einstellungen aus, um die angefügten Netzwerkschnittstellen anzuzeigen. Das virtuelle Dual-Stack-Netzwerk zeigt die drei NICs sowohl mit IPv4- als auch mit IPv6-Konfigurationen.
Bereinigen von Ressourcen
Wenn Ressourcengruppe, virtueller Computer und alle zugehörigen Ressourcen nicht mehr benötigt werden, können Sie sie mit dem Befehl Remove-AzResourceGroup entfernen.
Remove-AzResourceGroup -Name MyAzureResourceGroupSLB
Nächste Schritte
In diesem Artikel haben Sie eine vorhandene Load Balancer Standard-Instanz mit einer IPv4-Front-End-Konfiguration in eine Dual Stack-Konfiguration (IPv4 und IPv6) aktualisiert. Außerdem haben Sie den NICs der VMs im Back-End-Pool und dem virtuellen Netzwerk, dass diese hostet, IPv6-Konfigurationen hinzugefügt. Weitere Informationen zur IPv6-Unterstützung in virtuellen Azure-Netzwerken finden Sie unter Was ist IPv6 für Azure Virtual Network?