如何配置 ExpressRoute Direct

使用 ExpressRoute Direct,可以直接连接到 Microsoft 战略性分布在全球的对等互连位置的的全球网络。 有关详细信息,请参阅关于 ExpressRoute Direct

准备阶段

需要先注册订阅,然后才能使用 ExpressRoute Direct。 若要注册,请使用 Azure PowerShell 运行以下命令:

  1. 登录到 Azure 并选择想要注册的订阅。

    Connect-AzAccount -Environment AzureChinaCloud 
    
    Select-AzSubscription -Subscription "<SubscriptionID or SubscriptionName>"
    
  2. 使用以下命令注册订阅:

    Register-AzProviderFeature -FeatureName AllowExpressRoutePorts -ProviderNamespace Microsoft.Network
    

注册后,验证 Microsoft.Network 资源提供程序是否已在你的订阅中注册。 通过注册资源提供程序来配置订阅,以供资源提供程序使用。

创建资源

  1. 登录到 Azure 并选择订阅。 ExpressRoute Direct 资源和 ExpressRoute 线路必须位于同一订阅中。

    Connect-AzAccount -Environment AzureChinaCloud 
    
    Select-AzSubscription -Subscription "<SubscriptionID or SubscriptionName>"
    
  2. 将你的订阅重新注册到 Microsoft.Network 以访问 expressrouteportslocation 和 expressrouteport API。

    Register-AzResourceProvider -ProviderNameSpace "Microsoft.Network"
    
  3. 列出支持 ExpressRoute Direct 的所有位置。

    Get-AzExpressRoutePortsLocation | format-list
    

    示例输出

    Name                : CT-Shanghai
    Id                  : /subscriptions/<subscriptionID>/providers/Microsoft.Network/expressRoutePortsLocations/CT-Shanghai
    ProvisioningState   : Succeeded
    Address             : 5788 Yanggao S Rd / 189 Xiuyan, Shanghai
    Contact             : gcsc@chinatelecom.cn
    AvailableBandwidths : []
    
    Name                : GDS-Beijing
    Id                  : /subscriptions/<subscriptionID>/providers/Microsoft.Network/expressRoutePortsLocations/GDS-Beijing
    ProvisioningState   : Succeeded
    Address             : 16 Kechuang San Street, Yizhuang Economic Development Zone, Beijing
    Contact             : gdscx@gds-services.com
    AvailableBandwidths : []
    
    Name                : GDS-Shanghai
    Id                  : /subscriptions/<subscriptionID>/providers/Microsoft.Network/expressRoutePortsLocations/GDS-Shanghai
    ProvisioningState   : Succeeded
    Address             : 6 Huanjing Road, Pudong New District, Shanghai
    Contact             : gdscx@gds-services.com
    AvailableBandwidths : []
    
  4. 确定上一步中列出的位置是否具有可用带宽。

    Get-AzExpressRoutePortsLocation -LocationName "GDS-Shanghai" | format-list
    

    示例输出

    Name                : GDS-Shanghai
    Id                  : /subscriptions/<subscriptionID>/providers/Microsoft.Network/expressRoutePortsLocations/GDS-Shanghai
    ProvisioningState   : Succeeded
    Address             : 6 Huanjing Road, Pudong New District, Shanghai
    Contact             : gdscx@gds-services.com
    AvailableBandwidths : [
                            {
                              "OfferName": "10 Gbps",
                              "ValueInGbps": 10
                            }
                          ]
    

    注意

    如果目标位置的带宽不可用,请在 Azure 门户中提交支持请求,然后选择“ExpressRoute”服务类型。

  5. 根据上一步中的位置创建 ExpressRoute Direct 资源。

    ExpressRoute Direct 同时支持 QinQ 和 Dot1Q 封装。 如果选择了 QinQ,则会为每个 ExpressRoute 线路动态分配一个 S-Tag,并且每个线路在整个 ExpressRoute Direct 资源中是唯一的。 线路上的每个 C-Tag 在该线路上必须是唯一的,但在整个 ExpressRoute Direct 中不必唯一。

    如果选择了 Dot1Q 封装,则必须在整个 ExpressRoute Direct 资源中管理 C-Tag (VLAN) 的唯一性。

    重要

    ExpressRoute Direct 只能采用一种封装类型。 无法在创建 ExpressRoute Direct 后更改封装。

    $ERDirect = New-AzExpressRoutePort -Name $Name -ResourceGroupName $ResourceGroupName -PeeringLocation $PeeringLocationName -BandwidthInGbps 100.0 -Encapsulation QinQ | Dot1Q -Location $AzureRegion
    

    注意

    封装属性还可以设置为 Dot1Q。

    示例输出:

    Name                       : Contoso-Direct
    ResourceGroupName          : Contoso-Direct-rg
    Location                   : chinaeast
    Id                         : /subscriptions/<subscriptionID>/resourceGroups/Contoso-Direct-rg/providers/Microsoft.Network/exp
                                ressRoutePorts/Contoso-Direct
    Etag                       : W/"<etagnumber> "
    ResourceGuid               : <number>
    ProvisioningState          : Succeeded
    PeeringLocation            : Equinix-Seattle-SE2
    BandwidthInGbps            : 100
    ProvisionedBandwidthInGbps : 0
    Encapsulation              : QinQ
    Mtu                        : 1500
    EtherType                  : 0x8100
    AllocationDate             : Saturday, September 1, 2018
    Links                      : [
                                  {
                                    "Name": "link1",
                                    "Etag": "W/\"<etagnumber>\"",
                                    "Id": "/subscriptions/<subscriptionID>/resourceGroups/Contoso-Direct-rg/providers/Microsoft.
                                Network/expressRoutePorts/Contoso-Direct/links/link1",
                                    "RouterName": "tst-09xgmr-cis-1",
                                    "InterfaceName": "HundredGigE2/2/2",
                                    "PatchPanelId": "PPID",
                                    "RackId": "RackID",
                                    "ConnectorType": "SC",
                                    "AdminState": "Disabled",
                                    "ProvisioningState": "Succeeded"
                                  },
                                  {
                                    "Name": "link2",
                                    "Etag": "W/\"<etagnumber>\"",
                                    "Id": "/subscriptions/<subscriptionID>/resourceGroups/Contoso-Direct-rg/providers/Microsoft.
                                Network/expressRoutePorts/Contoso-Direct/links/link2",
                                    "RouterName": "tst-09xgmr-cis-2",
                                    "InterfaceName": "HundredGigE2/2/2",
                                    "PatchPanelId": "PPID",
                                    "RackId": "RackID",
                                    "ConnectorType": "SC",
                                    "AdminState": "Disabled",
                                    "ProvisioningState": "Succeeded"
                                  }
                                ]
    Circuits                   : []
    

