_create_time |
Timestamp of resource creation |
EpochMsTimestamp |
Readonly Sortable |
_create_user |
ID of the user who created this resource |
string |
Readonly |
_last_modified_time |
Timestamp of last modification |
EpochMsTimestamp |
Readonly Sortable |
_last_modified_user |
ID of the user who last modified this resource |
string |
Readonly |
_links |
References related to this resource
The server will populate this field when returing the resource. Ignored on PUT and POST. |
array of ResourceLink |
Readonly |
_protection |
Indicates protection status of this resource
Protection status is one of the following:
PROTECTED - the client who retrieved the entity is not allowed
to modify it.
NOT_PROTECTED - the client who retrieved the entity is allowed
to modify it
REQUIRE_OVERRIDE - the client who retrieved the entity is a super
user and can modify it, but only when providing
the request header X-Allow-Overwrite=true.
UNKNOWN - the _protection field could not be determined for this
entity.
|
string |
Readonly |
_revision |
Generation of this resource config
The _revision property describes the current revision of the resource. To prevent clients from overwriting each other's changes, PUT operations must include the current _revision of the resource, which clients should obtain by issuing a GET operation. If the _revision provided in a PUT request is missing or stale, the operation will be rejected. |
int |
|
_schema |
Schema for this resource |
string |
Readonly |
_self |
Link to this resource |
SelfResourceLink |
Readonly |
_system_owned |
Indicates system owned resource |
boolean |
Readonly |
action |
Represents action of NAT Rule SNAT, DNAT, REFLEXIVE
Source NAT(SNAT) - translates a source IP address in an outbound packet so that
the packet appears to originate from a different network. SNAT is only supported
when the logical router is running in active-standby mode.
Destination NAT(DNAT) - translates the destination IP address of inbound packets
so that packets are delivered to a target address into another network. DNAT is
only supported when the logical router is running in active-standby mode.
Reflexive NAT(REFLEXIVE) - IP-Range and CIDR are supported to define the "n".
The number of original networks should be exactly the same as that of
translated networks. The address translation is deterministic. Reflexive is
supported on both Active/Standby and Active/Active LR.
NO_SNAT and NO_DNAT - These do not have support for translated_fields, only
source_network and destination_network fields are supported.
NAT64 - translates an external IPv6 address to a internal IPv4 address.
|
string |
Required Enum: SNAT, DNAT, REFLEXIVE, NO_SNAT, NO_DNAT, NAT64 |
children |
Subtree for this type within policy tree
Subtree for this type within policy tree containing nested elements. Note that
this type is applicable to be used in Hierarchical API only.
|
array of ChildPolicyConfigResource Children are not allowed for this type |
|
description |
Description of this resource |
string |
Maximum length: 1024 Sortable |
destination_network |
Represents the destination network
This supports single IP address or comma separated list of single IP
addresses or CIDR. This does not support IP range or IP sets.
For DNAT and NO_DNAT rules, this is a mandatory field, and represents
the destination network for the incoming packets.
For other type of rules, optionally it can contain destination network
of outgoing packets.
NULL value for this field represents ANY network.
For VPC DNAT NATRule, destination network address should be IPv4 address
allocated from External Block associated with VPC.
|
IPElementList |
|
display_name |
Identifier to use when displaying entity in logs or GUI
Defaults to ID if not set |
string |
Maximum length: 255 Sortable |
enabled |
Policy NAT Rule enabled flag
The flag, which suggests whether the NAT rule is enabled or
disabled. The default is True.
|
boolean |
Default: "True" |
firewall_match |
Represents the firewall match flag
It indicates how the firewall matches the address after NATing if firewall
stage is not skipped.
MATCH_EXTERNAL_ADDRESS indicates the firewall will be applied to external address
of a NAT rule. For SNAT, the external address is the translated source address
after NAT is done. For DNAT, the external address is the original destination
address before NAT is done. For REFLEXIVE, to egress traffic, the firewall
will be applied to the translated source address after NAT is done; To ingress
traffic, the firewall will be applied to the original destination address
before NAT is done.
MATCH_INTERNAL_ADDRESS indicates the firewall will be applied to internal
address of a NAT rule. For SNAT, the internal address is the original source
address before NAT is done. For DNAT, the internal address is the translated
destination address after NAT is done. For REFLEXIVE, to egress traffic, the
firewall will be applied to the original source address before NAT is done;
To ingress traffic, the firewall will be applied to the translated destination
address after NAT is done.
BYPASS indicates the firewall stage will be skipped.
For NO_SNAT or NO_DNAT, it must be BYPASS or leave it unassigned
|
string |
Enum: MATCH_EXTERNAL_ADDRESS, MATCH_INTERNAL_ADDRESS, BYPASS Default: "MATCH_INTERNAL_ADDRESS" |
id |
Unique identifier of this resource |
string |
Sortable |
logging |
Policy NAT Rule logging flag
The flag, which suggests whether the logging of NAT rule is enabled or
disabled. The default is False.
|
boolean |
Default: "False" |
marked_for_delete |
Indicates whether the intent object is marked for deletion
Intent objects are not directly deleted from the system when a delete
is invoked on them. They are marked for deletion and only when all the
realized entities for that intent object gets deleted, the intent object
is deleted. Objects that are marked for deletion are not returned in
GET call. One can use the search API to get these objects.
|
boolean |
Readonly Default: "False" |
origin_site_id |
A unique identifier assigned by the system for knowing which site owns an object
This is a UUID generated by the system for knowing which site owns an object.
This is used in NSX+.
|
string |
Readonly |
overridden |
Indicates whether this object is the overridden intent object
Global intent objects cannot be modified by the user.
However, certain global intent objects can be overridden locally by use
of this property. In such cases, the overridden local values take
precedence over the globally defined values for the properties.
|
boolean |
Readonly Default: "False" |
owner_id |
A unique identifier assigned by the system for the ownership of an object
This is a UUID generated by the system for knowing who owns this object.
This is used in NSX+.
|
string |
Readonly |
parent_path |
Path of its parent
Path of its parent |
string |
Readonly |
path |
Absolute path of this object
Absolute path of this object |
string |
Readonly |
policy_based_vpn_mode |
Indicates NSX edge Nat behaviour for inbound VPN tra
It indicates how the NSX edge applies Nat Policy for VPN traffic. It is supported only for
Nat Rule action type DNAT and NO_DNAT. For all other NAT action, leave it unassigned.
BYPASS - Default vpn mode. It indicates that Nat policy will be applied to the inbound traffic
on Routed Based VPN tunnel, if the policy based VTI is in the "scope" for this rule.
Default value will be set to BYPASS if
MATCH - It indicates that this NAT rule will only match the Policy Based VPN traffic.
|
string |
Enum: BYPASS, MATCH |
realization_id |
A unique identifier assigned by the system for realizing intent
This is a UUID generated by the system for realizing the entity object.
In most cases this should be same as 'unique_id' of the entity. However,
in some cases this can be different because of entities have migrated their
unique identifier to NSX Policy intent objects later in the timeline and did
not use unique_id for realization. Realization id is helpful for users to
debug data path to correlate the configuration with corresponding intent.
|
string |
Readonly |
relative_path |
Relative path of this object
Path relative from its parent |
string |
Readonly |
remote_path |
Path of the object on the remote end.
This is the path of the object on the local managers when queried on the NSX+ service,
and path of the object on NSX+ service when queried from the local managers.
|
string |
Readonly |
resource_type |
Must be set to the value PolicyNatRule |
string |
|
scope |
Array of policy paths of labels, ProviderInterface, NetworkInterface
Represents the array of policy paths of ProviderInterface or NetworkInterface or
labels of type ProviderInterface or NetworkInterface or IPSecVpnSession on which the NAT rule should
get enforced.
The interfaces must belong to the same router for which the NAT Rule is created.
|
array of string |
|
sequence_number |
Sequence number of the Nat Rule
The sequence_number decides the rule_priority of a NAT rule.
Sequence_number and rule_priority have 1:1 mapping.For each NAT section,
there will be reserved rule_priority numbers.The valid range of
rule_priority number is from 0 to 2147483647(MAX_INT).
1. INTERNAL section
rule_priority reserved from 0 - 1023 (1024 rules)
valid sequence_number range 0 - 1023
2. USER section
rule_priority reserved from 1024 - 2147482623 (2147481600 rules)
valid sequence_number range 0 - 2147481599
3. DEFAULT section
rule_priority reserved from 2147482624 - 2147483647 (1024 rules)
valid sequence_number range 0 - 1023
|
int |
Default: "0" |
service |
Represents the service on which the NAT rule will be applied
It represents the path of Service on which the NAT rule will be applied.
If not provided or if it is blank then Policy manager will consider it
as ANY.
Please note, if this is a DNAT, the destination_port of the service will
be realized on NSX Manager as the translated_port. And if this is a SNAT,
the destination_port will be ignored.
|
string |
|
source_network |
Represents the source network address
This supports single IP address or comma separated list of single IP
addresses or CIDR. This does not support IP range or IP sets.
For SNAT, NO_SNAT, NAT64 and REFLEXIVE rules, this is a mandatory field and
represents the source network of the packets leaving the network.
For DNAT and NO_DNAT rules, optionally it can contain source network
of incoming packets.
NULL value for this field represents ANY network.
|
IPElementList |
|
tags |
Opaque identifiers meaningful to the API user |
array of Tag |
Maximum items: 30 |
translated_network |
Represents the translated network address
This supports single IP address or comma separated list of single IP
addresses or CIDR.
If user specify the CIDR, this value is actually used as an IP pool that includes both the subnet and
broadcast addresses as valid for NAT translations.
This does not support IP range or IP sets.
Comma separated list of single IP addresses is not suported for DNAT and REFLEXIVE rules.
For SNAT, DNAT, NAT64 and REFLEXIVE rules, this ia a mandatory field, which
represents the translated network address.
For NO_SNAT and NO_DNAT this should be empty.
For VPC SNAT and Refelexive NATRule, translated network address should be
IPv4 address allocated from External Block associated with VPC.
|
IPElementList |
|
translated_ports |
Port number or port range
Please note, if there is service configured in this NAT rule, the translated_port
will be realized on NSX Manager as the destination_port. If there is no sevice configured,
the port will be ignored.
|
PortElement |
|
unique_id |
A unique identifier assigned by the system
This is a UUID generated by the GM/LM to uniquely identify
entities in a federated environment. For entities that are
stretched across multiple sites, the same ID will be used
on all the stretched sites.
|
string |
Readonly |