使用 Azure CLI 將 IPv6 新增至 Azure 虛擬網路中的 IPv4 應用程式
本文說明如何針對 Standard Load Balancer 利用 Azure CLI,將 IPv6 位址新增至在 Azure 虛擬網路中使用 IPv4 公用 IP 位址的應用程式。 就地升級包含虛擬網路和子網路、具有 IPv4 + IPV6 前端設定的 Standard Load Balancer、具有 IPv4 + IPv6 設定之 NIC 的 VM、網路安全性群組和公用 IP。
必要條件
- 本文假設您已部署 Standard Load Balancer,如 快速入門:建立 Standard Load Balancer - Azure CLI中所述。
在 Azure Cloud Shell 中使用 Bash 環境。 如需詳細資訊,請參閱 Azure Cloud Shell 中的 Bash 快速入門。
若要在本地執行 CLI 參考命令,請安裝 Azure CLI。 若您在 Windows 或 macOS 上執行,請考慮在 Docker 容器中執行 Azure CLI。 如需詳細資訊,請參閱〈如何在 Docker 容器中執行 Azure CLI〉。
如果您使用的是本機安裝,請使用 az login 命令,透過 Azure CLI 來登入。 請遵循您終端機上顯示的步驟,完成驗證程序。 如需其他登入選項,請參閱使用 Azure CLI 登入。
出現提示時,請在第一次使用時安裝 Azure CLI 延伸模組。 如需擴充功能詳細資訊,請參閱使用 Azure CLI 擴充功能。
執行 az version 以尋找已安裝的版本和相依程式庫。 若要升級至最新版本,請執行 az upgrade。
- 本文需要 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 雙堆疊虛擬網路,如下所示:
在入口網站的搜尋列中,輸入 [虛擬網路] 並
在 [虛擬網路] 視窗中,選取 [myVNet]。
選取 [設定] 底下的 [連線裝置],以檢視連結的網路介面。 雙重堆疊虛擬網路會顯示同時具有 IPv4 和 IPv6 設定的三個 NIC。
清除資源
若不再需要,您可以使用 az group delete 命令來移除資源群組、VM 和所有相關資源。
az group delete --name MyAzureResourceGroupSLB
下一步
在本文中,您已將具有 IPv4 前端 IP 設定的現有 Standard Load Balancer 更新為雙重堆疊 (IPv4 和 IPv6) 設定。 您也已將 IPv6 設定新增至後端集區中 VM 的 NIC。 若要深入了解 Azure 虛擬網路中的 IPv6 支援,請參閱什麼是 Azure 虛擬網路的 IPv6?