生成授权信 (LOA)

引用最近创建的 ExpressRoute Direct 资源,输入客户名称以将 LOA 写入其中,并(可选)定义用于存储文档的文件位置。 如果未引用文件路径,则文档会下载到当前目录。

Azure PowerShell

 New-AzExpressRoutePortLOA -ExpressRoutePort $ERDirect -CustomerName TestCustomerName -Destination "C:\Users\SampleUser\Downloads" 

示例输出

Written Letter of Authorization To: C:\Users\SampleUser\Downloads\LOA.pdf

应当使用此过程执行第 1 层测试,以确保每个交叉连接都已针对主端口和辅助端口正确设置到每台路由器中。

  1. 获取 ExpressRoute Direct 详细信息。

    $ERDirect = Get-AzExpressRoutePort -Name $Name -ResourceGroupName $ResourceGroupName
    
  2. 将链路设置为“已启用”。 重复此步骤以将每个链路设置为“已启用”。

    Links[0] 是主端口,Links[1] 是辅助端口。

    $ERDirect.Links[0].AdminState = "Enabled"
    Set-AzExpressRoutePort -ExpressRoutePort $ERDirect
    $ERDirect = Get-AzExpressRoutePort -Name $Name -ResourceGroupName $ResourceGroupName
    $ERDirect.Links[1].AdminState = "Enabled"
    Set-AzExpressRoutePort -ExpressRoutePort $ERDirect
    

    示例输出:

    Name                       : Contoso-Direct
    ResourceGroupName          : Contoso-Direct-rg
    Location                   : chinaeast
    Id                         : /subscriptions/<number>/resourceGroups/Contoso-Direct-rg/providers/Microsoft.Network/exp
                              ressRoutePorts/Contoso-Direct
    Etag                       : W/"<etagnumber> "
    ResourceGuid               : <number>
    ProvisioningState          : Succeeded
    PeeringLocation            : Equinix-Seattle-SE2
    BandwidthInGbps            : 100
    ProvisionedBandwidthInGbps : 0
    Encapsulation              : QinQ
    Mtu                        : 1500
    EtherType                  : 0x8100
    AllocationDate             : Saturday, September 1, 2018
    Links                      : [
                                {
                                  "Name": "link1",
                                  "Etag": "W/\"<etagnumber>\"",
                                  "Id": "/subscriptions/<subscriptionID>/resourceGroups/Contoso-Direct-rg/providers/Microsoft.
                              Network/expressRoutePorts/Contoso-Direct/links/link1",
                                  "RouterName": "tst-09xgmr-cis-1",
                                  "InterfaceName": "HundredGigE2/2/2",
                                  "PatchPanelId": "PPID",
                                  "RackId": "RackID",
                                  "ConnectorType": "SC",
                                  "AdminState": "Enabled",
                                  "ProvisioningState": "Succeeded"
                                },
                                {
                                  "Name": "link2",
                                  "Etag": "W/\"<etagnumber>\"",
                                  "Id": "/subscriptions/<subscriptionID>/resourceGroups/Contoso-Direct-rg/providers/Microsoft.
                              Network/expressRoutePorts/Contoso-Direct/links/link2",
                                  "RouterName": "tst-09xgmr-cis-2",
                                  "InterfaceName": "HundredGigE2/2/2",
                                  "PatchPanelId": "PPID",
                                  "RackId": "RackID",
                                  "ConnectorType": "SC",
                                  "AdminState": "Enabled",
                                  "ProvisioningState": "Succeeded"
                                }
                              ]
    Circuits                   : []
    

    使用相同的过程和 AdminState = "Disabled" 设置可关闭端口。

