Compartilhar via


Microsoft.Network virtualHubs 2020-04-01

Bicep resource definition

The virtualHubs 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/virtualHubs resource, add the following Bicep to your template.

resource symbolicname 'Microsoft.Network/virtualHubs@2020-04-01' = {
  location: 'string'
  name: 'string'
  properties: {
    addressPrefix: 'string'
    azureFirewall: {
      id: 'string'
    }
    expressRouteGateway: {
      id: 'string'
    }
    p2SVpnGateway: {
      id: 'string'
    }
    routeTable: {
      routes: [
        {
          addressPrefixes: [
            'string'
          ]
          nextHopIpAddress: 'string'
        }
      ]
    }
    securityPartnerProvider: {
      id: 'string'
    }
    securityProviderName: 'string'
    sku: 'string'
    virtualHubRouteTableV2s: [
      {
        id: 'string'
        name: 'string'
        properties: {
          attachedConnections: [
            'string'
          ]
          routes: [
            {
              destinations: [
                'string'
              ]
              destinationType: 'string'
              nextHops: [
                'string'
              ]
              nextHopType: 'string'
            }
          ]
        }
      }
    ]
    virtualNetworkConnections: [
      {
        id: 'string'
        name: 'string'
        properties: {
          allowHubToRemoteVnetTransit: bool
          allowRemoteVnetToUseHubVnetGateways: bool
          enableInternetSecurity: bool
          remoteVirtualNetwork: {
            id: 'string'
          }
          routingConfiguration: {
            associatedRouteTable: {
              id: 'string'
            }
            propagatedRouteTables: {
              ids: [
                {
                  id: 'string'
                }
              ]
              labels: [
                'string'
              ]
            }
            vnetRoutes: {
              staticRoutes: [
                {
                  addressPrefixes: [
                    'string'
                  ]
                  name: 'string'
                  nextHopIpAddress: 'string'
                }
              ]
            }
          }
        }
      }
    ]
    virtualWan: {
      id: 'string'
    }
    vpnGateway: {
      id: 'string'
    }
  }
  tags: {
    {customized property}: 'string'
  }
}

Property values

HubVirtualNetworkConnection

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 hub virtual network connection. HubVirtualNetworkConnectionProperties

HubVirtualNetworkConnectionProperties

Name Description Value
allowHubToRemoteVnetTransit VirtualHub to RemoteVnet transit to enabled or not. bool
allowRemoteVnetToUseHubVnetGateways Allow RemoteVnet to use Virtual Hub's gateways. bool
enableInternetSecurity Enable internet security. bool
remoteVirtualNetwork Reference to the remote virtual network. SubResource
routingConfiguration The Routing Configuration indicating the associated and propagated route tables on this connection. RoutingConfiguration

Microsoft.Network/virtualHubs

Name Description Value
location Resource location. string
name The resource name string (required)
properties Properties of the virtual hub. VirtualHubProperties
tags Resource tags Dictionary of tag names and values. See Tags in templates

PropagatedRouteTable

Name Description Value
ids The list of resource ids of all the RouteTables. SubResource[]
labels The list of labels. string[]

ResourceTags

Name Description Value

RoutingConfiguration

Name Description Value
associatedRouteTable The resource id RouteTable associated with this RoutingConfiguration. SubResource
propagatedRouteTables The list of RouteTables to advertise the routes to. PropagatedRouteTable
vnetRoutes List of routes that control routing from VirtualHub into a virtual network connection. VnetRoute

StaticRoute

Name Description Value
addressPrefixes List of all address prefixes. string[]
name The name of the StaticRoute that is unique within a VnetRoute. string
nextHopIpAddress The ip address of the next hop. string

SubResource

Name Description Value
id Resource ID. string

VirtualHubProperties

Name Description Value
addressPrefix Address-prefix for this VirtualHub. string
azureFirewall The azureFirewall associated with this VirtualHub. SubResource
expressRouteGateway The expressRouteGateway associated with this VirtualHub. SubResource
p2SVpnGateway The P2SVpnGateway associated with this VirtualHub. SubResource
routeTable The routeTable associated with this virtual hub. VirtualHubRouteTable
securityPartnerProvider The securityPartnerProvider associated with this VirtualHub. SubResource
securityProviderName The Security Provider name. string
sku The sku of this VirtualHub. string
virtualHubRouteTableV2s List of all virtual hub route table v2s associated with this VirtualHub. VirtualHubRouteTableV2[]
virtualNetworkConnections List of all vnet connections with this VirtualHub. HubVirtualNetworkConnection[]
virtualWan The VirtualWAN to which the VirtualHub belongs. SubResource
vpnGateway The VpnGateway associated with this VirtualHub. SubResource

