Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
- Latest
- 2025-01-01
- 2024-10-01
- 2024-07-01
- 2024-05-01
- 2024-03-01
- 2024-01-01
- 2023-11-01
- 2023-09-01
- 2023-06-01
- 2023-05-01
- 2023-04-01
- 2023-02-01
- 2022-11-01
- 2022-09-01
- 2022-07-01
- 2022-05-01
- 2022-01-01
- 2021-08-01
- 2021-05-01
- 2021-03-01
- 2021-02-01
- 2020-11-01
- 2020-08-01
- 2020-07-01
- 2020-06-01
- 2020-05-01
- 2020-04-01
- 2020-03-01
- 2019-12-01
- 2019-11-01
- 2019-09-01
- 2019-08-01
- 2019-07-01
- 2019-06-01
- 2019-04-01
- 2019-02-01
- 2018-12-01
- 2018-11-01
- 2018-10-01
- 2018-08-01
- 2018-07-01
- 2018-06-01
- 2018-04-01
- 2018-02-01
- 2018-01-01
- 2017-11-01
- 2017-10-01
- 2017-09-01
- 2017-08-01
- 2017-06-01
- 2017-03-30
- 2017-03-01
- 2016-12-01
- 2016-09-01
- 2016-06-01
- 2016-03-30
- 2015-06-15
- 2015-05-01-preview
Bicep resource definition
The expressRouteCircuits/peerings resource type can be deployed with operations that target:
For a list of changed properties in each API version, see change log.
Resource format
To create a Microsoft.Network/expressRouteCircuits/peerings resource, add the following Bicep to your template.
resource symbolicname 'Microsoft.Network/expressRouteCircuits/peerings@2020-06-01' = {
  parent: resourceSymbolicName
  name: 'string'
  properties: {
    azureASN: int
    connections: [
      {
        id: 'string'
        name: 'string'
        properties: {
          addressPrefix: 'string'
          authorizationKey: 'string'
          expressRouteCircuitPeering: {
            id: 'string'
          }
          ipv6CircuitConnectionConfig: {
            addressPrefix: 'string'
          }
          peerExpressRouteCircuitPeering: {
            id: 'string'
          }
        }
      }
    ]
    expressRouteConnection: {}
    gatewayManagerEtag: 'string'
    ipv6PeeringConfig: {
      microsoftPeeringConfig: {
        advertisedCommunities: [
          'string'
        ]
        advertisedPublicPrefixes: [
          'string'
        ]
        customerASN: int
        legacyMode: int
        routingRegistryName: 'string'
      }
      primaryPeerAddressPrefix: 'string'
      routeFilter: {
        id: 'string'
      }
      secondaryPeerAddressPrefix: 'string'
      state: 'string'
    }
    microsoftPeeringConfig: {
      advertisedCommunities: [
        'string'
      ]
      advertisedPublicPrefixes: [
        'string'
      ]
      customerASN: int
      legacyMode: int
      routingRegistryName: 'string'
    }
    peerASN: int
    peeringType: 'string'
    primaryAzurePort: 'string'
    primaryPeerAddressPrefix: 'string'
    routeFilter: {
      id: 'string'
    }
    secondaryAzurePort: 'string'
    secondaryPeerAddressPrefix: 'string'
    sharedKey: 'string'
    state: 'string'
    stats: {
      primarybytesIn: int
      primarybytesOut: int
      secondarybytesIn: int
      secondarybytesOut: int
    }
    vlanId: int
  }
}
Property Values
Microsoft.Network/expressRouteCircuits/peerings
| Name | Description | Value | 
|---|---|---|
| name | The resource name | string (required) | 
| parent | In Bicep, you can specify the parent resource for a child resource. You only need to add this property when the child resource is declared outside of the parent resource. For more information, see Child resource outside parent resource. | Symbolic name for resource of type: expressRouteCircuits | 
| properties | Properties of the express route circuit peering. | ExpressRouteCircuitPeeringPropertiesFormat | 
ExpressRouteCircuitConnection
| Name | Description | Value | 
|---|---|---|
| id | Resource ID. | string | 
| name | The name of the resource that is unique within a resource group. This name can be used to access the resource. | string | 
| properties | Properties of the express route circuit connection. | ExpressRouteCircuitConnectionPropertiesFormat | 
ExpressRouteCircuitConnectionPropertiesFormat
| Name | Description | Value | 
|---|---|---|
| addressPrefix | /29 IP address space to carve out Customer addresses for tunnels. | string | 
| authorizationKey | The authorization key. | string | 
| expressRouteCircuitPeering | Reference to Express Route Circuit Private Peering Resource of the circuit initiating connection. | SubResource | 
| ipv6CircuitConnectionConfig | IPv6 Address PrefixProperties of the express route circuit connection. | Ipv6CircuitConnectionConfig | 
| peerExpressRouteCircuitPeering | Reference to Express Route Circuit Private Peering Resource of the peered circuit. | SubResource | 
ExpressRouteCircuitPeeringConfig
| Name | Description | Value | 
|---|---|---|
| advertisedCommunities | The communities of bgp peering. Specified for microsoft peering. | string[] | 
| advertisedPublicPrefixes | The reference to AdvertisedPublicPrefixes. | string[] | 
| customerASN | The CustomerASN of the peering. | int | 
| legacyMode | The legacy mode of the peering. | int | 
| routingRegistryName | The RoutingRegistryName of the configuration. | string | 
ExpressRouteCircuitPeeringPropertiesFormat
| Name | Description | Value | 
|---|---|---|
| azureASN | The Azure ASN. | int | 
| connections | The list of circuit connections associated with Azure Private Peering for this circuit. | ExpressRouteCircuitConnection[] | 
| expressRouteConnection | The ExpressRoute connection. | ExpressRouteConnectionId | 
| gatewayManagerEtag | The GatewayManager Etag. | string | 
| ipv6PeeringConfig | The IPv6 peering configuration. | Ipv6ExpressRouteCircuitPeeringConfig | 
| microsoftPeeringConfig | The Microsoft peering configuration. | ExpressRouteCircuitPeeringConfig | 
| peerASN | The peer ASN. | int Constraints: Min value = 1 Max value = 4294967295 | 
| peeringType | The peering type. | 'AzurePrivatePeering' 'AzurePublicPeering' 'MicrosoftPeering' | 
| primaryAzurePort | The primary port. | string | 
| primaryPeerAddressPrefix | The primary address prefix. | string | 
| routeFilter | The reference to the RouteFilter resource. | SubResource | 
| secondaryAzurePort | The secondary port. | string | 
| secondaryPeerAddressPrefix | The secondary address prefix. | string | 
| sharedKey | The shared key. | string | 
| state | The peering state. | 'Disabled' 'Enabled' | 
| stats | The peering stats of express route circuit. | ExpressRouteCircuitStats | 
| vlanId | The VLAN ID. | int | 
ExpressRouteCircuitStats
| Name | Description | Value | 
|---|---|---|
| primarybytesIn | The Primary BytesIn of the peering. | int | 
| primarybytesOut | The primary BytesOut of the peering. | int | 
| secondarybytesIn | The secondary BytesIn of the peering. | int | 
| secondarybytesOut | The secondary BytesOut of the peering. | int | 
ExpressRouteConnectionId
| Name | Description | Value | 
|---|
Ipv6CircuitConnectionConfig
| Name | Description | Value | 
|---|---|---|
| addressPrefix | /125 IP address space to carve out customer addresses for global reach. | string | 
Ipv6ExpressRouteCircuitPeeringConfig
| Name | Description | Value | 
|---|---|---|
| microsoftPeeringConfig | The Microsoft peering configuration. | ExpressRouteCircuitPeeringConfig | 
| primaryPeerAddressPrefix | The primary address prefix. | string | 
| routeFilter | The reference to the RouteFilter resource. | SubResource | 
| secondaryPeerAddressPrefix | The secondary address prefix. | string | 
| state | The state of peering. | 'Disabled' 'Enabled' | 
SubResource
| Name | Description | Value | 
|---|---|---|
| id | Resource ID. | string | 
Usage Examples
Azure Quickstart Samples
The following Azure Quickstart templates contain Bicep samples for deploying this resource type.
| Bicep File | Description | 
|---|---|
| ExpressRoute circuit with private peering and Azure VNet | This template configure ExpressRoute Microsoft peering, deploy an Azure VNet with Expressroute gateway and link the VNet to the ExpressRoute circuit | 
ARM template resource definition
The expressRouteCircuits/peerings resource type can be deployed with operations that target:
For a list of changed properties in each API version, see change log.
Resource format
To create a Microsoft.Network/expressRouteCircuits/peerings resource, add the following JSON to your template.
{
  "type": "Microsoft.Network/expressRouteCircuits/peerings",
  "apiVersion": "2020-06-01",
  "name": "string",
  "properties": {
    "azureASN": "int",
    "connections": [
      {
        "id": "string",
        "name": "string",
        "properties": {
          "addressPrefix": "string",
          "authorizationKey": "string",
          "expressRouteCircuitPeering": {
            "id": "string"
          },
          "ipv6CircuitConnectionConfig": {
            "addressPrefix": "string"
          },
          "peerExpressRouteCircuitPeering": {
            "id": "string"
          }
        }
      }
    ],
    "expressRouteConnection": {
    },
    "gatewayManagerEtag": "string",
    "ipv6PeeringConfig": {
      "microsoftPeeringConfig": {
        "advertisedCommunities": [ "string" ],
        "advertisedPublicPrefixes": [ "string" ],
        "customerASN": "int",
        "legacyMode": "int",
        "routingRegistryName": "string"
      },
      "primaryPeerAddressPrefix": "string",
      "routeFilter": {
        "id": "string"
      },
      "secondaryPeerAddressPrefix": "string",
      "state": "string"
    },
    "microsoftPeeringConfig": {
      "advertisedCommunities": [ "string" ],
      "advertisedPublicPrefixes": [ "string" ],
      "customerASN": "int",
      "legacyMode": "int",
      "routingRegistryName": "string"
    },
    "peerASN": "int",
    "peeringType": "string",
    "primaryAzurePort": "string",
    "primaryPeerAddressPrefix": "string",
    "routeFilter": {
      "id": "string"
    },
    "secondaryAzurePort": "string",
    "secondaryPeerAddressPrefix": "string",
    "sharedKey": "string",
    "state": "string",
    "stats": {
      "primarybytesIn": "int",
      "primarybytesOut": "int",
      "secondarybytesIn": "int",
      "secondarybytesOut": "int"
    },
    "vlanId": "int"
  }
}
Property Values
Microsoft.Network/expressRouteCircuits/peerings
| Name | Description | Value | 
|---|---|---|
| apiVersion | The api version | '2020-06-01' | 
| name | The resource name | string (required) | 
| properties | Properties of the express route circuit peering. | ExpressRouteCircuitPeeringPropertiesFormat | 
| type | The resource type | 'Microsoft.Network/expressRouteCircuits/peerings' | 
ExpressRouteCircuitConnection
| Name | Description | Value | 
|---|---|---|
| id | Resource ID. | string | 
| name | The name of the resource that is unique within a resource group. This name can be used to access the resource. | string | 
| properties | Properties of the express route circuit connection. | ExpressRouteCircuitConnectionPropertiesFormat | 
ExpressRouteCircuitConnectionPropertiesFormat
| Name | Description | Value | 
|---|---|---|
| addressPrefix | /29 IP address space to carve out Customer addresses for tunnels. | string | 
| authorizationKey | The authorization key. | string | 
| expressRouteCircuitPeering | Reference to Express Route Circuit Private Peering Resource of the circuit initiating connection. | SubResource | 
| ipv6CircuitConnectionConfig | IPv6 Address PrefixProperties of the express route circuit connection. | Ipv6CircuitConnectionConfig | 
| peerExpressRouteCircuitPeering | Reference to Express Route Circuit Private Peering Resource of the peered circuit. | SubResource | 
ExpressRouteCircuitPeeringConfig
| Name | Description | Value | 
|---|---|---|
| advertisedCommunities | The communities of bgp peering. Specified for microsoft peering. | string[] | 
| advertisedPublicPrefixes | The reference to AdvertisedPublicPrefixes. | string[] | 
| customerASN | The CustomerASN of the peering. | int | 
| legacyMode | The legacy mode of the peering. | int | 
| routingRegistryName | The RoutingRegistryName of the configuration. | string | 
ExpressRouteCircuitPeeringPropertiesFormat
| Name | Description | Value | 
|---|---|---|
| azureASN | The Azure ASN. | int | 
| connections | The list of circuit connections associated with Azure Private Peering for this circuit. | ExpressRouteCircuitConnection[] | 
| expressRouteConnection | The ExpressRoute connection. | ExpressRouteConnectionId | 
| gatewayManagerEtag | The GatewayManager Etag. | string | 
| ipv6PeeringConfig | The IPv6 peering configuration. | Ipv6ExpressRouteCircuitPeeringConfig | 
| microsoftPeeringConfig | The Microsoft peering configuration. | ExpressRouteCircuitPeeringConfig | 
| peerASN | The peer ASN. | int Constraints: Min value = 1 Max value = 4294967295 | 
| peeringType | The peering type. | 'AzurePrivatePeering' 'AzurePublicPeering' 'MicrosoftPeering' | 
| primaryAzurePort | The primary port. | string | 
| primaryPeerAddressPrefix | The primary address prefix. | string | 
| routeFilter | The reference to the RouteFilter resource. | SubResource | 
| secondaryAzurePort | The secondary port. | string | 
| secondaryPeerAddressPrefix | The secondary address prefix. | string | 
| sharedKey | The shared key. | string | 
| state | The peering state. | 'Disabled' 'Enabled' | 
| stats | The peering stats of express route circuit. | ExpressRouteCircuitStats | 
| vlanId | The VLAN ID. | int | 
ExpressRouteCircuitStats
| Name | Description | Value | 
|---|---|---|
| primarybytesIn | The Primary BytesIn of the peering. | int | 
| primarybytesOut | The primary BytesOut of the peering. | int | 
| secondarybytesIn | The secondary BytesIn of the peering. | int | 
| secondarybytesOut | The secondary BytesOut of the peering. | int | 
ExpressRouteConnectionId
| Name | Description | Value | 
|---|
Ipv6CircuitConnectionConfig
| Name | Description | Value | 
|---|---|---|
| addressPrefix | /125 IP address space to carve out customer addresses for global reach. | string | 
Ipv6ExpressRouteCircuitPeeringConfig
| Name | Description | Value | 
|---|---|---|
| microsoftPeeringConfig | The Microsoft peering configuration. | ExpressRouteCircuitPeeringConfig | 
| primaryPeerAddressPrefix | The primary address prefix. | string | 
| routeFilter | The reference to the RouteFilter resource. | SubResource | 
| secondaryPeerAddressPrefix | The secondary address prefix. | string | 
| state | The state of peering. | 'Disabled' 'Enabled' | 
SubResource
| Name | Description | Value | 
|---|---|---|
| id | Resource ID. | string | 
Usage Examples
Azure Quickstart Templates
The following Azure Quickstart templates deploy this resource type.
| Template | Description | 
|---|---|
| ExpressRoute circuit with private peering and Azure VNet | This template configure ExpressRoute Microsoft peering, deploy an Azure VNet with Expressroute gateway and link the VNet to the ExpressRoute circuit | 
Terraform (AzAPI provider) resource definition
The expressRouteCircuits/peerings resource type can be deployed with operations that target:
For a list of changed properties in each API version, see change log.
Resource format
To create a Microsoft.Network/expressRouteCircuits/peerings resource, add the following Terraform to your template.
resource "azapi_resource" "symbolicname" {
  type = "Microsoft.Network/expressRouteCircuits/peerings@2020-06-01"
  name = "string"
  parent_id = "string"
  body = {
    properties = {
      azureASN = int
      connections = [
        {
          id = "string"
          name = "string"
          properties = {
            addressPrefix = "string"
            authorizationKey = "string"
            expressRouteCircuitPeering = {
              id = "string"
            }
            ipv6CircuitConnectionConfig = {
              addressPrefix = "string"
            }
            peerExpressRouteCircuitPeering = {
              id = "string"
            }
          }
        }
      ]
      expressRouteConnection = {
      }
      gatewayManagerEtag = "string"
      ipv6PeeringConfig = {
        microsoftPeeringConfig = {
          advertisedCommunities = [
            "string"
          ]
          advertisedPublicPrefixes = [
            "string"
          ]
          customerASN = int
          legacyMode = int
          routingRegistryName = "string"
        }
        primaryPeerAddressPrefix = "string"
        routeFilter = {
          id = "string"
        }
        secondaryPeerAddressPrefix = "string"
        state = "string"
      }
      microsoftPeeringConfig = {
        advertisedCommunities = [
          "string"
        ]
        advertisedPublicPrefixes = [
          "string"
        ]
        customerASN = int
        legacyMode = int
        routingRegistryName = "string"
      }
      peerASN = int
      peeringType = "string"
      primaryAzurePort = "string"
      primaryPeerAddressPrefix = "string"
      routeFilter = {
        id = "string"
      }
      secondaryAzurePort = "string"
      secondaryPeerAddressPrefix = "string"
      sharedKey = "string"
      state = "string"
      stats = {
        primarybytesIn = int
        primarybytesOut = int
        secondarybytesIn = int
        secondarybytesOut = int
      }
      vlanId = int
    }
  }
}
Property Values
Microsoft.Network/expressRouteCircuits/peerings
| Name | Description | Value | 
|---|---|---|
| name | The resource name | string (required) | 
| parent_id | The ID of the resource that is the parent for this resource. | ID for resource of type: expressRouteCircuits | 
| properties | Properties of the express route circuit peering. | ExpressRouteCircuitPeeringPropertiesFormat | 
| type | The resource type | "Microsoft.Network/expressRouteCircuits/peerings@2020-06-01" | 
ExpressRouteCircuitConnection
| Name | Description | Value | 
|---|---|---|
| id | Resource ID. | string | 
| name | The name of the resource that is unique within a resource group. This name can be used to access the resource. | string | 
| properties | Properties of the express route circuit connection. | ExpressRouteCircuitConnectionPropertiesFormat | 
ExpressRouteCircuitConnectionPropertiesFormat
| Name | Description | Value | 
|---|---|---|
| addressPrefix | /29 IP address space to carve out Customer addresses for tunnels. | string | 
| authorizationKey | The authorization key. | string | 
| expressRouteCircuitPeering | Reference to Express Route Circuit Private Peering Resource of the circuit initiating connection. | SubResource | 
| ipv6CircuitConnectionConfig | IPv6 Address PrefixProperties of the express route circuit connection. | Ipv6CircuitConnectionConfig | 
| peerExpressRouteCircuitPeering | Reference to Express Route Circuit Private Peering Resource of the peered circuit. | SubResource | 
ExpressRouteCircuitPeeringConfig
| Name | Description | Value | 
|---|---|---|
| advertisedCommunities | The communities of bgp peering. Specified for microsoft peering. | string[] | 
| advertisedPublicPrefixes | The reference to AdvertisedPublicPrefixes. | string[] | 
| customerASN | The CustomerASN of the peering. | int | 
| legacyMode | The legacy mode of the peering. | int | 
| routingRegistryName | The RoutingRegistryName of the configuration. | string | 
ExpressRouteCircuitPeeringPropertiesFormat
| Name | Description | Value | 
|---|---|---|
| azureASN | The Azure ASN. | int | 
| connections | The list of circuit connections associated with Azure Private Peering for this circuit. | ExpressRouteCircuitConnection[] | 
| expressRouteConnection | The ExpressRoute connection. | ExpressRouteConnectionId | 
| gatewayManagerEtag | The GatewayManager Etag. | string | 
| ipv6PeeringConfig | The IPv6 peering configuration. | Ipv6ExpressRouteCircuitPeeringConfig | 
| microsoftPeeringConfig | The Microsoft peering configuration. | ExpressRouteCircuitPeeringConfig | 
| peerASN | The peer ASN. | int Constraints: Min value = 1 Max value = 4294967295 | 
| peeringType | The peering type. | 'AzurePrivatePeering' 'AzurePublicPeering' 'MicrosoftPeering' | 
| primaryAzurePort | The primary port. | string | 
| primaryPeerAddressPrefix | The primary address prefix. | string | 
| routeFilter | The reference to the RouteFilter resource. | SubResource | 
| secondaryAzurePort | The secondary port. | string | 
| secondaryPeerAddressPrefix | The secondary address prefix. | string | 
| sharedKey | The shared key. | string | 
| state | The peering state. | 'Disabled' 'Enabled' | 
| stats | The peering stats of express route circuit. | ExpressRouteCircuitStats | 
| vlanId | The VLAN ID. | int | 
ExpressRouteCircuitStats
| Name | Description | Value | 
|---|---|---|
| primarybytesIn | The Primary BytesIn of the peering. | int | 
| primarybytesOut | The primary BytesOut of the peering. | int | 
| secondarybytesIn | The secondary BytesIn of the peering. | int | 
| secondarybytesOut | The secondary BytesOut of the peering. | int | 
ExpressRouteConnectionId
| Name | Description | Value | 
|---|
Ipv6CircuitConnectionConfig
| Name | Description | Value | 
|---|---|---|
| addressPrefix | /125 IP address space to carve out customer addresses for global reach. | string | 
Ipv6ExpressRouteCircuitPeeringConfig
| Name | Description | Value | 
|---|---|---|
| microsoftPeeringConfig | The Microsoft peering configuration. | ExpressRouteCircuitPeeringConfig | 
| primaryPeerAddressPrefix | The primary address prefix. | string | 
| routeFilter | The reference to the RouteFilter resource. | SubResource | 
| secondaryPeerAddressPrefix | The secondary address prefix. | string | 
| state | The state of peering. | 'Disabled' 'Enabled' | 
SubResource
| Name | Description | Value | 
|---|---|---|
| id | Resource ID. | string | 
Usage Examples
Terraform Samples
A basic example of deploying ExpressRoute Circuit Peering.
terraform {
  required_providers {
    azapi = {
      source = "Azure/azapi"
    }
  }
}
provider "azapi" {
  skip_provider_registration = false
}
variable "resource_name" {
  type    = string
  default = "acctest0001"
}
variable "___location" {
  type    = string
  default = "westeurope"
}
variable "express_route_shared_key" {
  type        = string
  description = "The shared key for the Express Route circuit peering"
  sensitive   = true
}
resource "azapi_resource" "resourceGroup" {
  type     = "Microsoft.Resources/resourceGroups@2020-06-01"
  name     = var.resource_name
  ___location = var.___location
}
resource "azapi_resource" "ExpressRoutePort" {
  type      = "Microsoft.Network/ExpressRoutePorts@2022-07-01"
  parent_id = azapi_resource.resourceGroup.id
  name      = var.resource_name
  ___location  = var.___location
  body = {
    properties = {
      bandwidthInGbps = 10
      encapsulation   = "Dot1Q"
      peeringLocation = "CDC-Canberra"
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}
resource "azapi_resource" "expressRouteCircuit" {
  type      = "Microsoft.Network/expressRouteCircuits@2022-07-01"
  parent_id = azapi_resource.resourceGroup.id
  name      = var.resource_name
  ___location  = var.___location
  body = {
    properties = {
      authorizationKey = ""
      bandwidthInGbps  = 5
      expressRoutePort = {
        id = azapi_resource.ExpressRoutePort.id
      }
    }
    sku = {
      family = "MeteredData"
      name   = "Premium_MeteredData"
      tier   = "Premium"
    }
  }
  schema_validation_enabled = false
  ignore_casing             = true
  response_export_values    = ["*"]
}
resource "azapi_resource" "peering" {
  type      = "Microsoft.Network/expressRouteCircuits/peerings@2022-07-01"
  parent_id = azapi_resource.expressRouteCircuit.id
  name      = "AzurePrivatePeering"
  body = {
    properties = {
      azureASN                   = 12076
      gatewayManagerEtag         = ""
      peerASN                    = 100
      peeringType                = "AzurePrivatePeering"
      primaryPeerAddressPrefix   = "192.168.1.0/30"
      secondaryPeerAddressPrefix = "192.168.2.0/30"
      sharedKey                  = var.express_route_shared_key
      state                      = "Enabled"
      vlanId                     = 100
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}