Share via


Microsoft.Network expressRouteCircuits/peerings 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@2015-05-01-preview' = {
  parent: resourceSymbolicName
  etag: 'string'
  name: 'string'
  properties: {
    azureASN: int
    microsoftPeeringConfig: {
      advertisedPublicPrefixes: [
        'string'
      ]
      advertisedPublicPrefixesState: 'string'
      customerASN: int
      routingRegistryName: 'string'
    }
    peerASN: int
    peeringType: 'string'
    primaryAzurePort: 'string'
    primaryPeerAddressPrefix: 'string'
    provisioningState: 'string'
    secondaryAzurePort: 'string'
    secondaryPeerAddressPrefix: 'string'
    sharedKey: 'string'
    state: 'string'
    stats: {
      bytesIn: int
      bytesOut: int
    }
    vlanId: int
  }
}

Property Values

Microsoft.Network/expressRouteCircuits/peerings

Name Description Value
etag A unique read-only string that changes whenever the resource is updated string
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 ExpressRouteCircuitPeeringPropertiesFormat

ExpressRouteCircuitPeeringConfig

Name Description Value
advertisedPublicPrefixes Gets or sets the reference of AdvertisedPublicPrefixes string[]
advertisedPublicPrefixesState Gets or sets AdvertisedPublicPrefixState of the Peering resource 'Configured'
'Configuring'
'NotConfigured'
'ValidationNeeded'
customerASN Gets or Sets CustomerAsn of the peering. int
routingRegistryName Gets or Sets RoutingRegistryName of the config. string

ExpressRouteCircuitPeeringPropertiesFormat

Name Description Value
azureASN Gets or sets the azure ASN int
microsoftPeeringConfig Gets or sets the Microsoft peering config ExpressRouteCircuitPeeringConfig
peerASN Gets or sets the peer ASN int
peeringType Gets or sets PeeringType 'AzurePrivatePeering'
'AzurePublicPeering'
'MicrosoftPeering'
primaryAzurePort Gets or sets the primary port string
primaryPeerAddressPrefix Gets or sets the primary address prefix string
provisioningState Gets or sets Provisioning state of the PublicIP resource Updating/Deleting/Failed string
secondaryAzurePort Gets or sets the secondary port string
secondaryPeerAddressPrefix Gets or sets the secondary address prefix string
sharedKey Gets or sets the shared key string
state Gets or sets state of Peering 'Disabled'
'Enabled'
stats Gets or peering stats ExpressRouteCircuitStats
vlanId Gets or sets the vlan id int

ExpressRouteCircuitStats

Name Description Value
bytesIn Gets BytesIn of the peering. int
bytesOut Gets BytesOut of the peering. int

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": "2015-05-01-preview",
  "name": "string",
  "etag": "string",
  "properties": {
    "azureASN": "int",
    "microsoftPeeringConfig": {
      "advertisedPublicPrefixes": [ "string" ],
      "advertisedPublicPrefixesState": "string",
      "customerASN": "int",
      "routingRegistryName": "string"
    },
    "peerASN": "int",
    "peeringType": "string",
    "primaryAzurePort": "string",
    "primaryPeerAddressPrefix": "string",
    "provisioningState": "string",
    "secondaryAzurePort": "string",
    "secondaryPeerAddressPrefix": "string",
    "sharedKey": "string",
    "state": "string",
    "stats": {
      "bytesIn": "int",
      "bytesOut": "int"
    },
    "vlanId": "int"
  }
}

Property Values

Microsoft.Network/expressRouteCircuits/peerings

Name Description Value
apiVersion The api version '2015-05-01-preview'
etag A unique read-only string that changes whenever the resource is updated string
name The resource name string (required)
properties ExpressRouteCircuitPeeringPropertiesFormat
type The resource type 'Microsoft.Network/expressRouteCircuits/peerings'

ExpressRouteCircuitPeeringConfig

Name Description Value
advertisedPublicPrefixes Gets or sets the reference of AdvertisedPublicPrefixes string[]
advertisedPublicPrefixesState Gets or sets AdvertisedPublicPrefixState of the Peering resource 'Configured'
'Configuring'
'NotConfigured'
'ValidationNeeded'
customerASN Gets or Sets CustomerAsn of the peering. int
routingRegistryName Gets or Sets RoutingRegistryName of the config. string