VirtualHubRoute

Name Description Value
addressPrefixes List of all addressPrefixes. string[]
nextHopIpAddress NextHop ip address. string

VirtualHubRouteTable

Name Description Value
routes List of all routes. VirtualHubRoute[]

VirtualHubRouteTableV2

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 virtual hub route table v2. VirtualHubRouteTableV2Properties

VirtualHubRouteTableV2Properties

Name Description Value
attachedConnections List of all connections attached to this route table v2. string[]
routes List of all routes. VirtualHubRouteV2[]

VirtualHubRouteV2

Name Description Value
destinations List of all destinations. string[]
destinationType The type of destinations. string
nextHops NextHops ip address. string[]
nextHopType The type of next hops. string

VnetRoute

Name Description Value
staticRoutes List of all Static Routes. StaticRoute[]

Quickstart samples

The following quickstart samples deploy this resource type.

Bicep File Description
Create a Route Server in a New Subnet This template deploys a Route Server into a subnet named RouteServerSubnet.
Creates Virtual WAN resources This template allows you to create virtual WAN resources including Virtual WAN, Virtual Hub, VPN Gateway, VPN Site and a VPN Connecton.
Secured virtual hubs This template creates a secured virtual hub using Azure Firewall to secure your cloud network traffic destined to the Internet.

ARM template resource definition

The virtualHubs 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/virtualHubs resource, add the following JSON to your template.

{
  "type": "Microsoft.Network/virtualHubs",
  "apiVersion": "2020-04-01",
  "name": "string",
  "location": "string",
  "properties": {
    "addressPrefix": "string",
    "azureFirewall": {
      "id": "string"
    },
    "expressRouteGateway": {
      "id": "string"
    },
    "p2SVpnGateway": {
      "id": "string"
    },
    "routeTable": {
      "routes": [
        {
          "addressPrefixes": [ "string" ],
          "nextHopIpAddress": "string"
        }
      ]
    },
    "securityPartnerProvider": {
      "id": "string"
    },
    "securityProviderName": "string",
    "sku": "string",
    "virtualHubRouteTableV2s": [
      {
        "id": "string",
        "name": "string",
        "properties": {
          "attachedConnections": [ "string" ],
          "routes": [
            {
              "destinations": [ "string" ],
              "destinationType": "string",
              "nextHops": [ "string" ],
              "nextHopType": "string"
            }
          ]
        }
      }
    ],
    "virtualNetworkConnections": [
      {
        "id": "string",
        "name": "string",
        "properties": {
          "allowHubToRemoteVnetTransit": "bool",
          "allowRemoteVnetToUseHubVnetGateways": "bool",
          "enableInternetSecurity": "bool",
          "remoteVirtualNetwork": {
            "id": "string"
          },
          "routingConfiguration": {
            "associatedRouteTable": {
              "id": "string"
            },
            "propagatedRouteTables": {
              "ids": [
                {
                  "id": "string"
                }
              ],
              "labels": [ "string" ]
            },
            "vnetRoutes": {
              "staticRoutes": [
                {
                  "addressPrefixes": [ "string" ],
                  "name": "string",
                  "nextHopIpAddress": "string"
                }
              ]
            }
          }
        }
      }
    ],
    "virtualWan": {
      "id": "string"
    },
    "vpnGateway": {
      "id": "string"
    }
  },
  "tags": {
    "{customized property}": "string"
  }
}

Property values

HubVirtualNetworkConnection

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 hub virtual network connection. HubVirtualNetworkConnectionProperties

HubVirtualNetworkConnectionProperties

Name Description Value
allowHubToRemoteVnetTransit VirtualHub to RemoteVnet transit to enabled or not. bool
allowRemoteVnetToUseHubVnetGateways Allow RemoteVnet to use Virtual Hub's gateways. bool
enableInternetSecurity Enable internet security. bool
remoteVirtualNetwork Reference to the remote virtual network. SubResource
routingConfiguration The Routing Configuration indicating the associated and propagated route tables on this connection. RoutingConfiguration

Microsoft.Network/virtualHubs

Name Description Value
apiVersion The api version '2020-04-01'
location Resource location. string
name The resource name string (required)
properties Properties of the virtual hub. VirtualHubProperties
tags Resource tags Dictionary of tag names and values. See Tags in templates
type The resource type 'Microsoft.Network/virtualHubs'

PropagatedRouteTable

Name Description Value
ids The list of resource ids of all the RouteTables. SubResource[]
labels The list of labels. string[]

ResourceTags

Name Description Value

RoutingConfiguration

