使用 CLI 创建和修改 ExpressRoute 线路的对等互连

本文介绍如何使用 CLI 在资源管理器部署模型中创建和管理 ExpressRoute 线路的路由配置/对等互连。 还可以检查状态,以及更新、删除和取消预配 ExpressRoute 线路的对等互连。 如果想使用不同的方法处理线路,请从以下列表中选择一篇文章进行参阅:

Diagram showing an on-premises network connected to the Azure cloud through an ExpressRoute circuit.

先决条件

  • 在开始之前,请安装最新版本的 CLI 命令(2.0 或更高版本)。 有关安装 CLI 命令的信息,请参阅安装 Azure CLI
  • 在开始配置前,请务必查看先决条件路由要求工作流页。
  • 必须有一个活动的 ExpressRoute 线路。 在继续之前,请按说明创建 ExpressRoute 线路,并通过连接提供商启用该线路。 ExpressRoute 线路必须处于已预配和已启用状态,这样你才能运行本文中的命令。

这些说明只适用于由提供第 2 层连接服务的服务提供商创建的线路。 如果所使用的服务提供商提供第 3 层托管服务(通常是 IPVPN,如 MPLS),则连接服务提供商会配置和管理路由。

可以为 ExpressRoute 线路配置专用对等互连和 Microsoft 对等互连。 可以按所选的任意顺序配置对等互连。 但是,必须确保一次只完成一个对等互连的配置。 有关路由域和对等互连的详细信息,请参阅 ExpressRoute 路由域

Microsoft 对等互连

本文介绍如何为 ExpressRoute 线路创建、获取、更新和删除 Microsoft 对等互连配置。

重要

在 2017 年 8 月 1 日之前配置的 ExpressRoute 线路的 Microsoft 对等互连会通过 Microsoft 对等互连播发所有服务前缀,即使未定义路由筛选器。 在 2017 年 8 月 1 日或之后配置的 ExpressRoute 线路的 Microsoft 对等互连的任何前缀只有在路由筛选器附加到线路之后才会播发。 有关详细信息,请参阅配置用于 Microsoft 对等互连的路由筛选器

创建 Microsoft 对等互连

  1. 安装并使用最新版本的 Azure CLI。

    az cloud set -n AzureChinaCloud
    az login
    # az cloud set -n AzureCloud   //means return to Public Azure.
    

    选择要为其创建 ExpressRoute 线路的订阅。

    az account set --subscription "<subscription ID>"
    
  2. 创建 ExpressRoute 线路。 请按说明创建 ExpressRoute 线路 ,并由连接服务提供商进行预配。 如果连接服务提供商提供第 3 层托管服务,可以请求连接服务提供商启用 Microsoft 对等互连。 在这种情况下,不需要遵循后续部分中所列的说明。 但是,如果连接服务提供商不为你管理路由,请在创建线路后按照后续步骤继续配置。

  3. 检查 ExpressRoute 线路以确保它已预配并已启用。 使用以下示例:

    az network express-route list
    

    其响应类似于如下示例:

    "allowClassicOperations": false,
    "authorizations": [],
    "circuitProvisioningState": "Enabled",
    "etag": "W/\"1262c492-ffef-4a63-95a8-a6002736b8c4\"",
    "gatewayManagerEtag": null,
    "id": "/subscriptions/81ab786c-56eb-4a4d-bb5f-f60329772466/resourceGroups/ExpressRouteResourceGroup/providers/Microsoft.Network/expressRouteCircuits/MyCircuit",
    "location": "chinanorth",
    "name": "MyCircuit",
    "peerings": [],
    "provisioningState": "Succeeded",
    "resourceGroup": "ExpressRouteResourceGroup",
    "serviceKey": "1d05cf70-1db5-419f-ad86-1ca62c3c125b",
    "serviceProviderNotes": null,
    "serviceProviderProperties": {
     "bandwidthInMbps": 200,
     "peeringLocation": "Beijing",
     "serviceProviderName": "Beijing Telecom Ethernet"
    },
    "serviceProviderProvisioningState": "Provisioned",
    "sku": {
     "family": "UnlimitedData",
     "name": "Standard_MeteredData",
     "tier": "Standard"
    },
    "tags": null,
    "type": "Microsoft.Network/expressRouteCircuits]
    
  4. 配置线路的 Microsoft 对等互连。 在继续之前,请确保已准备好以下信息。

    • 主链路的 /30 子网。 地址块必须是你拥有的且已在 RIR/IRR 中注册的有效公共 IPv4 前缀。
    • 辅助链路的 /30 子网。 地址块必须是你拥有的且已在 RIR/IRR 中注册的有效公共 IPv4 前缀。
    • 用于建立此对等互连的有效 VLAN ID。 请确保线路中没有其他对等互连使用同一个 VLAN ID。
    • 对等互连的 AS 编号。 可以使用 2 字节和 4 字节 AS 编号。
    • 播发的前缀:提供你计划要通过 BGP 会话播发的所有前缀的列表。 只接受公共 IP 前缀。 如果打算发送一组前缀,可以发送逗号分隔列表。 这些前缀必须已在 RIR/IRR 中注册。
    • “可选”- 客户 ASN:如果要播发的前缀未注册到对等互连 AS 编号,可以指定要注册到的 AS 编号。
    • 路由注册表名称:可以指定 AS 编号和前缀要注册到的 RIR/IRR。
    • 可选 - MD5 哈希(如果选择使用)。

    运行以下示例为线路配置 Microsoft 对等互连:

    az network express-route peering create --circuit-name MyCircuit --peer-asn 100 --primary-peer-subnet 123.0.0.0/30 -g ExpressRouteResourceGroup --secondary-peer-subnet 123.0.0.4/30 --vlan-id 300 --peering-type MicrosoftPeering --advertised-public-prefixes 123.1.0.0/24
    

