Share via


使用 Azure CLI 將 IPv6 新增至 Azure 虛擬網路中的 IPv4 應用程式

本文說明如何針對 Standard Load Balancer 利用 Azure CLI,將 IPv6 位址新增至在 Azure 虛擬網路中使用 IPv4 公用 IP 位址的應用程式。 就地升級包含虛擬網路和子網路、具有 IPv4 + IPV6 前端設定的 Standard Load Balancer、具有 IPv4 + IPv6 設定之 NIC 的 VM、網路安全性群組和公用 IP。

必要條件

  • 本文需要 2.0.28 版或更新版本的 Azure CLI。 如果您是使用 Azure Cloud Shell,就已安裝最新版本。

建立 IPv6 位址

使用 az network public-ip create 為您的 Standard Load Balancer 建立公用 IPv6 位址。 下列範例會在 myResourceGroupSLB 資源群組中建立名為 PublicIP_v6 的 IPv6 公用 IP 位址:

az network public-ip create \
--name PublicIP_v6 \
--resource-group MyResourceGroupSLB \
--location EastUS \
--sku Standard \
--allocation-method static \
--version IPv6

設定 IPv6 負載平衡器前端

使用 az network lb fronted-ip create,以新的 IPv6 IP 位址設定負載平衡器,如下所示:

az network lb frontend-ip create \
--lb-name myLoadBalancer \
--name dsLbFrontEnd_v6 \
--resource-group MyResourceGroupSLB \
--public-ip-address PublicIP_v6

設定 IPv6 負載平衡器後端集區

使用 az network lb address-pool create 來建立具有 IPv6 位址的 NIC 後端集區,如下所示:

az network lb address-pool create \
--lb-name myLoadBalancer \
--name dsLbBackEndPool_v6 \
--resource-group MyResourceGroupSLB

設定 IPv6 負載平衡器規則

使用 az network lb rule create 建立 IPv6 負載平衡器規則。

az network lb rule create \
--lb-name myLoadBalancer \
--name dsLBrule_v6 \
--resource-group MyResourceGroupSLB \
--frontend-ip-name dsLbFrontEnd_v6 \
--protocol Tcp \
--frontend-port 80 \
--backend-port 80 \
--backend-pool-name dsLbBackEndPool_v6

新增 IPv6 位址範圍

將 IPv6 位址範圍新增至裝載負載平衡器的虛擬網路和子網路,如下所示:

az network vnet update \
--name myVnet  \
--resource-group MyResourceGroupSLB \
--address-prefixes  "10.0.0.0/16"  "fd00:db8:deca::/48"

az network vnet subnet update \
--vnet-name myVnet \
--name mySubnet \
--resource-group MyResourceGroupSLB \
--address-prefixes  "10.0.0.0/24"  "fd00:db8:deca:deed::/64"  

將 IPv6 設定新增至 NIC

使用 az network nic ip-config create 來設定具有 IPv6 位址的 VM NIC,如下所示:

az network nic ip-config create \
--name dsIp6Config_NIC1 \
--nic-name myNicVM1 \
--resource-group MyResourceGroupSLB \
--vnet-name myVnet \
--subnet mySubnet \
--private-ip-address-version IPv6 \
--lb-address-pools dsLbBackEndPool_v6 \
--lb-name dsLB

az network nic ip-config create \
--name dsIp6Config_NIC2 \
--nic-name myNicVM2 \
--resource-group MyResourceGroupSLB \
--vnet-name myVnet \
--subnet mySubnet \
--private-ip-address-version IPv6 \
--lb-address-pools dsLbBackEndPool_v6 \
--lb-name myLoadBalancer

az network nic ip-config create \
--name dsIp6Config_NIC3 \
--nic-name myNicVM3 \
--resource-group MyResourceGroupSLB \
--vnet-name myVnet \
--subnet mySubnet \
--private-ip-address-version IPv6 \
--lb-address-pools dsLbBackEndPool_v6 \
--lb-name myLoadBalancer

在 Azure 入口網站中檢視 IPv6 雙重堆疊虛擬網路

您可以依循下列步驟,在 Azure 入口網站中檢視 IPv6 雙重堆疊虛擬網路:

  1. 在入口網站的搜尋列中,輸入 [虛擬網路]

  2. 在 [虛擬網路] 視窗中,選取 [myVNet]

  3. 選取 [設定] 底下的 [連線裝置],以檢視連結的網路介面。 雙重堆疊虛擬網路會顯示同時具有 IPv4 和 IPv6 設定的三個 NIC。

    Screenshot of connected devices settings displaying IPv4 and IPv6 addresses on network interfaces.

清除資源

若不再需要,您可以使用 az group delete 命令來移除資源群組、VM 和所有相關資源。

 az group delete --name MyAzureResourceGroupSLB

下一步

在本文中,您已將具有 IPv4 前端 IP 設定的現有 Standard Load Balancer 更新為雙重堆疊 (IPv4 和 IPv6) 設定。 您也已將 IPv6 設定新增至後端集區中 VM 的 NIC。 若要深入了解 Azure 虛擬網路中的 IPv6 支援,請參閱什麼是 Azure 虛擬網路的 IPv6?