ExpressRouteCircuitPeeringPropertiesFormat

Name Description Value
azureASN Gets or sets the azure ASN int
microsoftPeeringConfig Gets or sets the Microsoft peering config ExpressRouteCircuitPeeringConfig
peerASN Gets or sets the peer ASN int
peeringType Gets or sets PeeringType 'AzurePrivatePeering'
'AzurePublicPeering'
'MicrosoftPeering'
primaryAzurePort Gets or sets the primary port string
primaryPeerAddressPrefix Gets or sets the primary address prefix string
provisioningState Gets or sets Provisioning state of the PublicIP resource Updating/Deleting/Failed string
secondaryAzurePort Gets or sets the secondary port string
secondaryPeerAddressPrefix Gets or sets the secondary address prefix string
sharedKey Gets or sets the shared key string
state Gets or sets state of Peering 'Disabled'
'Enabled'
stats Gets or peering stats ExpressRouteCircuitStats
vlanId Gets or sets the vlan id int

ExpressRouteCircuitStats

Name Description Value
bytesIn Gets BytesIn of the peering. int
bytesOut Gets BytesOut of the peering. int

Usage Examples

Azure Quickstart Templates

The following Azure Quickstart templates deploy this resource type.

Template Description
ExpressRoute circuit with private peering and Azure VNet

Deploy to Azure
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@2015-05-01-preview"
  name = "string"
  parent_id = "string"
  body = {
    etag = "string"
    properties = {
      azureASN = int
      microsoftPeeringConfig = {
        advertisedPublicPrefixes = [
          "string"
        ]
        advertisedPublicPrefixesState = "string"
        customerASN = int
        routingRegistryName = "string"
      }
      peerASN = int
      peeringType = "string"
      primaryAzurePort = "string"
      primaryPeerAddressPrefix = "string"
      provisioningState = "string"
      secondaryAzurePort = "string"
      secondaryPeerAddressPrefix = "string"
      sharedKey = "string"
      state = "string"
      stats = {
        bytesIn = int
        bytesOut = int
      }
      vlanId = int
    }
  }
}

Property Values

Microsoft.Network/expressRouteCircuits/peerings

Name Description Value
etag A unique read-only string that changes whenever the resource is updated string
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 ExpressRouteCircuitPeeringPropertiesFormat
type The resource type "Microsoft.Network/expressRouteCircuits/peerings@2015-05-01-preview"

ExpressRouteCircuitPeeringConfig

Name Description Value
advertisedPublicPrefixes Gets or sets the reference of AdvertisedPublicPrefixes string[]
advertisedPublicPrefixesState Gets or sets AdvertisedPublicPrefixState of the Peering resource 'Configured'
'Configuring'
'NotConfigured'
'ValidationNeeded'
customerASN Gets or Sets CustomerAsn of the peering. int
routingRegistryName Gets or Sets RoutingRegistryName of the config. string

ExpressRouteCircuitPeeringPropertiesFormat

Name Description Value
azureASN Gets or sets the azure ASN int
microsoftPeeringConfig Gets or sets the Microsoft peering config ExpressRouteCircuitPeeringConfig
peerASN Gets or sets the peer ASN int
peeringType Gets or sets PeeringType 'AzurePrivatePeering'
'AzurePublicPeering'
'MicrosoftPeering'
primaryAzurePort Gets or sets the primary port string
primaryPeerAddressPrefix Gets or sets the primary address prefix string
provisioningState Gets or sets Provisioning state of the PublicIP resource Updating/Deleting/Failed string
secondaryAzurePort Gets or sets the secondary port string
secondaryPeerAddressPrefix Gets or sets the secondary address prefix string
sharedKey Gets or sets the shared key string
state Gets or sets state of Peering 'Disabled'
'Enabled'
stats Gets or peering stats ExpressRouteCircuitStats
vlanId Gets or sets the vlan id int

ExpressRouteCircuitStats

Name Description Value
bytesIn Gets BytesIn of the peering. int
bytesOut Gets BytesOut of the peering. int

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    = ["*"]
}