Microsoft.Network virtualHubs 2019-06-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@2019-06-01' = {
  location: 'string'
  name: 'string'
  properties: {
    addressPrefix: 'string'
    expressRouteGateway: {
      id: 'string'
    }
    p2SVpnGateway: {
      id: 'string'
    }
    routeTable: {
      routes: [
        {
          addressPrefixes: [
            'string'
          ]
          nextHopIpAddress: 'string'
        }
      ]
    }
    virtualNetworkConnections: [
      {
        id: 'string'
        name: 'string'
        properties: {
          allowHubToRemoteVnetTransit: bool
          allowRemoteVnetToUseHubVnetGateways: bool
          enableInternetSecurity: bool
          remoteVirtualNetwork: {
            id: '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

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

ResourceTags

Name Description Value

SubResource

Name Description Value
id Resource ID. string

VirtualHubProperties

Name Description Value
addressPrefix Address-prefix for this VirtualHub. string
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
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[]

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": "2019-06-01",
  "name": "string",
  "location": "string",
  "properties": {
    "addressPrefix": "string",
    "expressRouteGateway": {
      "id": "string"
    },
    "p2SVpnGateway": {
      "id": "string"
    },
    "routeTable": {
      "routes": [
        {
          "addressPrefixes": [ "string" ],
          "nextHopIpAddress": "string"
        }
      ]
    },
    "virtualNetworkConnections": [
      {
        "id": "string",
        "name": "string",
        "properties": {
          "allowHubToRemoteVnetTransit": "bool",
          "allowRemoteVnetToUseHubVnetGateways": "bool",
          "enableInternetSecurity": "bool",
          "remoteVirtualNetwork": {
            "id": "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

Microsoft.Network/virtualHubs

Name Description Value
apiVersion The api version '2019-06-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'

ResourceTags

Name Description Value

SubResource

Name Description Value
id Resource ID. string

VirtualHubProperties

Name Description Value
addressPrefix Address-prefix for this VirtualHub. string
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
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[]

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@2019-06-01"
  name = "string"
  location = "string"
  body = jsonencode({
    properties = {
      addressPrefix = "string"
      expressRouteGateway = {
        id = "string"
      }
      p2SVpnGateway = {
        id = "string"
      }
      routeTable = {
        routes = [
          {
            addressPrefixes = [
              "string"
            ]
            nextHopIpAddress = "string"
          }
        ]
      }
      virtualNetworkConnections = [
        {
          id = "string"
          name = "string"
          properties = {
            allowHubToRemoteVnetTransit = bool
            allowRemoteVnetToUseHubVnetGateways = bool
            enableInternetSecurity = bool
            remoteVirtualNetwork = {
              id = "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

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@2019-06-01"

ResourceTags

Name Description Value

SubResource

Name Description Value
id Resource ID. string

VirtualHubProperties

Name Description Value
addressPrefix Address-prefix for this VirtualHub. string
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
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[]