New-NetNat

Creates a NAT object.

Syntax

New-NetNat
   [-Name] <String>
   [-ExternalIPInterfaceAddressPrefix <String>]
   [-InternalRoutingDomainId <String>]
   [-InternalIPInterfaceAddressPrefix <String>]
   [-CimSession <CimSession[]>]
   [-ThrottleLimit <Int32>]
   [-AsJob]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

The New-NetNat cmdlet creates a Network Address Translation (NAT) object that translates an internal network address to an external network address. NAT modifies IP address and port information in packet headers.

You can modify some settings by using the Set-NetNat cmdlet.

Examples

Example 1: Create a NAT object for a routing domain

PS C:\> New-NetNat -Name "TSQATenant" -ExternalIPInterfaceAddressPrefix "a.b.c.0/24" -InternalRoutingDomainId "{bb47986c-f134-4a29-ad87-24010bf2c92f}"

This command creates a NAT object named TSQATenant. The command specifies an IP interface address and internal routing domain for TSQATenant. This example uses the placeholder a.b.c.0/24 to represent a public Internet address prefix.

Example 2: Create a NAT object for all the computers on a subnet

PS C:\> New-NetNat -Name "AllTenants" -ExternalIPInterfaceAddressPrefix "a.b.c.0/24"

This command creates a NAT object named AllTenants for all the computers in the specified subnet. This example uses the placeholder a.b.c.0/24 to represent a public Internet address prefix.

Parameters

-AsJob

Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to complete.

The cmdlet immediately returns an object that represents the job and then displays the command prompt. You can continue to work in the session while the job completes. To manage the job, use the *-Job cmdlets. To get the job results, use the Receive-Job cmdlet.

For more information about Windows PowerShell background jobs, see about_Jobs.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-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.

Type:CimSession[]
Aliases:Session
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

Prompts you for confirmation before running the cmdlet.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ExternalIPInterfaceAddressPrefix

Specifies the address prefix of the external interface, which connects the NAT to the external network.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InternalIPInterfaceAddressPrefix

Specifies the address prefix of the internal interface, which connects the NAT to the internal network.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InternalRoutingDomainId

Specifies the GUID of the routing domain of the internal interface.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Name

Specifies a name for the NAT object.

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-ThrottleLimit

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.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

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

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Inputs

None

Outputs

CimInstance