1. Packages
  2. Azure Classic
  3. API Docs
  4. network
  5. VnpGatewayNatRule

We recommend using Azure Native.

Azure Classic v5.81.0 published on Monday, Jun 24, 2024 by Pulumi

azure.network.VnpGatewayNatRule

Explore with Pulumi AI

azure logo

We recommend using Azure Native.

Azure Classic v5.81.0 published on Monday, Jun 24, 2024 by Pulumi

    Manages a VPN Gateway NAT Rule.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as azure from "@pulumi/azure";
    
    const example = new azure.core.ResourceGroup("example", {
        name: "example-resources",
        location: "West Europe",
    });
    const exampleVirtualWan = new azure.network.VirtualWan("example", {
        name: "example-vwan",
        resourceGroupName: example.name,
        location: example.location,
    });
    const exampleVirtualHub = new azure.network.VirtualHub("example", {
        name: "example-vhub",
        resourceGroupName: example.name,
        location: example.location,
        addressPrefix: "10.0.1.0/24",
        virtualWanId: exampleVirtualWan.id,
    });
    const exampleVpnGateway = new azure.network.VpnGateway("example", {
        name: "example-vpngateway",
        location: example.location,
        resourceGroupName: example.name,
        virtualHubId: exampleVirtualHub.id,
    });
    const exampleVnpGatewayNatRule = new azure.network.VnpGatewayNatRule("example", {
        name: "example-vpngatewaynatrule",
        vpnGatewayId: exampleVpnGateway.id,
        externalMappings: [{
            addressSpace: "192.168.21.0/26",
        }],
        internalMappings: [{
            addressSpace: "10.4.0.0/26",
        }],
    });
    
    import pulumi
    import pulumi_azure as azure
    
    example = azure.core.ResourceGroup("example",
        name="example-resources",
        location="West Europe")
    example_virtual_wan = azure.network.VirtualWan("example",
        name="example-vwan",
        resource_group_name=example.name,
        location=example.location)
    example_virtual_hub = azure.network.VirtualHub("example",
        name="example-vhub",
        resource_group_name=example.name,
        location=example.location,
        address_prefix="10.0.1.0/24",
        virtual_wan_id=example_virtual_wan.id)
    example_vpn_gateway = azure.network.VpnGateway("example",
        name="example-vpngateway",
        location=example.location,
        resource_group_name=example.name,
        virtual_hub_id=example_virtual_hub.id)
    example_vnp_gateway_nat_rule = azure.network.VnpGatewayNatRule("example",
        name="example-vpngatewaynatrule",
        vpn_gateway_id=example_vpn_gateway.id,
        external_mappings=[azure.network.VnpGatewayNatRuleExternalMappingArgs(
            address_space="192.168.21.0/26",
        )],
        internal_mappings=[azure.network.VnpGatewayNatRuleInternalMappingArgs(
            address_space="10.4.0.0/26",
        )])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
    	"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/network"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		example, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
    			Name:     pulumi.String("example-resources"),
    			Location: pulumi.String("West Europe"),
    		})
    		if err != nil {
    			return err
    		}
    		exampleVirtualWan, err := network.NewVirtualWan(ctx, "example", &network.VirtualWanArgs{
    			Name:              pulumi.String("example-vwan"),
    			ResourceGroupName: example.Name,
    			Location:          example.Location,
    		})
    		if err != nil {
    			return err
    		}
    		exampleVirtualHub, err := network.NewVirtualHub(ctx, "example", &network.VirtualHubArgs{
    			Name:              pulumi.String("example-vhub"),
    			ResourceGroupName: example.Name,
    			Location:          example.Location,
    			AddressPrefix:     pulumi.String("10.0.1.0/24"),
    			VirtualWanId:      exampleVirtualWan.ID(),
    		})
    		if err != nil {
    			return err
    		}
    		exampleVpnGateway, err := network.NewVpnGateway(ctx, "example", &network.VpnGatewayArgs{
    			Name:              pulumi.String("example-vpngateway"),
    			Location:          example.Location,
    			ResourceGroupName: example.Name,
    			VirtualHubId:      exampleVirtualHub.ID(),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = network.NewVnpGatewayNatRule(ctx, "example", &network.VnpGatewayNatRuleArgs{
    			Name:         pulumi.String("example-vpngatewaynatrule"),
    			VpnGatewayId: exampleVpnGateway.ID(),
    			ExternalMappings: network.VnpGatewayNatRuleExternalMappingArray{
    				&network.VnpGatewayNatRuleExternalMappingArgs{
    					AddressSpace: pulumi.String("192.168.21.0/26"),
    				},
    			},
    			InternalMappings: network.VnpGatewayNatRuleInternalMappingArray{
    				&network.VnpGatewayNatRuleInternalMappingArgs{
    					AddressSpace: pulumi.String("10.4.0.0/26"),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Azure = Pulumi.Azure;
    
    return await Deployment.RunAsync(() => 
    {
        var example = new Azure.Core.ResourceGroup("example", new()
        {
            Name = "example-resources",
            Location = "West Europe",
        });
    
        var exampleVirtualWan = new Azure.Network.VirtualWan("example", new()
        {
            Name = "example-vwan",
            ResourceGroupName = example.Name,
            Location = example.Location,
        });
    
        var exampleVirtualHub = new Azure.Network.VirtualHub("example", new()
        {
            Name = "example-vhub",
            ResourceGroupName = example.Name,
            Location = example.Location,
            AddressPrefix = "10.0.1.0/24",
            VirtualWanId = exampleVirtualWan.Id,
        });
    
        var exampleVpnGateway = new Azure.Network.VpnGateway("example", new()
        {
            Name = "example-vpngateway",
            Location = example.Location,
            ResourceGroupName = example.Name,
            VirtualHubId = exampleVirtualHub.Id,
        });
    
        var exampleVnpGatewayNatRule = new Azure.Network.VnpGatewayNatRule("example", new()
        {
            Name = "example-vpngatewaynatrule",
            VpnGatewayId = exampleVpnGateway.Id,
            ExternalMappings = new[]
            {
                new Azure.Network.Inputs.VnpGatewayNatRuleExternalMappingArgs
                {
                    AddressSpace = "192.168.21.0/26",
                },
            },
            InternalMappings = new[]
            {
                new Azure.Network.Inputs.VnpGatewayNatRuleInternalMappingArgs
                {
                    AddressSpace = "10.4.0.0/26",
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.azure.core.ResourceGroup;
    import com.pulumi.azure.core.ResourceGroupArgs;
    import com.pulumi.azure.network.VirtualWan;
    import com.pulumi.azure.network.VirtualWanArgs;
    import com.pulumi.azure.network.VirtualHub;
    import com.pulumi.azure.network.VirtualHubArgs;
    import com.pulumi.azure.network.VpnGateway;
    import com.pulumi.azure.network.VpnGatewayArgs;
    import com.pulumi.azure.network.VnpGatewayNatRule;
    import com.pulumi.azure.network.VnpGatewayNatRuleArgs;
    import com.pulumi.azure.network.inputs.VnpGatewayNatRuleExternalMappingArgs;
    import com.pulumi.azure.network.inputs.VnpGatewayNatRuleInternalMappingArgs;
    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 example = new ResourceGroup("example", ResourceGroupArgs.builder()
                .name("example-resources")
                .location("West Europe")
                .build());
    
            var exampleVirtualWan = new VirtualWan("exampleVirtualWan", VirtualWanArgs.builder()
                .name("example-vwan")
                .resourceGroupName(example.name())
                .location(example.location())
                .build());
    
            var exampleVirtualHub = new VirtualHub("exampleVirtualHub", VirtualHubArgs.builder()
                .name("example-vhub")
                .resourceGroupName(example.name())
                .location(example.location())
                .addressPrefix("10.0.1.0/24")
                .virtualWanId(exampleVirtualWan.id())
                .build());
    
            var exampleVpnGateway = new VpnGateway("exampleVpnGateway", VpnGatewayArgs.builder()
                .name("example-vpngateway")
                .location(example.location())
                .resourceGroupName(example.name())
                .virtualHubId(exampleVirtualHub.id())
                .build());
    
            var exampleVnpGatewayNatRule = new VnpGatewayNatRule("exampleVnpGatewayNatRule", VnpGatewayNatRuleArgs.builder()
                .name("example-vpngatewaynatrule")
                .vpnGatewayId(exampleVpnGateway.id())
                .externalMappings(VnpGatewayNatRuleExternalMappingArgs.builder()
                    .addressSpace("192.168.21.0/26")
                    .build())
                .internalMappings(VnpGatewayNatRuleInternalMappingArgs.builder()
                    .addressSpace("10.4.0.0/26")
                    .build())
                .build());
    
        }
    }
    
    resources:
      example:
        type: azure:core:ResourceGroup
        properties:
          name: example-resources
          location: West Europe
      exampleVirtualWan:
        type: azure:network:VirtualWan
        name: example
        properties:
          name: example-vwan
          resourceGroupName: ${example.name}
          location: ${example.location}
      exampleVirtualHub:
        type: azure:network:VirtualHub
        name: example
        properties:
          name: example-vhub
          resourceGroupName: ${example.name}
          location: ${example.location}
          addressPrefix: 10.0.1.0/24
          virtualWanId: ${exampleVirtualWan.id}
      exampleVpnGateway:
        type: azure:network:VpnGateway
        name: example
        properties:
          name: example-vpngateway
          location: ${example.location}
          resourceGroupName: ${example.name}
          virtualHubId: ${exampleVirtualHub.id}
      exampleVnpGatewayNatRule:
        type: azure:network:VnpGatewayNatRule
        name: example
        properties:
          name: example-vpngatewaynatrule
          vpnGatewayId: ${exampleVpnGateway.id}
          externalMappings:
            - addressSpace: 192.168.21.0/26
          internalMappings:
            - addressSpace: 10.4.0.0/26
    

    Create VnpGatewayNatRule Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new VnpGatewayNatRule(name: string, args: VnpGatewayNatRuleArgs, opts?: CustomResourceOptions);
    @overload
    def VnpGatewayNatRule(resource_name: str,
                          args: VnpGatewayNatRuleArgs,
                          opts: Optional[ResourceOptions] = None)
    
    @overload
    def VnpGatewayNatRule(resource_name: str,
                          opts: Optional[ResourceOptions] = None,
                          resource_group_name: Optional[str] = None,
                          vpn_gateway_id: Optional[str] = None,
                          external_address_space_mappings: Optional[Sequence[str]] = None,
                          external_mappings: Optional[Sequence[VnpGatewayNatRuleExternalMappingArgs]] = None,
                          internal_address_space_mappings: Optional[Sequence[str]] = None,
                          internal_mappings: Optional[Sequence[VnpGatewayNatRuleInternalMappingArgs]] = None,
                          ip_configuration_id: Optional[str] = None,
                          mode: Optional[str] = None,
                          name: Optional[str] = None,
                          type: Optional[str] = None)
    func NewVnpGatewayNatRule(ctx *Context, name string, args VnpGatewayNatRuleArgs, opts ...ResourceOption) (*VnpGatewayNatRule, error)
    public VnpGatewayNatRule(string name, VnpGatewayNatRuleArgs args, CustomResourceOptions? opts = null)
    public VnpGatewayNatRule(String name, VnpGatewayNatRuleArgs args)
    public VnpGatewayNatRule(String name, VnpGatewayNatRuleArgs args, CustomResourceOptions options)
    
    type: azure:network:VnpGatewayNatRule
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args VnpGatewayNatRuleArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args VnpGatewayNatRuleArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args VnpGatewayNatRuleArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args VnpGatewayNatRuleArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args VnpGatewayNatRuleArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var vnpGatewayNatRuleResource = new Azure.Network.VnpGatewayNatRule("vnpGatewayNatRuleResource", new()
    {
        VpnGatewayId = "string",
        ExternalMappings = new[]
        {
            new Azure.Network.Inputs.VnpGatewayNatRuleExternalMappingArgs
            {
                AddressSpace = "string",
                PortRange = "string",
            },
        },
        InternalMappings = new[]
        {
            new Azure.Network.Inputs.VnpGatewayNatRuleInternalMappingArgs
            {
                AddressSpace = "string",
                PortRange = "string",
            },
        },
        IpConfigurationId = "string",
        Mode = "string",
        Name = "string",
        Type = "string",
    });
    
    example, err := network.NewVnpGatewayNatRule(ctx, "vnpGatewayNatRuleResource", &network.VnpGatewayNatRuleArgs{
    	VpnGatewayId: pulumi.String("string"),
    	ExternalMappings: network.VnpGatewayNatRuleExternalMappingArray{
    		&network.VnpGatewayNatRuleExternalMappingArgs{
    			AddressSpace: pulumi.String("string"),
    			PortRange:    pulumi.String("string"),
    		},
    	},
    	InternalMappings: network.VnpGatewayNatRuleInternalMappingArray{
    		&network.VnpGatewayNatRuleInternalMappingArgs{
    			AddressSpace: pulumi.String("string"),
    			PortRange:    pulumi.String("string"),
    		},
    	},
    	IpConfigurationId: pulumi.String("string"),
    	Mode:              pulumi.String("string"),
    	Name:              pulumi.String("string"),
    	Type:              pulumi.String("string"),
    })
    
    var vnpGatewayNatRuleResource = new VnpGatewayNatRule("vnpGatewayNatRuleResource", VnpGatewayNatRuleArgs.builder()
        .vpnGatewayId("string")
        .externalMappings(VnpGatewayNatRuleExternalMappingArgs.builder()
            .addressSpace("string")
            .portRange("string")
            .build())
        .internalMappings(VnpGatewayNatRuleInternalMappingArgs.builder()
            .addressSpace("string")
            .portRange("string")
            .build())
        .ipConfigurationId("string")
        .mode("string")
        .name("string")
        .type("string")
        .build());
    
    vnp_gateway_nat_rule_resource = azure.network.VnpGatewayNatRule("vnpGatewayNatRuleResource",
        vpn_gateway_id="string",
        external_mappings=[azure.network.VnpGatewayNatRuleExternalMappingArgs(
            address_space="string",
            port_range="string",
        )],
        internal_mappings=[azure.network.VnpGatewayNatRuleInternalMappingArgs(
            address_space="string",
            port_range="string",
        )],
        ip_configuration_id="string",
        mode="string",
        name="string",
        type="string")
    
    const vnpGatewayNatRuleResource = new azure.network.VnpGatewayNatRule("vnpGatewayNatRuleResource", {
        vpnGatewayId: "string",
        externalMappings: [{
            addressSpace: "string",
            portRange: "string",
        }],
        internalMappings: [{
            addressSpace: "string",
            portRange: "string",
        }],
        ipConfigurationId: "string",
        mode: "string",
        name: "string",
        type: "string",
    });
    
    type: azure:network:VnpGatewayNatRule
    properties:
        externalMappings:
            - addressSpace: string
              portRange: string
        internalMappings:
            - addressSpace: string
              portRange: string
        ipConfigurationId: string
        mode: string
        name: string
        type: string
        vpnGatewayId: string
    

    VnpGatewayNatRule Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The VnpGatewayNatRule resource accepts the following input properties:

    ResourceGroupName string

    Deprecated: The property resource_group_name has been superseded by vpn_gateway_id and will be removed in v4.0 of the AzureRM provider

    VpnGatewayId string
    The ID of the VPN Gateway that this VPN Gateway NAT Rule belongs to. Changing this forces a new resource to be created.
    ExternalAddressSpaceMappings List<string>

    Deprecated: external_address_space_mappings will be removed in favour of the property external_mapping in version 4.0 of the AzureRM Provider.

    ExternalMappings List<VnpGatewayNatRuleExternalMapping>
    One of more external_mapping blocks as defined below.
    InternalAddressSpaceMappings List<string>

    Deprecated: internal_address_space_mappings will be removed in favour of the property internal_mapping in version 4.0 of the AzureRM Provider.

    InternalMappings List<VnpGatewayNatRuleInternalMapping>
    One of more internal_mapping blocks as defined below.
    IpConfigurationId string
    The ID of the IP Configuration this VPN Gateway NAT Rule applies to. Possible values are Instance0 and Instance1.
    Mode string
    The source NAT direction of the VPN NAT. Possible values are EgressSnat and IngressSnat. Defaults to EgressSnat. Changing this forces a new resource to be created.
    Name string
    The name which should be used for this VPN Gateway NAT Rule. Changing this forces a new resource to be created.
    Type string
    The type of the VPN Gateway NAT Rule. Possible values are Dynamic and Static. Defaults to Static. Changing this forces a new resource to be created.
    ResourceGroupName string

    Deprecated: The property resource_group_name has been superseded by vpn_gateway_id and will be removed in v4.0 of the AzureRM provider

    VpnGatewayId string
    The ID of the VPN Gateway that this VPN Gateway NAT Rule belongs to. Changing this forces a new resource to be created.
    ExternalAddressSpaceMappings []string

    Deprecated: external_address_space_mappings will be removed in favour of the property external_mapping in version 4.0 of the AzureRM Provider.

    ExternalMappings []VnpGatewayNatRuleExternalMappingArgs
    One of more external_mapping blocks as defined below.
    InternalAddressSpaceMappings []string

    Deprecated: internal_address_space_mappings will be removed in favour of the property internal_mapping in version 4.0 of the AzureRM Provider.

    InternalMappings []VnpGatewayNatRuleInternalMappingArgs
    One of more internal_mapping blocks as defined below.
    IpConfigurationId string
    The ID of the IP Configuration this VPN Gateway NAT Rule applies to. Possible values are Instance0 and Instance1.
    Mode string
    The source NAT direction of the VPN NAT. Possible values are EgressSnat and IngressSnat. Defaults to EgressSnat. Changing this forces a new resource to be created.
    Name string
    The name which should be used for this VPN Gateway NAT Rule. Changing this forces a new resource to be created.
    Type string
    The type of the VPN Gateway NAT Rule. Possible values are Dynamic and Static. Defaults to Static. Changing this forces a new resource to be created.
    resourceGroupName String

    Deprecated: The property resource_group_name has been superseded by vpn_gateway_id and will be removed in v4.0 of the AzureRM provider

    vpnGatewayId String
    The ID of the VPN Gateway that this VPN Gateway NAT Rule belongs to. Changing this forces a new resource to be created.
    externalAddressSpaceMappings List<String>

    Deprecated: external_address_space_mappings will be removed in favour of the property external_mapping in version 4.0 of the AzureRM Provider.

    externalMappings List<VnpGatewayNatRuleExternalMapping>
    One of more external_mapping blocks as defined below.
    internalAddressSpaceMappings List<String>

    Deprecated: internal_address_space_mappings will be removed in favour of the property internal_mapping in version 4.0 of the AzureRM Provider.

    internalMappings List<VnpGatewayNatRuleInternalMapping>
    One of more internal_mapping blocks as defined below.
    ipConfigurationId String
    The ID of the IP Configuration this VPN Gateway NAT Rule applies to. Possible values are Instance0 and Instance1.
    mode String
    The source NAT direction of the VPN NAT. Possible values are EgressSnat and IngressSnat. Defaults to EgressSnat. Changing this forces a new resource to be created.
    name String
    The name which should be used for this VPN Gateway NAT Rule. Changing this forces a new resource to be created.
    type String
    The type of the VPN Gateway NAT Rule. Possible values are Dynamic and Static. Defaults to Static. Changing this forces a new resource to be created.
    resourceGroupName string

    Deprecated: The property resource_group_name has been superseded by vpn_gateway_id and will be removed in v4.0 of the AzureRM provider

    vpnGatewayId string
    The ID of the VPN Gateway that this VPN Gateway NAT Rule belongs to. Changing this forces a new resource to be created.
    externalAddressSpaceMappings string[]

    Deprecated: external_address_space_mappings will be removed in favour of the property external_mapping in version 4.0 of the AzureRM Provider.

    externalMappings VnpGatewayNatRuleExternalMapping[]
    One of more external_mapping blocks as defined below.
    internalAddressSpaceMappings string[]

    Deprecated: internal_address_space_mappings will be removed in favour of the property internal_mapping in version 4.0 of the AzureRM Provider.

    internalMappings VnpGatewayNatRuleInternalMapping[]
    One of more internal_mapping blocks as defined below.
    ipConfigurationId string
    The ID of the IP Configuration this VPN Gateway NAT Rule applies to. Possible values are Instance0 and Instance1.
    mode string
    The source NAT direction of the VPN NAT. Possible values are EgressSnat and IngressSnat. Defaults to EgressSnat. Changing this forces a new resource to be created.
    name string
    The name which should be used for this VPN Gateway NAT Rule. Changing this forces a new resource to be created.
    type string
    The type of the VPN Gateway NAT Rule. Possible values are Dynamic and Static. Defaults to Static. Changing this forces a new resource to be created.
    resource_group_name str

    Deprecated: The property resource_group_name has been superseded by vpn_gateway_id and will be removed in v4.0 of the AzureRM provider

    vpn_gateway_id str
    The ID of the VPN Gateway that this VPN Gateway NAT Rule belongs to. Changing this forces a new resource to be created.
    external_address_space_mappings Sequence[str]

    Deprecated: external_address_space_mappings will be removed in favour of the property external_mapping in version 4.0 of the AzureRM Provider.

    external_mappings Sequence[VnpGatewayNatRuleExternalMappingArgs]
    One of more external_mapping blocks as defined below.
    internal_address_space_mappings Sequence[str]

    Deprecated: internal_address_space_mappings will be removed in favour of the property internal_mapping in version 4.0 of the AzureRM Provider.

    internal_mappings Sequence[VnpGatewayNatRuleInternalMappingArgs]
    One of more internal_mapping blocks as defined below.
    ip_configuration_id str
    The ID of the IP Configuration this VPN Gateway NAT Rule applies to. Possible values are Instance0 and Instance1.
    mode str
    The source NAT direction of the VPN NAT. Possible values are EgressSnat and IngressSnat. Defaults to EgressSnat. Changing this forces a new resource to be created.
    name str
    The name which should be used for this VPN Gateway NAT Rule. Changing this forces a new resource to be created.
    type str
    The type of the VPN Gateway NAT Rule. Possible values are Dynamic and Static. Defaults to Static. Changing this forces a new resource to be created.
    resourceGroupName String

    Deprecated: The property resource_group_name has been superseded by vpn_gateway_id and will be removed in v4.0 of the AzureRM provider

    vpnGatewayId String
    The ID of the VPN Gateway that this VPN Gateway NAT Rule belongs to. Changing this forces a new resource to be created.
    externalAddressSpaceMappings List<String>

    Deprecated: external_address_space_mappings will be removed in favour of the property external_mapping in version 4.0 of the AzureRM Provider.

    externalMappings List<Property Map>
    One of more external_mapping blocks as defined below.
    internalAddressSpaceMappings List<String>

    Deprecated: internal_address_space_mappings will be removed in favour of the property internal_mapping in version 4.0 of the AzureRM Provider.

    internalMappings List<Property Map>
    One of more internal_mapping blocks as defined below.
    ipConfigurationId String
    The ID of the IP Configuration this VPN Gateway NAT Rule applies to. Possible values are Instance0 and Instance1.
    mode String
    The source NAT direction of the VPN NAT. Possible values are EgressSnat and IngressSnat. Defaults to EgressSnat. Changing this forces a new resource to be created.
    name String
    The name which should be used for this VPN Gateway NAT Rule. Changing this forces a new resource to be created.
    type String
    The type of the VPN Gateway NAT Rule. Possible values are Dynamic and Static. Defaults to Static. Changing this forces a new resource to be created.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the VnpGatewayNatRule resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing VnpGatewayNatRule Resource

    Get an existing VnpGatewayNatRule resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: VnpGatewayNatRuleState, opts?: CustomResourceOptions): VnpGatewayNatRule
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            external_address_space_mappings: Optional[Sequence[str]] = None,
            external_mappings: Optional[Sequence[VnpGatewayNatRuleExternalMappingArgs]] = None,
            internal_address_space_mappings: Optional[Sequence[str]] = None,
            internal_mappings: Optional[Sequence[VnpGatewayNatRuleInternalMappingArgs]] = None,
            ip_configuration_id: Optional[str] = None,
            mode: Optional[str] = None,
            name: Optional[str] = None,
            resource_group_name: Optional[str] = None,
            type: Optional[str] = None,
            vpn_gateway_id: Optional[str] = None) -> VnpGatewayNatRule
    func GetVnpGatewayNatRule(ctx *Context, name string, id IDInput, state *VnpGatewayNatRuleState, opts ...ResourceOption) (*VnpGatewayNatRule, error)
    public static VnpGatewayNatRule Get(string name, Input<string> id, VnpGatewayNatRuleState? state, CustomResourceOptions? opts = null)
    public static VnpGatewayNatRule get(String name, Output<String> id, VnpGatewayNatRuleState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    ExternalAddressSpaceMappings List<string>

    Deprecated: external_address_space_mappings will be removed in favour of the property external_mapping in version 4.0 of the AzureRM Provider.

    ExternalMappings List<VnpGatewayNatRuleExternalMapping>
    One of more external_mapping blocks as defined below.
    InternalAddressSpaceMappings List<string>

    Deprecated: internal_address_space_mappings will be removed in favour of the property internal_mapping in version 4.0 of the AzureRM Provider.

    InternalMappings List<VnpGatewayNatRuleInternalMapping>
    One of more internal_mapping blocks as defined below.
    IpConfigurationId string
    The ID of the IP Configuration this VPN Gateway NAT Rule applies to. Possible values are Instance0 and Instance1.
    Mode string
    The source NAT direction of the VPN NAT. Possible values are EgressSnat and IngressSnat. Defaults to EgressSnat. Changing this forces a new resource to be created.
    Name string
    The name which should be used for this VPN Gateway NAT Rule. Changing this forces a new resource to be created.
    ResourceGroupName string

    Deprecated: The property resource_group_name has been superseded by vpn_gateway_id and will be removed in v4.0 of the AzureRM provider

    Type string
    The type of the VPN Gateway NAT Rule. Possible values are Dynamic and Static. Defaults to Static. Changing this forces a new resource to be created.
    VpnGatewayId string
    The ID of the VPN Gateway that this VPN Gateway NAT Rule belongs to. Changing this forces a new resource to be created.
    ExternalAddressSpaceMappings []string

    Deprecated: external_address_space_mappings will be removed in favour of the property external_mapping in version 4.0 of the AzureRM Provider.

    ExternalMappings []VnpGatewayNatRuleExternalMappingArgs
    One of more external_mapping blocks as defined below.
    InternalAddressSpaceMappings []string

    Deprecated: internal_address_space_mappings will be removed in favour of the property internal_mapping in version 4.0 of the AzureRM Provider.

    InternalMappings []VnpGatewayNatRuleInternalMappingArgs
    One of more internal_mapping blocks as defined below.
    IpConfigurationId string
    The ID of the IP Configuration this VPN Gateway NAT Rule applies to. Possible values are Instance0 and Instance1.
    Mode string
    The source NAT direction of the VPN NAT. Possible values are EgressSnat and IngressSnat. Defaults to EgressSnat. Changing this forces a new resource to be created.
    Name string
    The name which should be used for this VPN Gateway NAT Rule. Changing this forces a new resource to be created.
    ResourceGroupName string

    Deprecated: The property resource_group_name has been superseded by vpn_gateway_id and will be removed in v4.0 of the AzureRM provider

    Type string
    The type of the VPN Gateway NAT Rule. Possible values are Dynamic and Static. Defaults to Static. Changing this forces a new resource to be created.
    VpnGatewayId string
    The ID of the VPN Gateway that this VPN Gateway NAT Rule belongs to. Changing this forces a new resource to be created.
    externalAddressSpaceMappings List<String>

    Deprecated: external_address_space_mappings will be removed in favour of the property external_mapping in version 4.0 of the AzureRM Provider.

    externalMappings List<VnpGatewayNatRuleExternalMapping>
    One of more external_mapping blocks as defined below.
    internalAddressSpaceMappings List<String>

    Deprecated: internal_address_space_mappings will be removed in favour of the property internal_mapping in version 4.0 of the AzureRM Provider.

    internalMappings List<VnpGatewayNatRuleInternalMapping>
    One of more internal_mapping blocks as defined below.
    ipConfigurationId String
    The ID of the IP Configuration this VPN Gateway NAT Rule applies to. Possible values are Instance0 and Instance1.
    mode String
    The source NAT direction of the VPN NAT. Possible values are EgressSnat and IngressSnat. Defaults to EgressSnat. Changing this forces a new resource to be created.
    name String
    The name which should be used for this VPN Gateway NAT Rule. Changing this forces a new resource to be created.
    resourceGroupName String

    Deprecated: The property resource_group_name has been superseded by vpn_gateway_id and will be removed in v4.0 of the AzureRM provider

    type String
    The type of the VPN Gateway NAT Rule. Possible values are Dynamic and Static. Defaults to Static. Changing this forces a new resource to be created.
    vpnGatewayId String
    The ID of the VPN Gateway that this VPN Gateway NAT Rule belongs to. Changing this forces a new resource to be created.
    externalAddressSpaceMappings string[]

    Deprecated: external_address_space_mappings will be removed in favour of the property external_mapping in version 4.0 of the AzureRM Provider.

    externalMappings VnpGatewayNatRuleExternalMapping[]
    One of more external_mapping blocks as defined below.
    internalAddressSpaceMappings string[]

    Deprecated: internal_address_space_mappings will be removed in favour of the property internal_mapping in version 4.0 of the AzureRM Provider.

    internalMappings VnpGatewayNatRuleInternalMapping[]
    One of more internal_mapping blocks as defined below.
    ipConfigurationId string
    The ID of the IP Configuration this VPN Gateway NAT Rule applies to. Possible values are Instance0 and Instance1.
    mode string
    The source NAT direction of the VPN NAT. Possible values are EgressSnat and IngressSnat. Defaults to EgressSnat. Changing this forces a new resource to be created.
    name string
    The name which should be used for this VPN Gateway NAT Rule. Changing this forces a new resource to be created.
    resourceGroupName string

    Deprecated: The property resource_group_name has been superseded by vpn_gateway_id and will be removed in v4.0 of the AzureRM provider

    type string
    The type of the VPN Gateway NAT Rule. Possible values are Dynamic and Static. Defaults to Static. Changing this forces a new resource to be created.
    vpnGatewayId string
    The ID of the VPN Gateway that this VPN Gateway NAT Rule belongs to. Changing this forces a new resource to be created.
    external_address_space_mappings Sequence[str]

    Deprecated: external_address_space_mappings will be removed in favour of the property external_mapping in version 4.0 of the AzureRM Provider.

    external_mappings Sequence[VnpGatewayNatRuleExternalMappingArgs]
    One of more external_mapping blocks as defined below.
    internal_address_space_mappings Sequence[str]

    Deprecated: internal_address_space_mappings will be removed in favour of the property internal_mapping in version 4.0 of the AzureRM Provider.

    internal_mappings Sequence[VnpGatewayNatRuleInternalMappingArgs]
    One of more internal_mapping blocks as defined below.
    ip_configuration_id str
    The ID of the IP Configuration this VPN Gateway NAT Rule applies to. Possible values are Instance0 and Instance1.
    mode str
    The source NAT direction of the VPN NAT. Possible values are EgressSnat and IngressSnat. Defaults to EgressSnat. Changing this forces a new resource to be created.
    name str
    The name which should be used for this VPN Gateway NAT Rule. Changing this forces a new resource to be created.
    resource_group_name str

    Deprecated: The property resource_group_name has been superseded by vpn_gateway_id and will be removed in v4.0 of the AzureRM provider

    type str
    The type of the VPN Gateway NAT Rule. Possible values are Dynamic and Static. Defaults to Static. Changing this forces a new resource to be created.
    vpn_gateway_id str
    The ID of the VPN Gateway that this VPN Gateway NAT Rule belongs to. Changing this forces a new resource to be created.
    externalAddressSpaceMappings List<String>

    Deprecated: external_address_space_mappings will be removed in favour of the property external_mapping in version 4.0 of the AzureRM Provider.

    externalMappings List<Property Map>
    One of more external_mapping blocks as defined below.
    internalAddressSpaceMappings List<String>

    Deprecated: internal_address_space_mappings will be removed in favour of the property internal_mapping in version 4.0 of the AzureRM Provider.

    internalMappings List<Property Map>
    One of more internal_mapping blocks as defined below.
    ipConfigurationId String
    The ID of the IP Configuration this VPN Gateway NAT Rule applies to. Possible values are Instance0 and Instance1.
    mode String
    The source NAT direction of the VPN NAT. Possible values are EgressSnat and IngressSnat. Defaults to EgressSnat. Changing this forces a new resource to be created.
    name String
    The name which should be used for this VPN Gateway NAT Rule. Changing this forces a new resource to be created.
    resourceGroupName String

    Deprecated: The property resource_group_name has been superseded by vpn_gateway_id and will be removed in v4.0 of the AzureRM provider

    type String
    The type of the VPN Gateway NAT Rule. Possible values are Dynamic and Static. Defaults to Static. Changing this forces a new resource to be created.
    vpnGatewayId String
    The ID of the VPN Gateway that this VPN Gateway NAT Rule belongs to. Changing this forces a new resource to be created.

    Supporting Types

    VnpGatewayNatRuleExternalMapping, VnpGatewayNatRuleExternalMappingArgs

    AddressSpace string
    The string CIDR representing the address space for the VPN Gateway Nat Rule external mapping.
    PortRange string
    The single port range for the VPN Gateway Nat Rule external mapping.
    AddressSpace string
    The string CIDR representing the address space for the VPN Gateway Nat Rule external mapping.
    PortRange string
    The single port range for the VPN Gateway Nat Rule external mapping.
    addressSpace String
    The string CIDR representing the address space for the VPN Gateway Nat Rule external mapping.
    portRange String
    The single port range for the VPN Gateway Nat Rule external mapping.
    addressSpace string
    The string CIDR representing the address space for the VPN Gateway Nat Rule external mapping.
    portRange string
    The single port range for the VPN Gateway Nat Rule external mapping.
    address_space str
    The string CIDR representing the address space for the VPN Gateway Nat Rule external mapping.
    port_range str
    The single port range for the VPN Gateway Nat Rule external mapping.
    addressSpace String
    The string CIDR representing the address space for the VPN Gateway Nat Rule external mapping.
    portRange String
    The single port range for the VPN Gateway Nat Rule external mapping.

    VnpGatewayNatRuleInternalMapping, VnpGatewayNatRuleInternalMappingArgs

    AddressSpace string
    The string CIDR representing the address space for the VPN Gateway Nat Rule internal mapping.
    PortRange string
    The single port range for the VPN Gateway Nat Rule internal mapping.
    AddressSpace string
    The string CIDR representing the address space for the VPN Gateway Nat Rule internal mapping.
    PortRange string
    The single port range for the VPN Gateway Nat Rule internal mapping.
    addressSpace String
    The string CIDR representing the address space for the VPN Gateway Nat Rule internal mapping.
    portRange String
    The single port range for the VPN Gateway Nat Rule internal mapping.
    addressSpace string
    The string CIDR representing the address space for the VPN Gateway Nat Rule internal mapping.
    portRange string
    The single port range for the VPN Gateway Nat Rule internal mapping.
    address_space str
    The string CIDR representing the address space for the VPN Gateway Nat Rule internal mapping.
    port_range str
    The single port range for the VPN Gateway Nat Rule internal mapping.
    addressSpace String
    The string CIDR representing the address space for the VPN Gateway Nat Rule internal mapping.
    portRange String
    The single port range for the VPN Gateway Nat Rule internal mapping.

    Import

    VPN Gateway NAT Rules can be imported using the resource id, e.g.

    $ pulumi import azure:network/vnpGatewayNatRule:VnpGatewayNatRule example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resGroup1/providers/Microsoft.Network/vpnGateways/vpnGateway1/natRules/natRule1
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    Azure Classic pulumi/pulumi-azure
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the azurerm Terraform Provider.
    azure logo

    We recommend using Azure Native.

    Azure Classic v5.81.0 published on Monday, Jun 24, 2024 by Pulumi