分享方式:


使用 PowerShell 將虛擬網路連接到 ExpressRoute 線路 (傳統)

本文可協助您使用 PowerShell 將虛擬網路 (VNet) 連結到 Azure ExpressRoute 線路。 單一 VNet 最多可連結到四個 ExpressRoute 線路。 使用本文中的步驟來建立您要連線之每個 ExpressRoute 線路的新連結。 ExpressRoute 線路可位於相同的訂用帳戶和/或不同的訂用帳戶中。 本文適用於使用傳統部署模型所建立的虛擬網路。

您最多可以將 10 個虛擬網路連結至 ExpressRoute 電路。 所有的虛擬網路都必須位於同一個地理區域。 如果您啟用 ExpressRoute 進階版附加元件,則可將更大量的虛擬網路連結到您的 ExpressRoute 線路,或是連結位於其他地理區域的虛擬網路。 如需進階版附加元件的詳細資訊,請參閱常見問題集

重要

從 2017 年 3 月 1 日起,您便無法在傳統部署模型中建立新的 ExpressRoute 線路。

  • 您可以將現有 ExpressRoute 線路從傳統部署模型移至 Resource Manager 部署模型﹐而不會遇到任何連線中斷情形。 如需詳細資訊,請參閱移動現有線路
  • allowClassicOperations 設為 TRUE﹐即可連接到傳統部署模型中的虛擬網路。

使用下列連結﹐在 Resource Manager 部署模型中建立及管理 ExpressRoute 線路:

關於 Azure 部署模型

Azure 目前使用兩種部署模型:Resource Manager 和傳統。 兩個模型彼此無法完全相容。 開始之前,您必須知道您想要使用哪一個模型。 如需部署模型的資訊,請參閱了解部署模型。 如果您不熟悉 Azure,建議使用 Azure Resource Manager 部署模型。

組態必要條件

  • 開始設定之前,請先檢閱必要條件路由需求工作流程
  • 您必須具有作用中的 ExpressRoute 線路。
    • 遵循指示來 建立 ExpressRoute 線路 ,並由您的連線提供者來啟用該線路。
    • 請確定您已為線路設定 Azure 私人對等互連。 請參閱 設定路由 一文,以取得路由指示。
    • 請確定已設定 Azure 私用對等,且已開啟您的網路與 Microsoft 之間的 BGP 對等,讓您可以啟用端對端連線。
    • 您必須有已建立且完整佈建的虛擬網路和虛擬網路閘道。 請遵循指示 設定 ExpressRoute 的虛擬網路

下載最新的 PowerShell Cmdlet

安裝最新版本的 Azure 服務管理 (SM) PowerShell 模組和 ExpressRoute 模組。 您無法使用 Azure CloudShell 環境來執行 SM 模組。

  1. 使用安裝服務管理模組一文中的指示來安裝 Azure 服務管理模組。 如果您已安裝 Az 或 RM 模組,請務必使用 '-AllowClobber'。

  2. 匯入已安裝的模組。 使用下列範例時,請調整路徑以反映已安裝 PowerShell 模組的位置和版本。

    Import-Module 'C:\Program Files\WindowsPowerShell\Modules\Azure\5.3.0\Azure.psd1'
    Import-Module 'C:\Program Files\WindowsPowerShell\Modules\Azure\5.3.0\ExpressRoute\ExpressRoute.psd1'
    
  3. 若要登入您的 Azure 帳戶,請以提高的權限開啟 PowerShell 主控台並連線到您的帳戶。 使用下列範例可協助您使用服務管理模組進行連線:

    Add-AzureAccount
    

將相同訂用帳戶中的虛擬網路連接到線路

您可以使用下列 Cmdlet,將虛擬網路連結到 ExpressRoute 線路。 執行 Cmdlet 之前,請確定您已建立虛擬網路閘道,並準備好進行連結。

New-AzureDedicatedCircuitLink -ServiceKey "*****************************" -VNetName "MyVNet"
Provisioned

您可以使用下列 Cmdlet 移除 ExpressRoute 線路的虛擬網路連結。 請確定已針對特定的虛擬網路選取目前的訂用帳戶。

Remove-AzureDedicatedCircuitLink -ServiceKey "*****************************" -VNetName "MyVNet"

將不同訂用帳戶中的虛擬網路連接到線路

您可以讓多個訂用帳戶共用 ExpressRoute 線路。 下圖顯示簡單的圖解,示範多個訂用帳戶共用 ExpressRoute 線路的方式。

大型雲端內的每個較小型雲端,會用來代表屬於組織內不同部門的訂用帳戶。 組織內的每個部門都可以使用自己的訂用帳戶來部署它們的服務,但可共用單一 ExpressRoute 線路,以連接回內部部署網路。 單一部門 (在此範例中:IT) 可以擁有 ExpressRoute 循環。 組織內的其他訂用帳戶可以使用 ExpressRoute 電路。

