Přidání aplikace IPv4 do protokolu IPv6 ve virtuální síti Azure pomocí PowerShellu

V tomto článku se dozvíte, jak přidat připojení IPv6 k existující aplikaci IPv4 ve virtuální síti Azure pomocí Load Balanceru úrovně Standard a veřejné IP adresy. Místní upgrade zahrnuje:

  • Adresní prostor IPv6 pro virtuální síť a podsíť
  • Load Balancer úrovně Standard s konfigurací front-endu IPv4 i IPV6
  • Virtuální počítače s síťovými kartami, které mají konfiguraci IPv4 + IPv6
  • Veřejná IP adresa IPv6, aby nástroj pro vyrovnávání zatížení měl připojení IPv6 k internetu

Azure Cloud Shell

Azure hostí interaktivní prostředí Azure Cloud Shell, které můžete používat v prohlížeči. Pro práci se službami Azure můžete v prostředí Cloud Shell použít buď Bash, nebo PowerShell. Předinstalované příkazy Cloud Shellu můžete použít ke spuštění kódu v tomto článku, aniž byste museli instalovat cokoli do místního prostředí.

Spuštění služby Azure Cloud Shell:

Možnost Příklad nebo odkaz
Vyberte Vyzkoušet v pravém horním rohu bloku kódu nebo příkazu. Výběrem možnosti Vyzkoušet se kód ani příkaz automaticky nekopíruje do Cloud Shellu. Snímek obrazovky znázorňující příklad možnosti Vyzkoušet pro Azure Cloud Shell
Přejděte na adresu https://shell.azure.com nebo výběrem tlačítka Spustit Cloud Shell otevřete Cloud Shell v prohlížeči. Tlačítko pro spuštění Azure Cloud Shellu
Zvolte tlačítko Cloud Shell v pruhu nabídky v pravém horním rohu webu Azure Portal. Snímek obrazovky znázorňující tlačítko Cloud Shell na webu Azure Portal

Použití Azure Cloud Shellu:

  1. Spusťte Cloud Shell.

  2. Výběrem tlačítka Kopírovat v bloku kódu (nebo bloku příkazů) zkopírujte kód nebo příkaz.

  3. Vložte kód nebo příkaz do relace Cloud Shellu tak, že ve Windows a Linuxu vyberete ctrl+Shift+V nebo vyberete Cmd+Shift+V v macOS.

  4. Stisknutím klávesy Enter spusťte kód nebo příkaz.

Pokud se rozhodnete nainstalovat a používat PowerShell místně, tento článek vyžaduje modul Azure PowerShell verze 6.9.0 nebo novější. Nainstalovanou verzi zjistíte spuštěním příkazu Get-Module -ListAvailable Az. Pokud potřebujete upgrade, přečtěte si téma Instalace modulu Azure PowerShell. Pokud používáte PowerShell místně, musíte také spustit Connect-AzAccount , abyste vytvořili připojení k Azure.

Požadavky

Tento článek předpokládá, že jste nasadili Load Balancer úrovně Standard, jak je popsáno v rychlém startu: Vytvoření Load Balanceru úrovně Standard – Azure PowerShell.

Načtení skupiny prostředků

Než budete moct vytvořit virtuální síť se dvěma zásobníky, musíte skupinu prostředků načíst pomocí rutiny Get-AzResourceGroup.

$rg = Get-AzResourceGroup  -ResourceGroupName "myResourceGroupSLB"

Vytvoření IP adres IPv6

Vytvořte veřejnou IPv6 adresu pomocí Rutiny New-AzPublicIpAddress pro Load Balancer úrovně Standard. Následující příklad vytvoří veřejnou IP adresu IPv6 s názvem PublicIP_v6 ve skupině prostředků myResourceGroupSLB :

$PublicIP_v6 = New-AzPublicIpAddress `
  -Name "PublicIP_v6" `
  -ResourceGroupName $rg.ResourceGroupName `
  -Location $rg.Location  `
  -Sku Standard  `
  -AllocationMethod Static `
  -IpAddressVersion IPv6

Konfigurace front-endu nástroje pro vyrovnávání zatížení

Načtěte existující konfiguraci nástroje pro vyrovnávání zatížení a pak přidejte novou IP adresu IPv6 pomocí rutiny Add-AzLoadBalancerFrontendIpConfig následujícím způsobem:

# 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

Konfigurace back-endového fondu nástroje pro vyrovnávání zatížení

Vytvořte back-endový fond v místní kopii konfigurace nástroje pro vyrovnávání zatížení a následujícím způsobem aktualizujte spuštěný nástroj pro vyrovnávání zatížení s novou konfigurací back-endového fondu:

$lb | Add-AzLoadBalancerBackendAddressPoolConfig -Name "LbBackEndPool_v6"

# Update the running load balancer with the new backend pool
$lb | Set-AzLoadBalancer

Nakonfigurovat pravidla nástroje pro vyrovnávání zatížení

Načtěte stávající konfiguraci front-endu a back-endového fondu nástroje pro vyrovnávání zatížení a přidejte nová pravidla vyrovnávání zatížení pomocí rutiny Add-AzLoadBalancerRuleConfig.

# 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

Přidání rozsahů adres IPv6

Do virtuální sítě a podsítě hostující virtuální počítače přidejte rozsahy adres IPv6 následujícím způsobem:

#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

Přidání konfigurace protokolu IPv6 do síťové karty

Nakonfigurujte všechny síťové karty virtuálních počítačů s adresou IPv6 pomocí rutiny Add-AzNetworkInterfaceIpConfig následujícím způsobem:

#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

Zobrazení virtuální sítě IPv6 se dvěma zásobníky na webu Azure Portal

Virtuální síť IPv6 se dvěma zásobníky můžete zobrazit na webu Azure Portal následujícím způsobem:

  1. Na panelu hledání portálu zadejte virtuální sítě a

  2. V okně Virtuální sítě vyberte myVNet.

  3. V části Nastavení vyberte Připojená zařízení a zobrazte připojená síťová rozhraní. Virtuální síť se dvěma zásobníky zobrazuje tři síťové karty s konfigurací IPv4 i IPv6.

    Snímek obrazovky s nastavením připojených zařízení zobrazující adresy IPv4 a IPv6 v síťových rozhraních

Vyčištění prostředků

Pokud už je nepotřebujete, můžete k odebrání skupiny prostředků, virtuálního počítače a všech souvisejících prostředků použít příkaz Remove-AzResourceGroup .

Remove-AzResourceGroup -Name MyAzureResourceGroupSLB

Další kroky

V tomto článku jste aktualizovali existující Load Balancer úrovně Standard s konfigurací front-endové IP adresy IPv4 na konfiguraci duálního zásobníku (IPv4 a IPv6). Přidali jste také konfigurace IPv6 do síťových karet virtuálních počítačů v back-endovém fondu a do virtuální sítě, která je hostuje. Další informace o podpoře protokolu IPv6 ve virtuálních sítích Azure najdete v tématu Co je IPv6 pro službu Azure Virtual Network?