使用 PowerShell 建立和修改 ExpressRoute 線路的對等互連
本文將協助您使用 PowerShell,在 Resource Manager 部署模型中建立和管理 ExpressRoute 線路的路由設定。 您還可以檢查狀態、更新,或是刪除與取消佈建 ExpressRoute 線路的對等互連。 如果您想要對線路使用不同的方法,可選取下列清單中的文章:
這些指示只適用於由提供第 2 層連線服務的服務提供者所建立的線路。 如果您使用的服務提供者提供受控第 3 層服務 (通常是 IPVPN,如 MPLS),連線提供者會為您設定和管理網路路由。
重要
我們目前不會透過服務管理入口網站來公告服務提供者所設定的對等。 我們正努力在近期推出這項功能。 設定 BGP 對等互連之前,請洽詢您的服務提供者。
您可以針對 ExpressRoute 線路設定私人對等互連和 Microsoft 對等互連。 您可以依自己選擇的任何順序設定對等互連。 不過,您必須確定您逐一完成各個對等互連的設定。 如需路由網域和對等互連的詳細資訊,請參閱 ExpressRoute 路由網域。
在本教學課程中,您會了解如何:
- 設定、更新及刪除線路的 Microsoft 對等互連
- 設定、更新及刪除線路的 Azure 私人對等互連
必要條件
- 開始設定之前,請確定您已檢閱下列頁面:
- 您必須具有作用中的 ExpressRoute 線路。 繼續之前,請遵循指示來建立 ExpressRoute 線路,並由您的連線提供者來啟用該線路。 ExpressRoute 線路必須處於已佈建和已啟用狀態,您才能執行本文中的 Cmdlet。
Azure Cloud Shell
Azure Cloud Shell 是裝載於 Azure 中的互動式殼層環境,可在瀏覽器中使用。 您可以使用 Bash 或 PowerShell 搭配 Cloud Shell,與 Azure 服務共同使用。 您可以使用 Cloud Shell 預先安裝的命令,執行本文提到的程式碼,而不必在本機環境上安裝任何工具。
要啟動 Azure Cloud Shell:
選項 | 範例/連結 |
---|---|
選取程式碼或命令區塊右上角的 [試試看]。 選取 [試試看] 並不會自動將程式碼或命令複製到 Cloud Shell 中。 | |
請前往 https://shell.azure.com,或選取 [啟動 Cloud Shell] 按鈕,在瀏覽器中開啟 Cloud Shell。 | |
選取 Azure 入口網站右上方功能表列上的 [Cloud Shell] 按鈕。 |
若要使用 Azure Cloud Shell:
啟動 Cloud Shell。
選取程式碼區塊 (或命令區塊) 上的 [複製] 按鈕以複製程式碼或命令。
透過在 Windows 和 Linux 上選取 Ctrl+Shift+V;或在 macOS 上選取 Cmd+Shift+V,將程式碼或命令貼到 Cloud Shell 工作階段中。
選取 Enter 鍵執行程式碼或命令。
Microsoft 對等互連
本節將協助您為 ExpressRoute 線路建立、取得、更新和刪除 Microsoft 對等互連設定。
重要
在 2017 年 8 月 1 日以前設定之 ExpressRoute 線路的 Microsoft 對等互連,會透過 Microsoft 對等互連公告所有服務首碼,即使未定義路由篩選也一樣。 在 2017 年 8 月 1 日當日或之後設定之 ExpressRoute 線路的 Microsoft 對等互連,不會公告任何前置詞,直到路由篩選連結至線路為止。 如需詳細資訊,請參閱設定 Microsoft 對等互連的路由篩選。
建立 Microsoft 對等
登入並選取訂用帳戶。
如果您已於本機安裝 PowerShell,請登入。 如果您是使用 Azure Cloud Shell,則可以跳過此步驟。
Connect-AzAccount
選取您想要建立 ExpressRoute 線路的訂用帳戶。
Select-AzSubscription -SubscriptionId "<subscription ID>"
建立 ExpressRoute 線路。
請遵循指示建立 ExpressRoute 線路 ,並由連線提供者佈建它。 若您的連線提供者提供受控第 3 層服務,您可以要求連線提供者為您啟用 Microsoft 對等互連。 您不需要遵循後續幾節所列的指示。 不過,如果您的連線提供者不管理路由,請在建立線路之後繼續使用後續步驟進行設定。
檢查 ExpressRoute 線路,以確定已佈建且已啟用線路。 請使用下列範例:
Get-AzExpressRouteCircuit -Name "ExpressRouteARMCircuit" -ResourceGroupName "ExpressRouteResourceGroup"
回應如下列範例所示:
Name : ExpressRouteARMCircuit ResourceGroupName : ExpressRouteResourceGroup Location : westus Id : /subscriptions/***************************/resourceGroups/ExpressRouteResourceGroup/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuit Etag : W/"################################" ProvisioningState : Succeeded Sku : { "Name": "Standard_MeteredData", "Tier": "Standard", "Family": "MeteredData" } CircuitProvisioningState : Enabled ServiceProviderProvisioningState : Provisioned ServiceProviderNotes : ServiceProviderProperties : { "ServiceProviderName": "Equinix", "PeeringLocation": "Silicon Valley", "BandwidthInMbps": 200 } ServiceKey : ************************************** Peerings : []
設定線路的 Microsoft 對等。 繼續之前,請確定您擁有下列資訊。
- 您所擁有、且已在 RIR/IRR 中註冊的一對子網路。 一個子網路將用於主要連結,另一個將用於次要連結。 從每個子網中,您會將第一個可用 IP 位址指派給路由器,因為 Microsoft 會將第二個可用 IP 用於其路由器。 這對子網路有三個選項可供使用:
- IPv4:兩個 /30 子網路。 這必須是有效的公用 IPv4 首碼。
- IPv6:兩個 /126 子網路。 這些必須是有效的公用 IPv6 首碼。
- 兩者:兩個 /30 子網路和兩個 /126 子網路。
- Microsoft 對等互連可讓您與 Microsoft 網路上的公用 IP 位址通訊。 因此,您的內部部署網路上的流量端點也應該是公用的。 這通常會使用 SNAT 來完成。
注意
使用 SNAT 時,我們建議不要使用指派給主要或次要連結的範圍內的公用 IP 位址。 相反地,您應該使用已指派給您並在 Regional Internet Registry (RIR) 或 Internet Routing Registry (IRR) 中註冊的不同範圍的公用 IP 位址。 視您的通話量而定,此範圍可以小至單一 IP 位址 (對於 IPv4 表示為 '/32',對於 IPv6 表示為 '/128')。
- 供建立此對等的有效 VLAN ID。 請確定線路有沒有其他對等使用相同的 VLAN ID。 如果同時需要主要和次要連結,則必須使用相同的 VLAN ID。
- 對等的 AS 編號。 您可以使用 2 位元組和 4 位元組 AS 編號。
- 公告的首碼:您要提供一份您打算透過 BGP 工作階段公告的所有前置詞清單。 只接受公用 IP 位址首碼。 如果計劃傳送一組前置詞,可以傳送以逗號分隔的清單。 這些首碼必須在 RIR / IRR 中註冊給您。
- 選用 - 客戶 ASN: 如果您要公告的前置詞未註冊給對等互連 AS 號碼,您可以指定其所註冊的 AS 號碼。
- 路由登錄名稱:您可以指定可供註冊 AS 編號和首碼的 RIR / IRR。
- 選用:MD5 雜湊 (如果選擇使用)。
- 您所擁有、且已在 RIR/IRR 中註冊的一對子網路。 一個子網路將用於主要連結,另一個將用於次要連結。 從每個子網中,您會將第一個可用 IP 位址指派給路由器,因為 Microsoft 會將第二個可用 IP 用於其路由器。 這對子網路有三個選項可供使用:
重要
Microsoft 會驗證指定的「已公告公用首碼」和「對等互連 ASN」(或「客戶 ASN」) 是否已在網際網路路由登錄中指派給您。 如果您要從另一個實體取得公用首碼,以及如果未使用路由登錄來記錄指派,則自動驗證將不會完成,而且需要手動驗證。 如果自動驗證失敗,您會看到 'AdvertisedPublicPrefixesState' 在 "Get-AzExpressRouteCircuitPeeringConfig" 的輸出上為「需要驗證」(請參閱下列區段中的「若要取得 Microsoft 對等互連詳細資訊」)。
如果您看到「需要驗證」訊息,請收集其中顯示實體已將公用前置詞指派給您組織的文件,而此實體列示為路由登錄中的前置詞擁有者,然後開啟支援票證,提交這些文件進行手動驗證。
使用下列範例來為線路設定 Microsoft 對等互連:
Add-AzExpressRouteCircuitPeeringConfig -Name "MicrosoftPeering" -ExpressRouteCircuit $ckt -PeeringType MicrosoftPeering -PeerASN 100 -PeerAddressType IPv4 -PrimaryPeerAddressPrefix "123.0.0.0/30" -SecondaryPeerAddressPrefix "123.0.0.4/30" -VlanId 300 -MicrosoftConfigAdvertisedPublicPrefixes "123.1.0.0/24" -MicrosoftConfigCustomerAsn 23 -MicrosoftConfigRoutingRegistryName "ARIN"
Add-AzExpressRouteCircuitPeeringConfig -Name "MicrosoftPeering" -ExpressRouteCircuit $ckt -PeeringType MicrosoftPeering -PeerASN 100 -PeerAddressType IPv6 -PrimaryPeerAddressPrefix "3FFE:FFFF:0:CD30::/126" -SecondaryPeerAddressPrefix "3FFE:FFFF:0:CD30::4/126" -VlanId 300 -MicrosoftConfigAdvertisedPublicPrefixes "3FFE:FFFF:0:CD31::/120" -MicrosoftConfigCustomerAsn 23 -MicrosoftConfigRoutingRegistryName "ARIN"
Set-AzExpressRouteCircuit -ExpressRouteCircuit $ckt
取得 Microsoft 對等詳細資料
您可以使用下列範例來取得設定詳細資料:
$ckt = Get-AzExpressRouteCircuit -Name "ExpressRouteARMCircuit" -ResourceGroupName "ExpressRouteResourceGroup"
Get-AzExpressRouteCircuitPeeringConfig -Name "MicrosoftPeering" -ExpressRouteCircuit $ckt
更新 Microsoft 對等組態
您可以使用下列範例來更新設定的任何部分:
Set-AzExpressRouteCircuitPeeringConfig -Name "MicrosoftPeering" -ExpressRouteCircuit $ckt -PeeringType MicrosoftPeering -PeerASN 100 -PeerAddressType IPv4 -PrimaryPeerAddressPrefix "123.0.0.0/30" -SecondaryPeerAddressPrefix "123.0.0.4/30" -VlanId 300 -MicrosoftConfigAdvertisedPublicPrefixes "124.1.0.0/24" -MicrosoftConfigCustomerAsn 23 -MicrosoftConfigRoutingRegistryName "ARIN"
Set-AzExpressRouteCircuitPeeringConfig -Name "MicrosoftPeering" -ExpressRouteCircuit $ckt -PeeringType MicrosoftPeering -PeerASN 100 -PeerAddressType IPv6 -PrimaryPeerAddressPrefix "3FFE:FFFF:0:CD30::/126" -SecondaryPeerAddressPrefix "3FFE:FFFF:0:CD30::4/126" -VlanId 300 -MicrosoftConfigAdvertisedPublicPrefixes "3FFE:FFFF:0:CD31::/120" -MicrosoftConfigCustomerAsn 23 -MicrosoftConfigRoutingRegistryName "ARIN"
Set-AzExpressRouteCircuit -ExpressRouteCircuit $ckt
Azure 私用對等互連
本節將協助您為 ExpressRoute 線路建立、取得、更新和刪除 Azure 私用對等互連設定。
建立 Azure 私用對等
匯入 ExpressRoute 的 PowerShell 模組。
從 PowerShell 資源庫安裝最新的 PowerShell 安裝程式。 然後將 Azure Resource Manager 模組匯入至 PowerShell 工作階段,才能開始使用 ExpressRoute Cmdlet。 您必須以系統管理員身分執行 PowerShell。
Install-Module Az
匯入已知語意版本範圍內所有的 Az.* 模組。
Import-Module Az
您也可以只匯入已知語意版本範圍內選取的模組。
Import-Module Az.Network
登入您的帳戶。
Connect-AzAccount
選取您想要建立 ExpressRoute 線路的訂用帳戶。
Select-AzSubscription -SubscriptionId "<subscription ID>"
建立 ExpressRoute 線路。
請遵循指示建立 ExpressRoute 線路 ,並由連線提供者佈建它。 若您的連線提供者是提供受控第 3 層服務,您可以要求連線提供者為您啟用 Azure 私人對等互連。 您不需要遵循後續幾節所列的指示。 不過,如果您的連線提供者不管理路由,請在建立線路之後繼續使用後續步驟進行設定。
檢查 ExpressRoute 線路,以確定已佈建且已啟用線路。 請使用下列範例:
Get-AzExpressRouteCircuit -Name "ExpressRouteARMCircuit" -ResourceGroupName "ExpressRouteResourceGroup"
回應如下列範例所示:
Name : ExpressRouteARMCircuit ResourceGroupName : ExpressRouteResourceGroup Location : westus Id : /subscriptions/***************************/resourceGroups/ExpressRouteResourceGroup/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuit Etag : W/"################################" ProvisioningState : Succeeded Sku : { "Name": "Standard_MeteredData", "Tier": "Standard", "Family": "MeteredData" } CircuitProvisioningState : Enabled ServiceProviderProvisioningState : Provisioned ServiceProviderNotes : ServiceProviderProperties : { "ServiceProviderName": "Equinix", "PeeringLocation": "Silicon Valley", "BandwidthInMbps": 200 } ServiceKey : ************************************** Peerings : []
設定線路的 Azure 私用對等。 繼續執行接下來的步驟之前,請確定您有下列項目:
- 一對子網路,不屬於保留給虛擬網路的任何位址空間。 一個子網路會用於主要連結,另一個會用於次要連結。 在每個子網路中,將第一個可用的 IP 位址指派給路由器,Microsoft 會將第二個可用的 IP 位址用於其路由器。 這對子網路有三個選項可供使用:
- IPv4:兩個 /30 子網路。
- IPv6:兩個 /126 子網路。
- 兩者:兩個 /30 子網路和兩個 /126 子網路。
- 供建立此對等的有效 VLAN ID。 請確定線路有沒有其他對等使用相同的 VLAN ID。
- 對等的 AS 編號。 您可以使用 2 位元組和 4 位元組 AS 編號。 您可以將私用 AS 編號用於此對等。 確保您不是使用 65515。
- 選用:
- MD5 雜湊 (如果選擇使用)。
使用下列範例來為線路設定 Azure 私用對等互連:
Add-AzExpressRouteCircuitPeeringConfig -Name "AzurePrivatePeering" -ExpressRouteCircuit $ckt -PeeringType AzurePrivatePeering -PeerASN 100 -PrimaryPeerAddressPrefix "10.0.0.0/30" -SecondaryPeerAddressPrefix "10.0.0.4/30" -VlanId 200 Add-AzExpressRouteCircuitPeeringConfig -Name "AzurePrivatePeering" -ExpressRouteCircuit $ckt -PeeringType AzurePrivatePeering -PeerASN 100 -PrimaryPeerAddressPrefix "3FFE:FFFF:0:CD30::/126" -SecondaryPeerAddressPrefix "3FFE:FFFF:0:CD30::4/126" -VlanId 200 -PeerAddressType IPv6 Set-AzExpressRouteCircuit -ExpressRouteCircuit $ckt
如果您選擇使用 MD5 雜湊,請使用下列範例:
Add-AzExpressRouteCircuitPeeringConfig -Name "AzurePrivatePeering" -ExpressRouteCircuit $ckt -PeeringType AzurePrivatePeering -PeerASN 100 -PrimaryPeerAddressPrefix "10.0.0.0/30" -SecondaryPeerAddressPrefix "10.0.0.4/30" -VlanId 200 -SharedKey "A1B2C3D4" Add-AzExpressRouteCircuitPeeringConfig -Name "AzurePrivatePeering" -ExpressRouteCircuit $ckt -PeeringType AzurePrivatePeering -PeerASN 100 -PrimaryPeerAddressPrefix "3FFE:FFFF:0:CD30::/126" -SecondaryPeerAddressPrefix "3FFE:FFFF:0:CD30::4/126" -VlanId 200 -PeerAddressType IPv6 -SharedKey "A1B2C3D4"
重要
請確定您將 AS 編號指定為對等 ASN,而不是客戶 ASN。
- 一對子網路,不屬於保留給虛擬網路的任何位址空間。 一個子網路會用於主要連結,另一個會用於次要連結。 在每個子網路中,將第一個可用的 IP 位址指派給路由器,Microsoft 會將第二個可用的 IP 位址用於其路由器。 這對子網路有三個選項可供使用:
取得 Azure 私用對等互連詳細資訊
您可以使用下列範例來取得設定詳細資料:
$ckt = Get-AzExpressRouteCircuit -Name "ExpressRouteARMCircuit" -ResourceGroupName "ExpressRouteResourceGroup"
Get-AzExpressRouteCircuitPeeringConfig -Name "AzurePrivatePeering" -ExpressRouteCircuit $ckt
更新 Azure 私用對等組態
您可以使用下列範例來更新設定的任何部分。 在此範例中,線路的 VLAN ID 從 200 更新為 500。
Set-AzExpressRouteCircuitPeeringConfig -Name "AzurePrivatePeering" -ExpressRouteCircuit $ckt -PeeringType AzurePrivatePeering -PeerASN 100 -PrimaryPeerAddressPrefix "10.0.0.0/30" -SecondaryPeerAddressPrefix "10.0.0.4/30" -VlanId 500
Set-AzExpressRouteCircuit -ExpressRouteCircuit $ckt
清除資源
刪除 Microsoft 對等
您可以執行下列 Cmdlet 來移除對等組態:
Remove-AzExpressRouteCircuitPeeringConfig -Name "MicrosoftPeering" -ExpressRouteCircuit $ckt
Set-AzExpressRouteCircuit -ExpressRouteCircuit $ckt
刪除 Azure 私用對等
您可以執行下列範例來移除對等互連設定:
警告
執行此範例之前,您必須確定已移除所有虛擬網路與 ExpressRoute Global Reach 連線。
Remove-AzExpressRouteCircuitPeeringConfig -Name "AzurePrivatePeering" -ExpressRouteCircuit $ckt
Set-AzExpressRouteCircuit -ExpressRouteCircuit $ckt
下一步
設定 Azure 私人對等互連之後,您可以建立 ExpressRoute 閘道,以將虛擬網路連結至線路。