查看 Microsoft 对等互连详细信息

可以使用以下示例来获取配置详细信息:

az network express-route peering show -g ExpressRouteResourceGroup --circuit-name MyCircuit --name AzureMicrosoftPeering

重要

Azure 会验证是否在 Internet 路由注册表中为你分配了指定的“播发公共前缀”和“对等 ASN”(或“客户 ASN”)。 如果要从其他实体获取公用前缀,并且没有在路由注册表中记录分配,则自动验证不会完成,需要手动验证。 如果自动验证失败,你将在上述命令的输出中看到“AdvertisedPublicPrefixesState”为“Validation needed”。

如果看到消息“需要验证”,请收集相关文档,它们显示公用前缀已由在路由注册表中作为前缀所有者列出的实体分配给你的组织,然后通过开具支持票证来提交这些文档以进行手动验证。

输出类似于以下示例:

{
  "azureAsn": 12076,
  "etag": "W/\"2e97be83-a684-4f29-bf3c-96191e270666\"",
  "gatewayManagerEtag": "18",
  "id": "/subscriptions/9a0c2943-e0c2-4608-876c-e0ddffd1211b/resourceGroups/ExpressRouteResourceGroup/providers/Microsoft.Network/expressRouteCircuits/MyCircuit/peerings/AzureMicrosoftPeering",
  "lastModifiedBy": "Customer",
  "microsoftPeeringConfig": {
    "advertisedPublicPrefixes": [
        ""
      ],
     "advertisedPublicPrefixesState": "",
     "customerASN": ,
     "routingRegistryName": ""
  }
  "name": "AzureMicrosoftPeering",
  "peerAsn": ,
  "peeringType": "AzureMicrosoftPeering",
  "primaryAzurePort": "",
  "primaryPeerAddressPrefix": "",
  "provisioningState": "Succeeded",
  "resourceGroup": "ExpressRouteResourceGroup",
  "routeFilter": null,
  "secondaryAzurePort": "",
  "secondaryPeerAddressPrefix": "",
  "sharedKey": null,
  "state": "Enabled",
  "stats": null,
  "vlanId": 100
}

更新 Microsoft 对等互连配置

可以更新配置的任何部分。 在以下示例中,线路的播发前缀将从 123.1.0.0/24 更新为124.1.0.0/24:

az network express-route peering update --circuit-name MyCircuit -g ExpressRouteResourceGroup --peering-type MicrosoftPeering --advertised-public-prefixes 124.1.0.0/24

将 IPv6 Microsoft 对等互连设置添加到现有的 IPv4 配置

az network express-route peering update -g ExpressRouteResourceGroup --circuit-name MyCircuit --peering-type MicrosoftPeering --ip-version ipv6 --primary-peer-subnet 2002:db00::/126 --secondary-peer-subnet 2003:db00::/126 --advertised-public-prefixes 2002:db00::/126

Azure 专用对等互连

本文介绍了如何为 ExpressRoute 线路创建、获取、更新和删除 Azure 专用对等互连配置。