创建线路

默认情况下,可以在 ExpressRoute Direct 资源所在的订阅中创建 10 条线路。 可以通过支持请求提高此上限。 你负责跟踪预配的和已利用的带宽。 预配的带宽是 ExpressRoute Direct 资源上所有线路的带宽总和,已利用的带宽是基础物理接口的物理利用率。

有更多线路带宽可以在 ExpressRoute Direct 端口上使用,以便仅支持之前概述的方案。 这些带宽为 40 Gbps 和 100 Gbps。

SkuTier 可以是“标准”或“高级”

SkuFamily 在创建时只能是 MeteredData。 若要使用“无限制”数据,需要在创建后更新 SkuFamily。

注意

一旦更改为“无限制”数据,就无法将其更改回来,除非重新创建 ExpressRoute 线路。

在 ExpressRoute Direct 资源上创建一个线路。

New-AzExpressRouteCircuit -Name $Name -ResourceGroupName $ResourceGroupName -ExpressRoutePort $ERDirect -BandwidthinGbps 100.0  -Location $AzureRegion -SkuTier Premium -SkuFamily MeteredData 

其他带宽包括:5.0、10.0 和 40.0

示例输出:

Name                             : ExpressRoute-Direct-ckt
ResourceGroupName                : Contoso-Direct-rg
Location                         : chinaeast
Id                               : /subscriptions/<subscriptionID>/resourceGroups/Contoso-Direct-rg/providers/Microsoft.Netwo
                                 rk/expressRouteCircuits/ExpressRoute-Direct-ckt
Etag                             : W/"<etagnumber>"
ProvisioningState                : Succeeded
Sku                              : {
                                   "Name": "Premium_MeteredData",
                                   "Tier": "Premium",
                                   "Family": "MeteredData"
                                 }
CircuitProvisioningState         : Enabled
ServiceProviderProvisioningState : Provisioned
ServiceProviderNotes             : 
  ServiceProviderProperties        : null