Name Description Value
associatedRouteTable The resource id RouteTable associated with this RoutingConfiguration. SubResource
propagatedRouteTables The list of RouteTables to advertise the routes to. PropagatedRouteTable
vnetRoutes List of routes that control routing from VirtualHub into a virtual network connection. VnetRoute

StaticRoute

Name Description Value
addressPrefixes List of all address prefixes. string[]
name The name of the StaticRoute that is unique within a VnetRoute. string
nextHopIpAddress The ip address of the next hop. string

SubResource

Name Description Value
id Resource ID. string

VirtualHubProperties

Name Description Value
addressPrefix Address-prefix for this VirtualHub. string
azureFirewall The azureFirewall associated with this VirtualHub. SubResource
expressRouteGateway The expressRouteGateway associated with this VirtualHub. SubResource
p2SVpnGateway The P2SVpnGateway associated with this VirtualHub. SubResource
routeTable The routeTable associated with this virtual hub. VirtualHubRouteTable
securityPartnerProvider The securityPartnerProvider associated with this VirtualHub. SubResource
securityProviderName The Security Provider name. string
sku The sku of this VirtualHub. string
virtualHubRouteTableV2s List of all virtual hub route table v2s associated with this VirtualHub. VirtualHubRouteTableV2[]
virtualNetworkConnections List of all vnet connections with this VirtualHub. HubVirtualNetworkConnection[]
virtualWan The VirtualWAN to which the VirtualHub belongs. SubResource
vpnGateway The VpnGateway associated with this VirtualHub. SubResource

VirtualHubRoute

Name Description Value
addressPrefixes List of all addressPrefixes. string[]
nextHopIpAddress NextHop ip address. string

VirtualHubRouteTable

Name Description Value
routes List of all routes. VirtualHubRoute[]

VirtualHubRouteTableV2

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 virtual hub route table v2. VirtualHubRouteTableV2Properties

VirtualHubRouteTableV2Properties

Name Description Value
attachedConnections List of all connections attached to this route table v2. string[]
routes List of all routes. VirtualHubRouteV2[]

VirtualHubRouteV2

Name Description Value
destinations List of all destinations. string[]
destinationType The type of destinations. string
nextHops NextHops ip address. string[]
nextHopType The type of next hops. string

VnetRoute

Name Description Value
staticRoutes List of all Static Routes. StaticRoute[]

Quickstart templates

The following quickstart templates deploy this resource type.

Template Description
Azure Route Server in BGP peering with Quagga

Deploy to Azure
This template deploys a Router Server and Ubuntu VM with Quagga. Two external BGP sessions are established between the Router Server and Quagga. Installation and configuration of Quagga is executed by Azure custom script extension for linux
Azure Virtual WAN (vWAN) Multi-Hub Deployment

Deploy to Azure
This template allows you to create an Azure Virtual WAN (vWAN) multi-hub deployment including all gateways and VNET connections.
Azure vWAN Multi-Hub Deployment with Custom Routing Tables

Deploy to Azure
This template allows you to create an Azure Virtual WAN (vWAN) multi-hub deployment, including all gateways and VNET connections, and demonstrate the usage of Route Tables for custom routing.
Create a Route Server in a New Subnet

Deploy to Azure
This template deploys a Route Server into a subnet named RouteServerSubnet.
Creates Virtual WAN resources

Deploy to Azure
This template allows you to create virtual WAN resources including Virtual WAN, Virtual Hub, VPN Gateway, VPN Site and a VPN Connecton.
Secured virtual hubs

Deploy to Azure
This template creates a secured virtual hub using Azure Firewall to secure your cloud network traffic destined to the Internet.
vWAN P2S deployment with multi address pool and user groups

Deploy to Azure
This template deploys Azure Virtual WAN (vWAN) with a P2S configured with multiple address pool and user groups

Terraform (AzAPI provider) resource definition