创建 Azure 专用对等互连

  1. 安装最新版本的 Azure CLI。

    az cloud set -n AzureChinaCloud
    az login
    # az cloud set -n AzureCloud   //means return to Public Azure.
    

    选择要创建 ExpressRoute 线路的订阅

    az account set --subscription "<subscription ID>"
    
  2. 创建 ExpressRoute 线路。 请按说明创建 ExpressRoute 线路 ,并由连接服务提供商进行预配。 如果连接服务提供商提供第 3 层托管服务,可以请求连接服务提供商启用 Azure 专用对等互连。 在这种情况下,不需要遵循后续部分中所列的说明。 但是,如果连接服务提供商不为你管理路由,请在创建线路后按照后续步骤继续配置。

  3. 检查 ExpressRoute 线路以确保它已预配并已启用。 使用以下示例:

    az network express-route show --resource-group ExpressRouteResourceGroup --name MyCircuit
    

    其响应类似于如下示例:

    "allowClassicOperations": false,
    "authorizations": [],
    "circuitProvisioningState": "Enabled",
    "etag": "W/\"1262c492-ffef-4a63-95a8-a6002736b8c4\"",
    "gatewayManagerEtag": null,
    "id": "/subscriptions/81ab786c-56eb-4a4d-bb5f-f60329772466/resourceGroups/ExpressRouteResourceGroup/providers/Microsoft.Network/expressRouteCircuits/MyCircuit",
    "location": "chinanorth",
    "name": "MyCircuit",
    "peerings": [],
    "provisioningState": "Succeeded",
    "resourceGroup": "ExpressRouteResourceGroup",
    "serviceKey": "1d05cf70-1db5-419f-ad86-1ca62c3c125b",
    "serviceProviderNotes": null,
    "serviceProviderProperties": {
    "bandwidthInMbps": 200,
    "peeringLocation": "Beijing",
    "serviceProviderName": "Beijing Telecom Ethernet"
    },
    "serviceProviderProvisioningState": "Provisioned",
    "sku": {
     "family": "UnlimitedData",
     "name": "Standard_MeteredData",
     "tier": "Standard"
    },
    "tags": null,
    "type": "Microsoft.Network/expressRouteCircuits]
    
  4. 配置线路的 Azure 专用对等互连。 在继续执行后续步骤之前,确保已准备好以下各项:

    • 不属于为虚拟网络保留的任何地址空间的一对子网。 一个子网将用于主链路,而另一个子网将用于辅助链路。 在每个子网中,当 Azure 将第二个可用的 IP 用于其路由器时,你需为路由器分配第一个可用的 IP 地址。 对于这对子网,你有三个选择:
      • IPv4:两个/30 个子网。
      • IPv6:两个/126 个子网。
      • IPv4 和 IPv6:两个/30 个子网和两个/126 个子网。
    • 用于建立此对等互连的有效 VLAN ID。 请确保线路中没有其他对等互连使用同一个 VLAN ID。
    • 对等互连的 AS 编号。 可以使用 2 字节和 4 字节 AS 编号。 可以将专用 AS 编号用于此对等互连。 确保你没有使用 65515。
    • 可选 - MD5 哈希(如果选择使用)。

    使用以下示例为线路配置 Azure 专用对等互连:

    az network express-route peering create --circuit-name MyCircuit --peer-asn 100 --primary-peer-subnet 10.0.0.0/30 -g ExpressRouteResourceGroup --secondary-peer-subnet 10.0.0.4/30 --vlan-id 200 --peering-type AzurePrivatePeering
    

    如果选择使用 MD5 哈希,请使用以下示例:

    az network express-route peering create --circuit-name MyCircuit --peer-asn 100 --primary-peer-subnet 10.0.0.0/30 -g ExpressRouteResourceGroup --secondary-peer-subnet 10.0.0.4/30 --vlan-id 200 --peering-type AzurePrivatePeering --SharedKey "A1B2C3D4"
    

    重要

    请确保将 AS 编号指定为对等互连 ASN,而不是客户 ASN。

查看 Azure 专用对等互连详细信息

可以使用以下示例来获取配置详细信息:

az network express-route peering show -g ExpressRouteResourceGroup --circuit-name MyCircuit --name AzurePrivatePeering

输出类似于以下示例:

{
  "azureASN": 12076,
  "connections": [],
  "etag": "W/\"abcdef12-3456-7890-abcd-ef1234567890\"",
  "gatewayManagerEtag": "",
  "id": "/subscriptions/abcdef12-3456-7890-abcd-ef1234567890/resourceGroups/ExpressRouteResourceGroup/providers/Microsoft.Network/expressRouteCircuits/MyCircuit/peerings/AzurePrivatePeering",
  "lastModifiedBy": "Customer",
  "microsoftPeeringConfig": {
    "advertisedCommunities": [],
    "advertisedPublicPrefixes": [],
    "advertisedPublicPrefixesState": "NotConfigured",
    "customerASN": 0,
    "legacyMode": 0,
    "routingRegistryName": "NONE"
  },
  "name": "AzurePrivatePeering",
  "peerASN": 65020,
  "peeredConnections": [],
  "peeringType": "AzurePrivatePeering",
  "primaryAzurePort": "",
  "primaryPeerAddressPrefix": "192.168.17.16/30",
  "provisioningState": "Succeeded",
  "resourceGroup": "ExpressRouteResourceGroup",
  "secondaryAzurePort": "",
  "secondaryPeerAddressPrefix": "192.168.17.20/30",
  "state": "Enabled",
  "type": "Microsoft.Network/expressRouteCircuits/peerings",
  "vlanId": 100
}

更新 Azure 专用对等互连配置

可以使用以下示例来更新配置的任何部分。 在此示例中,线路的 VLAN ID 将从 100 更新为 500。

az network express-route peering update --vlan-id 500 -g ExpressRouteResourceGroup --circuit-name MyCircuit --name AzurePrivatePeering

清理资源

删除 Microsoft 对等互连

可以运行以下示例来删除对等互连配置:

az network express-route peering delete -g ExpressRouteResourceGroup --circuit-name MyCircuit --name MicrosoftPeering

删除 Azure 专用对等互连

可以运行以下示例来删除对等互连配置:

警告

运行此示例前,必须确保已删除所有虚拟网络和 ExpressRoute Global Reach 连接。

az network express-route peering delete -g ExpressRouteResourceGroup --circuit-name MyCircuit --name AzurePrivatePeering

后续步骤

配置 Azure 专用对等互连后,可以将虚拟网络链接到线路,请参阅: