New-AzLoadBalancerInboundNatRuleConfig

Creates an inbound NAT rule configuration for a load balancer.

Syntax

New-AzLoadBalancerInboundNatRuleConfig
   -Name <String>
   [-Protocol <String>]
   [-FrontendPort <Int32>]
   [-BackendPort <Int32>]
   [-IdleTimeoutInMinutes <Int32>]
   [-EnableFloatingIP]
   [-EnableTcpReset]
   [-FrontendIpConfiguration <PSFrontendIPConfiguration>]
   [-FrontendPortRangeStart <Int32>]
   [-FrontendPortRangeEnd <Int32>]
   [-BackendAddressPool <PSBackendAddressPool>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzLoadBalancerInboundNatRuleConfig
   -Name <String>
   [-Protocol <String>]
   [-FrontendPort <Int32>]
   [-BackendPort <Int32>]
   [-IdleTimeoutInMinutes <Int32>]
   [-EnableFloatingIP]
   [-EnableTcpReset]
   [-FrontendIpConfigurationId <String>]
   [-FrontendPortRangeStart <Int32>]
   [-FrontendPortRangeEnd <Int32>]
   [-BackendAddressPoolId <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

The New-AzLoadBalancerInboundNatRuleConfig cmdlet creates an inbound network address translation (NAT) rule configuration for an Azure load balancer.

Examples

Example 1: Create an inbound NAT rule configuration for a load balancer

$publicip = New-AzPublicIpAddress -ResourceGroupName "MyResourceGroup" -Name "MyPublicIP" -Location "West US" -AllocationMethod "Dynamic"
$frontend = New-AzLoadBalancerFrontendIpConfig -Name "FrontendIpConfig01" -PublicIpAddress $publicip
New-AzLoadBalancerInboundNatRuleConfig -Name "MyInboundNatRule" -FrontendIPConfiguration $frontend -Protocol "Tcp" -FrontendPort 3389 -BackendPort 3389

The first command creates a public IP address named MyPublicIP in the resource group named MyResourceGroup, and then stores it in the $publicip variable. The second command creates a front-end IP configuration named FrontendIpConfig01 using the public IP address in $publicip, and then stores it in the $frontend variable. The third command creates an inbound NAT rule configuration named MyInboundNatRule using the front-end object in $frontend. The TCP protocol is specified and the front-end port is 3389, the same as the backend port in this case. The FrontendIpConfiguration, Protocol, FrontendPort, and BackendPort parameters are all required to create an inbound NAT rule configuration.

Example 2: Create an inbound NAT rule V2 configuration for a load balancer

$slb = Get-AzLoadBalancer -Name "MyLoadBalancer" -ResourceGroupName "MyResourceGroup"
$natRuleV2 = New-AzLoadBalancerInboundNatRuleConfig -Name natRuleV2 -Protocol "Tcp" -FrontendIpConfiguration $slb.FrontendIpConfigurations[0] -FrontendPortRangeStart 3390 -FrontendPortRangeEnd 4001 -BackendAddressPool $slb.BackendAddressPools[0] -IdleTimeoutInMinutes 4 -BackendPort 3389

The first command gets the load balancer named MyloadBalancer, and then stores it in the variable $slb. The second command creates an inbound NAT rule configuration named natRuleV2.The FrontendIpConfiguration, BackendAddressPool, Protocol, FrontendPortRangeStart, FrontendPortRangeEnd and BackendPort parameters are all required to create an inbound NAT rule V2 configuration.

Parameters

-BackendAddressPool

Specifies the backend address pool to associate with an inbound NAT rule configuration.

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

-BackendAddressPoolId

Specifies the ID of a BackendAddressPool object to associate with an inbound NAT rule configuration.

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

-BackendPort

Specifies the backend port for traffic that is matched by this rule configuration.

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

-Confirm

Prompts you for confirmation before running the cmdlet.

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

-DefaultProfile

The credentials, account, tenant, and subscription used for communication with azure.

Type:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EnableFloatingIP

Indicates that this cmdlet enables a floating IP address for a rule configuration.

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

-EnableTcpReset

Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP.

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

-FrontendIpConfiguration

Specifies a list of front-end IP addresses to associate with a load balancer rule configuration.

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

-FrontendIpConfigurationId

Specifies the ID for a front-end IP address configuration.

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

-FrontendPort

Specifies the front-end port that is matched by a load balancer rule configuration.

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

-FrontendPortRangeEnd

Specifies the last port number in the range of external ports that is used by a rule configuration. Acceptable values range between 1 and 65535.

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-FrontendPortRangeStart

Specifies the first port number in the range of external ports that is used by a rule configuration. Acceptable values range between 1 and 65534.

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-IdleTimeoutInMinutes

Specifies the length of time, in minutes, for which the state of conversations is maintained in a load balancer.

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

-Name

Specifies the name of the rule configuration that this cmdlet creates.

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

-Protocol

Specifies a protocol. The acceptable values for this parameter are:

  • Tcp
  • Udp
Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
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:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Inputs

String

Int32

PSLoadBalancer

PSFrontendIPConfiguration

PSBackendAddressPool

Outputs

PSInboundNatRule