Nat Rules - Create Or Update

Creates a nat rule to a scalable vpn gateway if it doesn't exist else updates the existing nat rules.

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/natRules/{natRuleName}?api-version=2020-11-01

URI Parameters

Name In Required Type Description
gatewayName
path True
  • string

The name of the gateway.

natRuleName
path True
  • string

The name of the nat rule.

resourceGroupName
path True
  • string

The resource group name of the VpnGateway.

subscriptionId
path True
  • string

The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.

api-version
query True
  • string

Client API version.

Request Body

Name Type Description
id
  • string

Resource ID.

name
  • string

The name of the resource that is unique within a resource group. This name can be used to access the resource.

properties.externalMappings

The private IP address external mapping for NAT.

properties.internalMappings

The private IP address internal mapping for NAT.

properties.ipConfigurationId
  • string

The IP Configuration ID this NAT rule applies to.

properties.mode

The Source NAT direction of a VPN NAT.

properties.type

The type of NAT rule for VPN NAT.

Responses

Name Type Description
200 OK

Request successful. Returns the details of the nat rule created or updated.

201 Created

Request successful. Returns the details of the nat rule created or updated.

Other Status Codes

Error response describing why the operation failed.

Security

azure_auth

Azure Active Directory OAuth2 Flow.

Type: oauth2
Flow: implicit
Authorization URL: https://login.microsoftonline.com/common/oauth2/authorize

Scopes

Name Description
user_impersonation impersonate your user account

Examples

NatRulePut

Sample Request

PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/natRule1?api-version=2020-11-01
{
  "properties": {
    "type": "Static",
    "mode": "EgressSnat",
    "ipConfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/cloudnet1-VNG/ipConfigurations/default",
    "internalMappings": [
      {
        "addressSpace": "10.4.0.0/24"
      }
    ],
    "externalMappings": [
      {
        "addressSpace": "192.168.21.0/24"
      }
    ]
  }
}

Sample Response

{
  "name": "natRule1",
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/natRule1",
  "etag": "w/\\00000000-0000-0000-0000-000000000000\\",
  "properties": {
    "provisioningState": "Succeeded",
    "type": "Static",
    "mode": "EgressSnat",
    "ipConfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/cloudnet1-VNG/ipConfigurations/default",
    "internalMappings": [
      {
        "addressSpace": "10.4.0.0/24"
      }
    ],
    "externalMappings": [
      {
        "addressSpace": "192.168.21.0/24"
      }
    ],
    "egressVpnSiteLinkConnections": [
      {
        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/vpnLinkConnections/vpnLinkConnection1"
      }
    ],
    "ingressVpnSiteLinkConnections": [
      {
        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/vpnLinkConnections/vpnLinkConnection2"
      }
    ]
  }
}
{
  "name": "natRule1",
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/natRule1",
  "etag": "w/\\00000000-0000-0000-0000-000000000000\\",
  "properties": {
    "provisioningState": "Succeeded",
    "type": "Static",
    "mode": "EgressSnat",
    "ipConfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/cloudnet1-VNG/ipConfigurations/default",
    "internalMappings": [
      {
        "addressSpace": "10.4.0.0/24"
      }
    ],
    "externalMappings": [
      {
        "addressSpace": "192.168.21.0/24"
      }
    ],
    "egressVpnSiteLinkConnections": [
      {
        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/vpnLinkConnections/vpnLinkConnection1"
      }
    ],
    "ingressVpnSiteLinkConnections": [
      {
        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/vpnLinkConnections/vpnLinkConnection2"
      }
    ]
  }
}

Definitions

CloudError

An error response from the service.

CloudErrorBody

An error response from the service.

ProvisioningState

The current provisioning state.

SubResource

Reference to another subresource.

VpnGatewayNatRule

VpnGatewayNatRule Resource.

VpnNatRuleMapping

Vpn NatRule mapping.

VpnNatRuleMode

The Source NAT direction of a VPN NAT.

VpnNatRuleType

The type of NAT rule for VPN NAT.

CloudError

An error response from the service.

Name Type Description
error

Cloud error body.

CloudErrorBody

An error response from the service.

Name Type Description
code
  • string

An identifier for the error. Codes are invariant and are intended to be consumed programmatically.

details

A list of additional details about the error.

message
  • string

A message describing the error, intended to be suitable for display in a user interface.

target
  • string

The target of the particular error. For example, the name of the property in error.

ProvisioningState

The current provisioning state.

Name Type Description
Deleting
  • string
Failed
  • string
Succeeded
  • string
Updating
  • string

SubResource

Reference to another subresource.

Name Type Description
id
  • string

Resource ID.

VpnGatewayNatRule

VpnGatewayNatRule Resource.

Name Type Description
etag
  • string

A unique read-only string that changes whenever the resource is updated.

id
  • string

Resource ID.

name
  • string

The name of the resource that is unique within a resource group. This name can be used to access the resource.

properties.egressVpnSiteLinkConnections

List of egress VpnSiteLinkConnections.

properties.externalMappings

The private IP address external mapping for NAT.

properties.ingressVpnSiteLinkConnections

List of ingress VpnSiteLinkConnections.

properties.internalMappings

The private IP address internal mapping for NAT.

properties.ipConfigurationId
  • string

The IP Configuration ID this NAT rule applies to.

properties.mode

The Source NAT direction of a VPN NAT.

properties.provisioningState

The provisioning state of the NAT Rule resource.

properties.type

The type of NAT rule for VPN NAT.

type
  • string

Resource type.

VpnNatRuleMapping

Vpn NatRule mapping.

Name Type Description
addressSpace
  • string

Address space for Vpn NatRule mapping.

VpnNatRuleMode

The Source NAT direction of a VPN NAT.

Name Type Description
EgressSnat
  • string
IngressSnat
  • string

VpnNatRuleType

The type of NAT rule for VPN NAT.

Name Type Description
Dynamic
  • string
Static
  • string