Create a VNET to VNET connection across two regions

Last updated: 07/11/2015

This template allows you to connect two VNETs in different regions using Virtual Network Gateways

This Azure Resource Manager (ARM) template was created by a member of the community and not by Microsoft. Each ARM template is licensed to you under a licence agreement by its owner, not Microsoft. Microsoft is not responsible for ARM templates provided and licensed by community members and does not screen for security, compatibility or performance. Community ARM templates are not supported under any Microsoft support programme or service, and are made available AS IS without warranty of any kind.

Parameters

Parameter Name Description
location1 Location where first VNET, Gateway, PublicIP and Connection will be deployed.
location2 Location where second VNET, Gateway, PublicIP and Connection will be deployed.
virtualNetworkName1 Name of the first VNET.
addressPrefix1 Address space for the first VNET.
subnet1Name1 Name of the first subnet in the first VNET. Please note, an additional subnet called GatewaySubnet will be created where the VirtualNetworkGateway will be deployed. The name of that subnet must not be changed from GatewaySubnet.
subnet1Prefix1 The prefix for the first subnet in the first VNET.
gatewaySubnetPrefix1 The prefix for the GatewaySubnet where the first VirtualNetworkGateway will be deployed. This must be at least /29.
gatewayPublicIPName1 The name of the PublicIP attached to the first VirtualNetworkGateway.
gatewayName1 The name of the first VirtualNetworkGateway.
connectionName1 The name of the first connection, connecting the first VirtualNetworkGateway to the second VirtualNetworkGateway.
virtualNetworkName2 Name of the second VNET.
addressPrefix2 Address space for the second VNET.
subnet1Name2 Name of the first subnet in the second VNET. Please note, an additional subnet called GatewaySubnet will be created where the VirtualNetworkGateway will be deployed. The name of that subnet must not be changed from GatewaySubnet.
subnet1Prefix2 The prefix for the first subnet in the second VNET.
gatewaySubnetPrefix2 The prefix for the GatewaySubnet where the second VirtualNetworkGateway will be deployed. This must be at least /29.
gatewayPublicIPName2 The name of the PublicIP attached to the second VirtualNetworkGateway.
gatewayName2 The name of the second VirtualNetworkGateway.
connectionName2 The name of the second connection, connecting the second VirtualNetworkGateway to the first VirtualNetworkGateway.
sharedKey The shared key used to establish connection between the two VirtualNetworkGateways.

Use the template

PowerShell
New-AzureRmResourceGroupDeployment -Name <deployment-name> -ResourceGroupName <resource-group-name> -TemplateUri https://raw.githubusercontent.com/azure/azure-quickstart-templates/master/201-vnet-to-vnet/azuredeploy.json
Installing and configuring Azure PowerShell
Command line
azure config mode arm
azure group deployment create <my-resource-group> <my-deployment-name> --template-uri https://raw.githubusercontent.com/azure/azure-quickstart-templates/master/201-vnet-to-vnet/azuredeploy.json
Installing and configuring the Azure cross-platform command-line interface