注意

ExpressRoute 循環擁有者需支付專用循環的連線和頻寬費用。 所有虛擬網路都會共用相同的頻寬。

Cross-subscription connectivity

系統管理

「線路擁有者」 是訂用帳戶的管理員/共同管理員,而 ExpressRoute 線路即建立於該訂用帳戶中。 線路擁有者可以授權其他訂用帳戶的管理員/共同管理員 (工作流程圖中稱為「線路使用者」 ) 來使用他們擁有的專用線路。 獲得使用組織 ExpressRoute 線路的授權後,這些線路使用者就可以將其訂用帳戶中的虛擬網路連結到 ExpressRoute 線路。

線路擁有者隨時有權修改及撤銷授權。 如果撤銷授權,則在存取權遭撤銷的訂用帳戶中,所有連結均會被刪除。

注意

線路擁有者不是內建的 RBAC 角色,亦非定義在 ExpressRoute 資源上。 線路擁有者的定義是擁有下列存取權的任何角色:

  • Microsoft.Network/expressRouteCircuits/authorizations/write
  • Microsoft.Network/expressRouteCircuits/authorizations/read
  • Microsoft.Network/expressRouteCircuits/authorizations/delete

這包括內建角色,例如參與者、擁有者和網路參與者。 不同內建角色的詳細描述。

線路擁有者作業

建立授權

電路擁有者可授權其他訂用帳戶管理員使用指定的電路。 在下列範例中,線路管理員 (Contoso IT) 讓另一個訂用帳戶的管理員 (Dev-Test) 可將最多 2 個虛擬網路連結到線路。 Contoso IT 系統管理員藉由指定 Dev-Test Microsoft 識別碼來啟用此授權。 此 Cmdlet 不會傳送電子郵件給指定的 Microsoft ID。 電路擁有者必須明確通知其他訂用帳戶擁有者,告知授權已完成。

New-AzureDedicatedCircuitLinkAuthorization -ServiceKey "**************************" -Description "Dev-Test Links" -Limit 2 -MicrosoftIds 'devtest@contoso.com'

傳回:

Description         : Dev-Test Links
Limit               : 2
LinkAuthorizationId : **********************************
MicrosoftIds        : devtest@contoso.com
Used                : 0

檢閱授權

線路擁有者可以藉由執行下列 Cmdlet,來檢閱特定線路上發出的所有授權:

Get-AzureDedicatedCircuitLinkAuthorization -ServiceKey: "**************************"

傳回:

Description         : EngineeringTeam
Limit               : 3
LinkAuthorizationId : ####################################
MicrosoftIds        : engadmin@contoso.com
Used                : 1

Description         : MarketingTeam
Limit               : 1
LinkAuthorizationId : @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
MicrosoftIds        : marketingadmin@contoso.com
Used                : 0

Description         : Dev-Test Links
Limit               : 2
LinkAuthorizationId : &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
MicrosoftIds        : salesadmin@contoso.com
Used                : 2

更新授權

線路擁有者可以使用下列 Cmdlet 來修改授權:

Set-AzureDedicatedCircuitLinkAuthorization -ServiceKey "**************************" -AuthorizationId "&&&&&&&&&&&&&&&&&&&&&&&&&&&&"-Limit 5

傳回:

Description         : Dev-Test Links
Limit               : 5
LinkAuthorizationId : &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
MicrosoftIds        : devtest@contoso.com
Used                : 0

刪除授權

線路擁有者可以使用下列 Cmdlet 來撤銷/刪除使用者的授權:

Remove-AzureDedicatedCircuitLinkAuthorization -ServiceKey "*****************************" -AuthorizationId "###############################"

線路使用者作業

檢閱授權

線路使用者可以使用下列 Cmdlet 來檢閱授權:

Get-AzureAuthorizedDedicatedCircuit

傳回:

Bandwidth                        : 200
CircuitName                      : ContosoIT
Location                         : Washington DC
MaximumAllowedLinks              : 2
ServiceKey                       : &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
ServiceProviderName              : equinix
ServiceProviderProvisioningState : Provisioned
Status                           : Enabled
UsedLinks                        : 0

兌換連結授權

線路使用者可以執行下列 Cmdlet 來兌換連結授權:

New-AzureDedicatedCircuitLink –servicekey "&&&&&&&&&&&&&&&&&&&&&&&&&&" –VnetName 'SalesVNET1'

傳回:

State VnetName
----- --------
Provisioned SalesVNET1

在虛擬網路的新連結訂用帳戶中執行此命令:

New-AzureDedicatedCircuitLink -ServiceKey "*****************************" -VNetName "MyVNet"

下一步

如需有關 ExpressRoute 的詳細資訊,請參閱 ExpressRoute 常見問題集