Set-NetNat

Set-NetNat

Modifies settings for NAT objects.

Syntax

Parameter Set: Query (cdxml)
Set-NetNat [-Name] <String[]> [-AsJob] [-CimSession <CimSession[]> ] [-IcmpQueryTimeout <UInt32> ] [-PassThru] [-TcpEstablishedConnectionTimeout <UInt32> ] [-TcpFilteringBehavior <FilteringBehaviorType> ] [-TcpTransientConnectionTimeout <UInt32> ] [-ThrottleLimit <Int32> ] [-UdpFilteringBehavior <FilteringBehaviorType> ] [-UdpIdleSessionTimeout <UInt32> ] [-UdpInboundRefresh <Boolean> ] [-Confirm] [-WhatIf] [ <CommonParameters>]

Parameter Set: InputObject (cdxml)
Set-NetNat -InputObject <CimInstance[]> [-AsJob] [-CimSession <CimSession[]> ] [-IcmpQueryTimeout <UInt32> ] [-PassThru] [-TcpEstablishedConnectionTimeout <UInt32> ] [-TcpFilteringBehavior <FilteringBehaviorType> ] [-TcpTransientConnectionTimeout <UInt32> ] [-ThrottleLimit <Int32> ] [-UdpFilteringBehavior <FilteringBehaviorType> ] [-UdpIdleSessionTimeout <UInt32> ] [-UdpInboundRefresh <Boolean> ] [-Confirm] [-WhatIf] [ <CommonParameters>]

Detailed Description

The Set-NetNat cmdlet modifies settings for Network Address Translation (NAT) objects. NAT modifies IP address and port information in packet headers. Use this cmdlet to modify the following:

-- Time-out values for ICMP and UDP sessions and TCP connections.
-- Behavior of TCP and UDP filtering.
-- Whether packets from external networks refresh UDP sessions.

Specify NAT objects to modify by using the Name parameter or by using the Get-NetNat cmdlet. Use the New-NetNat cmdlet to create NAT objects.

Parameters

-AsJob

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-CimSession<CimSession[]>

Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session object, such as the output of a New-CimSession or Get-CimSession cmdlet. The default is the current session on the local computer.

Aliases

Session

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-IcmpQueryTimeout<UInt32>

Specifies the length of the time-out period, in seconds, for an ICMP query session.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-InputObject<CimInstance[]>

Specifies an array of NAT objects. To obtain a NAT object, use the Get-NetNat cmdlet or the New-NetNat cmdlet.

Aliases

none

Required?

true

Position?

named

Default Value

none

Accept Pipeline Input?

True (ByValue)

Accept Wildcard Characters?

false

-Name<String[]>

Specifies an array of names of NAT objects.

Aliases

none

Required?

true

Position?

1

Default Value

none

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-PassThru

Returns an object representing the item with which you are working. By default, this cmdlet does not generate any output.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-TcpEstablishedConnectionTimeout<UInt32>

Specifies the length of the time-out period, in seconds, for established TCP connections. Use the TcpTransientConnectionTimeout parameter to modify the time-out period for transient TCP connections.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-TcpFilteringBehavior<FilteringBehaviorType>

Specifies filtering behavior for TCP connections. The acceptable values for this parameter are:

-- EndpointIndepedentFiltering
-- AddressDependentFiltering

The default value is EndpointIndepedentFiltering.

Aliases

none

Required?

false

Position?

named

Default Value

EndpointIndepedentFiltering

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-TcpTransientConnectionTimeout<UInt32>

Specifies the length of the time-out period, in seconds, for transient TCP connections. Use the TcpEstablishedConnectionTimeout parameter to modify the time-out period for established TCP connections.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-ThrottleLimit<Int32>

Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If this parameter is omitted or a value of 0 is entered, then Windows PowerShell® calculates an optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the computer. The throttle limit applies only to the current cmdlet, not to the session or to the computer.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-UdpFilteringBehavior<FilteringBehaviorType>

Specifies filtering behavior for UDP sessions. The acceptable values for this parameter are:

-- EndpointIndepedentFiltering
-- AddressDependentFiltering

The default value is EndpointIndepedentFiltering.

Aliases

none

Required?

false

Position?

named

Default Value

EndpointIndepedentFiltering

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-UdpIdleSessionTimeout<UInt32>

Specifies the length of the time-out period, in seconds, for a UDP session.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-UdpInboundRefresh<Boolean>

Indicates whether a packet from the external network refreshes an existing UDP session. If you specify a value of $True for this parameter, either an inbound packet or an outbound packet refreshes an existing UDP session. If you specify a value of $False, only an outbound packet refreshes a UDP session. The default value is $False.

Aliases

none

Required?

false

Position?

named

Default Value

0

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-Confirm

Prompts you for confirmation before running the cmdlet.

Required?

false

Position?

named

Default Value

false

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-WhatIf

Shows what would happen if the cmdlet runs. The cmdlet is not run.

Required?

false

Position?

named

Default Value

false

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

<CommonParameters>

This cmdlet supports the common parameters: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer, and -OutVariable. For more information, see    about_CommonParameters (https://go.microsoft.com/fwlink/p/?LinkID=113216).

Inputs

The input type is the type of the objects that you can pipe to the cmdlet.

  • None

Outputs

The output type is the type of the objects that the cmdlet emits.

  • Microsoft.Management.Infrastructure.CimInstance#ROOT/StandardCimv2/MSFT_NetNat

Examples

Example 1: Modify settings for a NAT object

This command modifies a NAT object named TSQATenant. The command specifies a value of $True for the UdpInboundRefresh parameter, and, therefore, NAT refreshes UDP sessions for both inbound and outbound packets. The command changes TCP filtering behavior to address dependent filtering.

PS C:\> Set-NetNat -Name "TSQATenant" -TcpFilteringBehavior AddressDependentFiltering -UdpInboundRefresh $True 

Get-NetNat

New-NetNat

Remove-NetNat