Virtual Network Gateway Connection Args
A common class for general resource information. Uses Azure REST API version 2024-05-01. In version 2.x of the Azure Native provider, it used API version 2023-02-01. Other available API versions: 2018-06-01, 2018-07-01, 2018-08-01, 2018-10-01, 2018-11-01, 2018-12-01, 2019-02-01, 2019-04-01, 2019-06-01, 2019-07-01, 2019-08-01, 2019-09-01, 2019-11-01, 2019-12-01, 2020-03-01, 2020-04-01, 2020-05-01, 2020-06-01, 2020-07-01, 2020-08-01, 2020-11-01, 2021-02-01, 2021-03-01, 2021-05-01, 2021-08-01, 2022-01-01, 2022-05-01, 2022-07-01, 2022-09-01, 2022-11-01, 2023-02-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01, 2024-07-01. These can be accessed by generating a local SDK package using the CLI command pulumi package add azure-native network [ApiVersion]
. See the ../../../version-guide/#accessing-any-api-version-via-local-packages for details.
Example Usage
CreateVirtualNetworkGatewayConnection_S2S
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var virtualNetworkGatewayConnection = new AzureNative.Network.VirtualNetworkGatewayConnection("virtualNetworkGatewayConnection", new()
{
ConnectionMode = AzureNative.Network.VirtualNetworkGatewayConnectionMode.Default,
ConnectionProtocol = AzureNative.Network.VirtualNetworkGatewayConnectionProtocol.IKEv2,
ConnectionType = AzureNative.Network.VirtualNetworkGatewayConnectionType.IPsec,
DpdTimeoutSeconds = 30,
EgressNatRules = new[]
{
new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/natRules/natRule2",
},
},
EnableBgp = false,
GatewayCustomBgpIpAddresses = new[]
{
new AzureNative.Network.Inputs.GatewayCustomBgpIpAddressIpConfigurationArgs
{
CustomBgpIpAddress = "169.254.21.1",
IpConfigurationId = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/default",
},
new AzureNative.Network.Inputs.GatewayCustomBgpIpAddressIpConfigurationArgs
{
CustomBgpIpAddress = "169.254.21.3",
IpConfigurationId = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/ActiveActive",
},
},
IngressNatRules = new[]
{
new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/natRules/natRule1",
},
},
IpsecPolicies = new[] {},
LocalNetworkGateway2 = new AzureNative.Network.Inputs.LocalNetworkGatewayArgs
{
GatewayIpAddress = "x.x.x.x",
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw",
LocalNetworkAddressSpace = new AzureNative.Network.Inputs.AddressSpaceArgs
{
AddressPrefixes = new[]
{
"10.1.0.0/16",
},
},
Location = "centralus",
Tags = null,
},
Location = "centralus",
ResourceGroupName = "rg1",
RoutingWeight = 0,
SharedKey = "Abc123",
TrafficSelectorPolicies = new[] {},
UsePolicyBasedTrafficSelectors = false,
VirtualNetworkGateway1 = new AzureNative.Network.Inputs.VirtualNetworkGatewayArgs
{
ActiveActive = false,
BgpSettings = new AzureNative.Network.Inputs.BgpSettingsArgs
{
Asn = 65514,
BgpPeeringAddress = "10.0.1.30",
PeerWeight = 0,
},
EnableBgp = false,
GatewayType = AzureNative.Network.VirtualNetworkGatewayType.Vpn,
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw",
IpConfigurations = new[]
{
new AzureNative.Network.Inputs.VirtualNetworkGatewayIPConfigurationArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1",
Name = "gwipconfig1",
PrivateIPAllocationMethod = AzureNative.Network.IPAllocationMethod.Dynamic,
PublicIPAddress = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip",
},
Subnet = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet",
},
},
},
Location = "centralus",
Sku = new AzureNative.Network.Inputs.VirtualNetworkGatewaySkuArgs
{
Name = AzureNative.Network.VirtualNetworkGatewaySkuName.VpnGw1,
Tier = AzureNative.Network.VirtualNetworkGatewaySkuTier.VpnGw1,
},
Tags = null,
VpnType = AzureNative.Network.VpnType.RouteBased,
},
VirtualNetworkGatewayConnectionName = "connS2S",
});
});
package main
import (
network "github.com/pulumi/pulumi-azure-native-sdk/network/v3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := network.NewVirtualNetworkGatewayConnection(ctx, "virtualNetworkGatewayConnection", &network.VirtualNetworkGatewayConnectionArgs{
ConnectionMode: pulumi.String(network.VirtualNetworkGatewayConnectionModeDefault),
ConnectionProtocol: pulumi.String(network.VirtualNetworkGatewayConnectionProtocolIKEv2),
ConnectionType: pulumi.String(network.VirtualNetworkGatewayConnectionTypeIPsec),
DpdTimeoutSeconds: pulumi.Int(30),
EgressNatRules: network.SubResourceArray{
&network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/natRules/natRule2"),
},
},
EnableBgp: pulumi.Bool(false),
GatewayCustomBgpIpAddresses: network.GatewayCustomBgpIpAddressIpConfigurationArray{
&network.GatewayCustomBgpIpAddressIpConfigurationArgs{
CustomBgpIpAddress: pulumi.String("169.254.21.1"),
IpConfigurationId: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/default"),
},
&network.GatewayCustomBgpIpAddressIpConfigurationArgs{
CustomBgpIpAddress: pulumi.String("169.254.21.3"),
IpConfigurationId: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/ActiveActive"),
},
},
IngressNatRules: network.SubResourceArray{
&network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/natRules/natRule1"),
},
},
IpsecPolicies: network.IpsecPolicyArray{},
LocalNetworkGateway2: &network.LocalNetworkGatewayTypeArgs{
GatewayIpAddress: pulumi.String("x.x.x.x"),
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw"),
LocalNetworkAddressSpace: &network.AddressSpaceArgs{
AddressPrefixes: pulumi.StringArray{
pulumi.String("10.1.0.0/16"),
},
},
Location: pulumi.String("centralus"),
Tags: pulumi.StringMap{},
},
Location: pulumi.String("centralus"),
ResourceGroupName: pulumi.String("rg1"),
RoutingWeight: pulumi.Int(0),
SharedKey: pulumi.String("Abc123"),
TrafficSelectorPolicies: network.TrafficSelectorPolicyArray{},
UsePolicyBasedTrafficSelectors: pulumi.Bool(false),
VirtualNetworkGateway1: &network.VirtualNetworkGatewayTypeArgs{
ActiveActive: pulumi.Bool(false),
BgpSettings: &network.BgpSettingsArgs{
Asn: pulumi.Float64(65514),
BgpPeeringAddress: pulumi.String("10.0.1.30"),
PeerWeight: pulumi.Int(0),
},
EnableBgp: pulumi.Bool(false),
GatewayType: pulumi.String(network.VirtualNetworkGatewayTypeVpn),
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw"),
IpConfigurations: network.VirtualNetworkGatewayIPConfigurationArray{
&network.VirtualNetworkGatewayIPConfigurationArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1"),
Name: pulumi.String("gwipconfig1"),
PrivateIPAllocationMethod: pulumi.String(network.IPAllocationMethodDynamic),
PublicIPAddress: &network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip"),
},
Subnet: &network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet"),
},
},
},
Location: pulumi.String("centralus"),
Sku: &network.VirtualNetworkGatewaySkuArgs{
Name: pulumi.String(network.VirtualNetworkGatewaySkuNameVpnGw1),
Tier: pulumi.String(network.VirtualNetworkGatewaySkuTierVpnGw1),
},
Tags: pulumi.StringMap{},
VpnType: pulumi.String(network.VpnTypeRouteBased),
},
VirtualNetworkGatewayConnectionName: pulumi.String("connS2S"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.network.VirtualNetworkGatewayConnection;
import com.pulumi.azurenative.network.VirtualNetworkGatewayConnectionArgs;
import com.pulumi.azurenative.network.inputs.SubResourceArgs;
import com.pulumi.azurenative.network.inputs.GatewayCustomBgpIpAddressIpConfigurationArgs;
import com.pulumi.azurenative.network.inputs.LocalNetworkGatewayArgs;
import com.pulumi.azurenative.network.inputs.AddressSpaceArgs;
import com.pulumi.azurenative.network.inputs.VirtualNetworkGatewayArgs;
import com.pulumi.azurenative.network.inputs.BgpSettingsArgs;
import com.pulumi.azurenative.network.inputs.VirtualNetworkGatewaySkuArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var virtualNetworkGatewayConnection = new VirtualNetworkGatewayConnection("virtualNetworkGatewayConnection", VirtualNetworkGatewayConnectionArgs.builder()
.connectionMode("Default")
.connectionProtocol("IKEv2")
.connectionType("IPsec")
.dpdTimeoutSeconds(30)
.egressNatRules(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/natRules/natRule2")
.build())
.enableBgp(false)
.gatewayCustomBgpIpAddresses(
GatewayCustomBgpIpAddressIpConfigurationArgs.builder()
.customBgpIpAddress("169.254.21.1")
.ipConfigurationId("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/default")
.build(),
GatewayCustomBgpIpAddressIpConfigurationArgs.builder()
.customBgpIpAddress("169.254.21.3")
.ipConfigurationId("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/ActiveActive")
.build())
.ingressNatRules(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/natRules/natRule1")
.build())
.ipsecPolicies()
.localNetworkGateway2(LocalNetworkGatewayArgs.builder()
.gatewayIpAddress("x.x.x.x")
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw")
.localNetworkAddressSpace(AddressSpaceArgs.builder()
.addressPrefixes("10.1.0.0/16")
.build())
.location("centralus")
.tags(Map.ofEntries(
))
.build())
.location("centralus")
.resourceGroupName("rg1")
.routingWeight(0)
.sharedKey("Abc123")
.trafficSelectorPolicies()
.usePolicyBasedTrafficSelectors(false)
.virtualNetworkGateway1(VirtualNetworkGatewayArgs.builder()
.activeActive(false)
.bgpSettings(BgpSettingsArgs.builder()
.asn(65514.0)
.bgpPeeringAddress("10.0.1.30")
.peerWeight(0)
.build())
.enableBgp(false)
.gatewayType("Vpn")
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw")
.ipConfigurations(VirtualNetworkGatewayIPConfigurationArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1")
.name("gwipconfig1")
.privateIPAllocationMethod("Dynamic")
.publicIPAddress(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip")
.build())
.subnet(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet")
.build())
.build())
.location("centralus")
.sku(VirtualNetworkGatewaySkuArgs.builder()
.name("VpnGw1")
.tier("VpnGw1")
.build())
.tags(Map.ofEntries(
))
.vpnType("RouteBased")
.build())
.virtualNetworkGatewayConnectionName("connS2S")
.build());
}
}
Import
An existing resource can be imported using its type token, name, and identifier, e.g.
$ pulumi import azure-native:network:VirtualNetworkGatewayConnection connS2S /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}
Constructors
Properties
The authorizationKey.
The connection mode for this connection.
Connection protocol used for this connection.
Gateway connection type.
The dead peer detection timeout of this connection in seconds.
List of egress NatRules.
Bypass the ExpressRoute gateway when accessing private-links. ExpressRoute FastPath (expressRouteGatewayBypass) must be enabled.
Bypass ExpressRoute Gateway for data forwarding.
GatewayCustomBgpIpAddresses to be used for virtual network gateway Connection.
List of ingress NatRules.
The IPSec Policies to be considered by this connection.
The reference to local network gateway resource.
The reference to peerings resource.
The name of the resource group.
The routing weight.
The Traffic Selector Policies to be considered by this connection.
Use private local Azure IP for the connection.
Enable policy-based traffic selectors.
The reference to virtual network gateway resource.
The reference to virtual network gateway resource.
The name of the virtual network gateway connection.