Udostępnij za pośrednictwem


Dodawanie aplikacji IPv4 do protokołu IPv6 w sieci wirtualnej platformy Azure przy użyciu programu PowerShell

W tym artykule pokazano, jak dodać łączność IPv6 z istniejącą aplikacją IPv4 w sieci wirtualnej platformy Azure przy użyciu usługa Load Balancer w warstwie Standardowa i publicznego adresu IP. Uaktualnienie w miejscu obejmuje:

  • Przestrzeń adresowa IPv6 dla sieci wirtualnej i podsieci
  • usługa Load Balancer w warstwie Standardowa z konfiguracjami frontonu IPv4 i IPV6
  • Maszyny wirtualne z kartami sieciowymi, które mają konfigurację IPv4 i IPv6
  • Publiczny adres IP IPv6, dzięki czemu moduł równoważenia obciążenia ma łączność IPv6 z Internetem

Azure Cloud Shell

Na platforma Azure hostowane jest Azure Cloud Shell, interaktywne środowisko powłoki, z którego można korzystać w przeglądarce. Do pracy z usługami platformy Azure można używać programu Bash lub PowerShell w środowisku Cloud Shell. Aby uruchomić kod w tym artykule, możesz użyć wstępnie zainstalowanych poleceń usługi Cloud Shell bez konieczności instalowania niczego w środowisku lokalnym.

Aby uruchomić środowisko Azure Cloud Shell:

Opcja Przykład/link
Wybierz pozycję Wypróbuj w prawym górnym rogu bloku kodu lub polecenia. Wybranie pozycji Wypróbuj nie powoduje automatycznego skopiowania kodu lub polecenia do usługi Cloud Shell. Zrzut ekranu przedstawiający przykład narzędzia Try It dla usługi Azure Cloud Shell.
Przejdź do witryny https://shell.azure.com lub wybierz przycisk Uruchom Cloud Shell, aby otworzyć środowisko Cloud Shell w przeglądarce. Przycisk uruchamiania usługi Azure Cloud Shell.
Wybierz przycisk Cloud Shell na pasku menu w prawym górnym rogu witryny Azure Portal. Zrzut ekranu przedstawiający przycisk usługi Cloud Shell w witrynie Azure Portal

Aby użyć usługi Azure Cloud Shell:

  1. Uruchom usługę Cloud Shell.

  2. Wybierz przycisk Kopiuj w bloku kodu (lub bloku poleceń), aby skopiować kod lub polecenie.

  3. Wklej kod lub polecenie do sesji usługi Cloud Shell, wybierając Ctrl+Shift V w systemach Windows i Linux lub wybierając pozycję Cmd+Shift++V w systemie macOS.

  4. Wybierz Enter, aby uruchomić kod lub polecenie.

Jeśli zdecydujesz się zainstalować program PowerShell i korzystać z niego lokalnie, ten artykuł wymaga modułu Azure PowerShell w wersji 6.9.0 lub nowszej. Uruchom polecenie Get-Module -ListAvailable Az, aby dowiedzieć się, jaka wersja jest zainstalowana. Jeśli konieczne będzie uaktualnienie, zobacz Instalowanie modułu Azure PowerShell. Jeśli używasz programu PowerShell lokalnie, musisz też uruchomić polecenie Connect-AzAccount, aby utworzyć połączenie z platformą Azure.

Wymagania wstępne

W tym artykule założono, że wdrożono usługa Load Balancer w warstwie Standardowa zgodnie z opisem w przewodniku Szybki start: Tworzenie usługa Load Balancer w warstwie Standardowa — Azure PowerShell.

Pobieranie grupy zasobów

Przed utworzeniem sieci wirtualnej z podwójnym stosem należy pobrać grupę zasobów za pomocą polecenia Get-AzResourceGroup.

$rg = Get-AzResourceGroup  -ResourceGroupName "myResourceGroupSLB"

Tworzenie adresów IP IPv6

Utwórz publiczny adres IPv6 przy użyciu polecenia New-AzPublicIpAddress dla usługa Load Balancer w warstwie Standardowa. Poniższy przykład tworzy publiczny adres IP IPv6 o nazwie PublicIP_v6 w grupie zasobów myResourceGroupSLB :

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

Konfigurowanie frontonu modułu równoważenia obciążenia

Pobierz istniejącą konfigurację modułu równoważenia obciążenia, a następnie dodaj nowy adres IP IPv6 przy użyciu polecenia Add-AzLoadBalancerFrontendIpConfig w następujący sposób:

# 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

Konfigurowanie puli zaplecza modułu równoważenia obciążenia

Utwórz pulę zaplecza na lokalnej kopii konfiguracji modułu równoważenia obciążenia i zaktualizuj uruchomiony moduł równoważenia obciążenia przy użyciu nowej konfiguracji puli zaplecza w następujący sposób:

$lb | Add-AzLoadBalancerBackendAddressPoolConfig -Name "LbBackEndPool_v6"

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

Konfigurowanie reguł modułu równoważenia obciążenia

Pobierz istniejącą konfigurację frontonu modułu równoważenia obciążenia i puli zaplecza, a następnie dodaj nowe reguły równoważenia obciążenia przy użyciu polecenia 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

Dodawanie zakresów adresów IPv6

Dodaj zakresy adresów IPv6 do sieci wirtualnej i podsieci obsługującej maszyny wirtualne w następujący sposób:

#Add IPv6 ranges to the VNET and subnet
#Retrieve 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

Dodawanie konfiguracji protokołu IPv6 do karty sieciowej

Skonfiguruj wszystkie karty sieciowe maszyny wirtualnej przy użyciu adresu IPv6 przy użyciu polecenia Add-AzNetworkInterfaceIpConfig w następujący sposób:

#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

Wyświetlanie sieci wirtualnej z podwójnym stosem IPv6 w witrynie Azure Portal

Sieć wirtualną IPv6 z podwójnym stosem można wyświetlić w witrynie Azure Portal w następujący sposób:

  1. Na pasku wyszukiwania portalu wprowadź sieci wirtualne i

  2. W oknie Sieci wirtualne wybierz pozycję myVNet.

  3. Wybierz pozycję Połączone urządzenia w obszarze Ustawienia , aby wyświetlić dołączone interfejsy sieciowe. Sieć wirtualna z podwójnym stosem przedstawia trzy karty sieciowe z konfiguracjami IPv4 i IPv6.

    Zrzut ekranu przedstawiający ustawienia połączonych urządzeń z adresami IPv4 i IPv6 w interfejsach sieciowych.

Czyszczenie zasobów

Gdy grupa zasobów, maszyna wirtualna i wszystkie pokrewne zasoby nie będą już potrzebne, można je usunąć za pomocą polecenia Remove-AzResourceGroup.

Remove-AzResourceGroup -Name MyAzureResourceGroupSLB

Następne kroki

W tym artykule zaktualizowano istniejącą usługa Load Balancer w warstwie Standardowa przy użyciu konfiguracji adresu IP frontonu IPv4 do konfiguracji podwójnego stosu (IPv4 i IPv6). Dodano również konfiguracje IPv6 do kart sieciowych maszyn wirtualnych w puli zaplecza i do sieci wirtualnej, która je hostuje. Aby dowiedzieć się więcej o obsłudze protokołu IPv6 w sieciach wirtualnych platformy Azure, zobacz Co to jest protokół IPv6 dla usługi Azure Virtual Network?