ExpressRoutePort                 : {
                                   "Id": "/subscriptions/<subscriptionID>n/resourceGroups/Contoso-Direct-rg/providers/Micros
                                 oft.Network/expressRoutePorts/Contoso-Direct"
                                 }
BandwidthInGbps                  : 10
Stag                             : 2
ServiceKey                       : <number>
Peerings                         : []
Authorizations                   : []
AllowClassicOperations           : False
GatewayManagerEtag     

删除资源

在删除 ExpressRoute Direct 资源之前,首先需要删除在 ExpressRoute Direct 端口对上创建的所有 ExpressRoute 线路。 可以通过运行以下命令来删除 ExpressRoute Direct 资源:

Remove-azexpressrouteport -Name $Name -Resourcegroupname -$ResourceGroupName

在不同的订阅中启用 ExpressRoute Direct 和线路

不同订阅或 Microsoft Entra 租户中的 ExpressRoute Direct 和 ExpressRoute 线路。 你需要为 ExpressRoute Direct 资源创建授权,然后兑换该授权以在不同的订阅或 Microsoft Entra 租户中创建 ExpressRoute 线路。

  1. 登录 Azure 并选择 ExpressRoute Direct 订阅。

    Connect-AzAccount -Environment AzureChinaCloud 
    
    Select-AzSubscription -Subscription "<SubscriptionID or SubscriptionName>"
    
  2. 。 获取 ExpressRoute Direct 详细信息

    Get-AzExpressRoutePort 
    
    $ERPort = Get-AzExpressRoutePort -Name $Name -ResourceGroupName $ResourceGroupName
    
  3. 通过在 PowerShell 中运行以下命令创建 ExpressRoute Direct 授权:

    Add-AzExpressRoutePortAuthorization -Name $AuthName -ExpressRoutePort $ERPort
    

    示例输出:

        Name                   : ERDirectAuthorization_1
        Id                     : /subscriptions/72882272-d67e-4aec-af0b-4ab6e110ee46/resourceGroups/erdirect- rg/providers/Microsoft.Network/expressRoutePorts/erdirect/authorizations/ERDirectAuthorization_1
        Etag                   : W/"24cac874-dfb4-4931-9447-28e67edd5155"
        AuthorizationKey       : 6e1fc16a-0777-4cdc-a206-108f2f0f67e8
        AuthorizationUseStatus : Available
        ProvisioningState      : Succeeded
        CircuitResourceUri     :
    
  4. 验证授权是否已成功创建,并将 ExpressRoute Direct 授权存储在变量中:

    $ERDirectAuthorization = Get-AzExpressRoutePortAuthorization -ExpressRoutePortObject $ERPort -Name $AuthName
    $ERDirectAuthorization  
    

    示例输出:

      Name                   : ERDirectAuthorization_1
      Id                     : /subscriptions/72882272-d67e-4aec-af0b-4ab6e110ee46/resourceGroups/erdirect- rg/providers/Microsoft.Network/expressRoutePorts/erdirect/authorizations/ERDirectAuthorization_1
      Etag                   : W/"24cac874-dfb4-4931-9447-28e67edd5155"
      AuthorizationKey       : 6e1fc16a-0777-4cdc-a206-108f2f0f67e8
      AuthorizationUseStatus : Available
      ProvisioningState      : Succeeded
      CircuitResourceUri     :on  
    
  5. 使用以下命令兑换在不同订阅或 Microsoft Entra 租户中创建 ExpressRoute Direct 线路的授权:

    Select-AzSubscription -Subscription "<SubscriptionID or SubscriptionName>"
    
    New-AzExpressRouteCircuit -Name $Name -ResourceGroupName $RGName -Location $Location -SkuTier $SkuTier -SkuFamily $SkuFamily -BandwidthInGbps $BandwidthInGbps -ExpressRoutePort $ERPort -AuthorizationKey $ERDirectAuthorization.AuthorizationKey
    

后续步骤

有关 ExpressRoute Direct 的详细信息,请参阅 ExpressRoute Direct 概述