The virtualHubs resource type can be deployed with operations that target:

  • Resource groups

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.Network/virtualHubs resource, add the following Terraform to your template.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.Network/virtualHubs@2020-04-01"
  name = "string"
  location = "string"
  body = jsonencode({
    properties = {
      addressPrefix = "string"
      azureFirewall = {
        id = "string"
      }
      expressRouteGateway = {
        id = "string"
      }
      p2SVpnGateway = {
        id = "string"
      }
      routeTable = {
        routes = [
          {
            addressPrefixes = [
              "string"
            ]
            nextHopIpAddress = "string"
          }
        ]
      }
      securityPartnerProvider = {
        id = "string"
      }
      securityProviderName = "string"
      sku = "string"
      virtualHubRouteTableV2s = [
        {
          id = "string"
          name = "string"
          properties = {
            attachedConnections = [
              "string"
            ]
            routes = [
              {
                destinations = [
                  "string"
                ]
                destinationType = "string"
                nextHops = [
                  "string"
                ]
                nextHopType = "string"
              }
            ]
          }
        }
      ]
      virtualNetworkConnections = [
        {
          id = "string"
          name = "string"
          properties = {
            allowHubToRemoteVnetTransit = bool
            allowRemoteVnetToUseHubVnetGateways = bool
            enableInternetSecurity = bool
            remoteVirtualNetwork = {
              id = "string"
            }
            routingConfiguration = {
              associatedRouteTable = {
                id = "string"
              }
              propagatedRouteTables = {
                ids = [
                  {
                    id = "string"
                  }
                ]
                labels = [
                  "string"
                ]
              }
              vnetRoutes = {
                staticRoutes = [
                  {
                    addressPrefixes = [
                      "string"
                    ]
                    name = "string"
                    nextHopIpAddress = "string"
                  }
                ]
              }
            }
          }
        }
      ]
      virtualWan = {
        id = "string"
      }
      vpnGateway = {
        id = "string"
      }
    }
  })
  tags = {
    {customized property} = "string"
  }
}

Property values

HubVirtualNetworkConnection

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 hub virtual network connection. HubVirtualNetworkConnectionProperties

HubVirtualNetworkConnectionProperties

Name Description Value
allowHubToRemoteVnetTransit VirtualHub to RemoteVnet transit to enabled or not. bool
allowRemoteVnetToUseHubVnetGateways Allow RemoteVnet to use Virtual Hub's gateways. bool
enableInternetSecurity Enable internet security. bool
remoteVirtualNetwork Reference to the remote virtual network. SubResource
routingConfiguration The Routing Configuration indicating the associated and propagated route tables on this connection. RoutingConfiguration

Microsoft.Network/virtualHubs

Name Description Value
location Resource location. string
name The resource name string (required)
properties Properties of the virtual hub. VirtualHubProperties
tags Resource tags Dictionary of tag names and values.
type The resource type "Microsoft.Network/virtualHubs@2020-04-01"

PropagatedRouteTable

Name Description Value
ids The list of resource ids of all the RouteTables. SubResource[]
labels The list of labels. string[]

ResourceTags

Name Description Value

RoutingConfiguration

Name Description Value
associatedRouteTable The resource id RouteTable associated with this RoutingConfiguration. SubResource
propagatedRouteTables The list of RouteTables to advertise the routes to. PropagatedRouteTable
vnetRoutes List of routes that control routing from VirtualHub into a virtual network connection. VnetRoute

StaticRoute

Name Description Value
addressPrefixes List of all address prefixes. string[]
name The name of the StaticRoute that is unique within a VnetRoute. string
nextHopIpAddress The ip address of the next hop. string

SubResource

Name Description Value
id Resource ID. string

VirtualHubProperties

Name Description Value
addressPrefix Address-prefix for this VirtualHub. string
azureFirewall The azureFirewall associated with this VirtualHub. SubResource
expressRouteGateway The expressRouteGateway associated with this VirtualHub. SubResource
p2SVpnGateway The P2SVpnGateway associated with this VirtualHub. SubResource
routeTable The routeTable associated with this virtual hub. VirtualHubRouteTable
securityPartnerProvider The securityPartnerProvider associated with this VirtualHub. SubResource
securityProviderName The Security Provider name. string
sku The sku of this VirtualHub. string
virtualHubRouteTableV2s List of all virtual hub route table v2s associated with this VirtualHub. VirtualHubRouteTableV2[]
virtualNetworkConnections List of all vnet connections with this VirtualHub. HubVirtualNetworkConnection[]
virtualWan The VirtualWAN to which the VirtualHub belongs. SubResource
vpnGateway The VpnGateway associated with this VirtualHub. SubResource

VirtualHubRoute

Name Description Value
addressPrefixes List of all addressPrefixes. string[]
nextHopIpAddress NextHop ip address. string

VirtualHubRouteTable

Name Description Value
routes List of all routes. VirtualHubRoute[]

VirtualHubRouteTableV2

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 virtual hub route table v2. VirtualHubRouteTableV2Properties

VirtualHubRouteTableV2Properties

Name Description Value
attachedConnections List of all connections attached to this route table v2. string[]
routes List of all routes. VirtualHubRouteV2[]

VirtualHubRouteV2

Name Description Value
destinations List of all destinations. string[]
destinationType The type of destinations. string
nextHops NextHops ip address. string[]
nextHopType The type of next hops. string

VnetRoute

Name Description Value
staticRoutes List of all Static Routes. StaticRoute[]