Skip to content

Commit b3c135c

Browse files
authored
Merge pull request #266476 from asudbring/nat-freshness
Freshness review of NAT gateway overview
2 parents b63d0f1 + 1219cf7 commit b3c135c

File tree

1 file changed

+64
-49
lines changed

1 file changed

+64
-49
lines changed

articles/nat-gateway/nat-overview.md

Lines changed: 64 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
---
22

33
title: What is Azure NAT Gateway?
4-
titlesuffix: Azure Virtual Network
5-
description: Overview of Azure NAT Gateway features, resources, architecture, and implementation. Learn how Azure NAT Gateway works and how to use NAT gateway resources in Azure.
6-
services: virtual-network
4+
titlesuffix: Azure NAT Gateway
5+
description: Overview of Azure NAT Gateway features, resources, architecture, and implementation. Learn about what NAT gateway is and how to use it.
76
author: asudbring
87
ms.service: nat-gateway
98
ms.topic: conceptual
10-
ms.date: 12/06/2022
9+
ms.date: 02/15/2024
1110
ms.author: allensu
1211
ms.custom: FY23 content-maintenance
12+
#Customer intent: I want to understand what Azure NAT Gateway is and how to use it.
1313
---
1414

1515
# What is Azure NAT Gateway?
@@ -23,26 +23,36 @@ NAT Gateway provides dynamic SNAT port functionality to automatically scale outb
2323
*Figure: Azure NAT Gateway*
2424

2525
Azure NAT Gateway provides outbound connectivity for many Azure resources, including:
26-
* Azure virtual machines or virtual machine scale-sets in a private subnet
27-
* [Azure Kubernetes Services (AKS) clusters](/azure/aks/nat-gateway)
28-
* [Azure Container group](/azure/container-instances/container-instances-nat-gateway)
29-
* [Azure Function Apps](/azure/azure-functions/functions-how-to-use-nat-gateway)
30-
* [Azure Firewall subnet](/azure/firewall/integrate-with-nat-gateway)
31-
* [Azure App Services instances](/azure/app-service/networking/nat-gateway-integration) (web applications, REST APIs, and mobile backends) through [virtual network integration](/azure/app-service/overview-vnet-integration)
32-
* [Azure Databricks](/azure/databricks/security/network/secure-cluster-connectivity#egress-with-default-managed-vnet) or with [VNet injection](/azure/databricks/security/network/secure-cluster-connectivity#egress-with-vnet-injection).
26+
27+
* Azure virtual machines or virtual machine scale-sets in a private subnet.
28+
29+
* [Azure Kubernetes Services (AKS) clusters](/azure/aks/nat-gateway).
30+
31+
* [Azure Container group](/azure/container-instances/container-instances-nat-gateway).
32+
33+
* [Azure Function Apps](/azure/azure-functions/functions-how-to-use-nat-gateway).
34+
35+
* [Azure Firewall subnet](/azure/firewall/integrate-with-nat-gateway).
36+
37+
* [Azure App Services instances](/azure/app-service/networking/nat-gateway-integration) (web applications, REST APIs, and mobile backends) through [virtual network integration](/azure/app-service/overview-vnet-integration).
38+
39+
* [Azure Databricks](/azure/databricks/security/network/secure-cluster-connectivity#egress-with-default-managed-vnet) or with [virtual network injection](/azure/databricks/security/network/secure-cluster-connectivity#egress-with-vnet-injection).
3340

3441
## Azure NAT Gateway benefits
3542

3643
### Simple Setup
3744

38-
Deployments are intentionally made simple with NAT gateway. Attach NAT gateway to a subnet and public IP address and start connecting outbound to the internet right away. There's zero maintenance and routing configurations required. More public IPs or subnets can be added later without impact to your existing configuration.
45+
Deployments are intentionally made simple with NAT gateway. Attach NAT gateway to a subnet and public IP address and start connecting outbound to the internet right away. There's zero maintenance and routing configurations required. More public IPs or subnets can be added later without effect to your existing configuration.
46+
47+
The following steps are an example of how to set up a NAT gateway:
3948

40-
NAT gateway deployment steps:
41-
1. Create a non-zonal or zonal NAT gateway.
42-
2. Assign a public IP address or public IP prefix.
43-
3. Configure virtual network subnet to use a NAT gateway
49+
* Create a nonzonal or zonal NAT gateway.
4450

45-
If necessary, modify TCP idle timeout (optional). Review [timers](/azure/nat-gateway/nat-gateway-resource#idle-timeout-timers) before you change the default.
51+
* Assign a public IP address or public IP prefix.
52+
53+
* Configure virtual network subnet to use a NAT gateway.
54+
55+
If necessary, modify Transmission Control Protocol (TCP) idle timeout (optional). Review [timers](/azure/nat-gateway/nat-gateway-resource#idle-timeout-timers) before you change the default.
4656

4757
### Security
4858

@@ -56,7 +66,7 @@ Azure NAT Gateway is a fully managed and distributed service. It doesn't depend
5666

5767
NAT gateway is scaled out from creation. There isn't a ramp up or scale-out operation required. Azure manages the operation of NAT gateway for you.
5868

59-
Attach NAT gateway to a subnet to provide outbound connectivity for all private resources in that subnet. All subnets in a virtual network can use the same NAT gateway resource. Outbound connectivity can be scaled out by assigning up to 16 public IP addresses or a /28 size public IP prefix to NAT gateway. When a NAT gateway is associated to a public IP prefix, it automatically scales to the number of IP addresses needed for outbound.
69+
Attach NAT gateway to a subnet to provide outbound connectivity for all private resources in that subnet. All subnets in a virtual network can use the same NAT gateway resource. Outbound connectivity can be scaled out by assigning up to 16 public IP addresses or a /28 size public IP prefix to NAT gateway. When a NAT gateway is associated to a public IP prefix, it automatically scales to the number of IP addresses needed for outbound.
6070

6171
### Performance
6272

@@ -69,35 +79,37 @@ A NAT gateway doesn't affect the network bandwidth of your compute resources. Le
6979
### Outbound connectivity
7080

7181
* NAT gateway is the recommended method for outbound connectivity.
82+
7283
* To migrate outbound access to a NAT gateway from default outbound access or load balancer outbound rules, see [Migrate outbound access to Azure NAT Gateway](./tutorial-migrate-outbound-nat.md).
7384

7485
>[!NOTE]
7586
>On September 30th, 2025, [default outbound access](/azure/virtual-network/ip-services/default-outbound-access#when-is-default-outbound-access-provided) for new deployments will be retired. It is recommended to use an explicit form of outbound connectivity instead, like NAT gateway.
7687
77-
* Outbound connectivity with NAT gateway is defined at a per subnet level. NAT gateway replaces the default Internet destination of a subnet.
88+
* Egress is defined at a per subnet level with NAT gateway. NAT gateway replaces the default Internet destination of a subnet.
7889

79-
* No traffic routing configurations are required to use NAT gateway.
90+
* Traffic routing configurations aren't required to use NAT gateway.
8091

8192
* NAT gateway allows flows to be created from the virtual network to the services outside your virtual network. Return traffic from the internet is only allowed in response to an active flow. Services outside your virtual network can’t initiate an inbound connection through NAT gateway.
8293

83-
* NAT gateway takes precedence over other outbound connectivity methods, including Load balancer, instance-level public IP addresses, and Azure Firewall.
94+
* NAT gateway takes precedence over other outbound connectivity methods, including a load balancer, instance-level public IP addresses, and Azure Firewall.
8495

85-
* When NAT gateway is configured to a virtual network where a different outbound connectivity method already exists, NAT gateway takes over all outbound traffic moving forward. There are no drops in traffic flow for existing connections on Load balancer. All new connections use NAT gateway.
96+
* When NAT gateway is configured to a virtual network where a different outbound connectivity method already exists, NAT gateway takes over all outbound traffic moving forward. There are no drops in traffic flow for existing connections on Azure Load Balancer. All new connections use NAT gateway.
8697

8798
* NAT gateway doesn't have the same limitations of SNAT port exhaustion as does [default outbound access](../virtual-network/ip-services/default-outbound-access.md) and [outbound rules of a load balancer](../load-balancer/outbound-rules.md).
8899

89-
* NAT gateway supports TCP and UDP protocols only. ICMP isn't supported.
100+
* NAT gateway supports TCP and User Datagram Protocol (UDP) protocols only. Internet Control Message Protocol (ICMP) isn't supported.
90101

91102
### Traffic routes
92103

93-
* NAT gateway replaces a subnet’s [system default route](/azure/virtual-network/virtual-networks-udr-overview#default) to the internet when configured. When NAT gateway is attached to the subnet, all traffic within the 0.0.0.0/0 prefix will route to NAT gateway before connecting outbound to the internet.
104+
* NAT gateway replaces a subnet’s [system default route](/azure/virtual-network/virtual-networks-udr-overview#default) to the internet when configured. When NAT gateway is attached to the subnet, all traffic within the 0.0.0.0/0 prefix routes to NAT gateway before connecting outbound to the internet.
105+
106+
* You can override NAT gateway as a subnet’s system default route to the internet with the creation of a custom user-defined route (UDR) for 0.0.0.0/0 traffic.
94107

95-
* You can override NAT gateway as a subnet’s system default route to the internet with the creation of a custom user-defined route (UDR) for 0.0.0.0/0 traffic.
108+
* Presence of User Defined Routes (UDRs) for virtual appliances, VPN Gateway, and ExpressRoute for a subnet's 0.0.0.0/0 traffic causes traffic to route to these services instead of NAT gateway.
96109

97-
* Presence of UDRs for virtual appliances, VPN Gateway and ExpressRoute for a subnet's 0.0.0.0/0 traffic will cause traffic to route to these services instead of NAT gateway.
110+
* Outbound connectivity follows this order of precedence among different routing and outbound connectivity methods:
98111

99-
* Outbound connectivity follows this order of precedence among different routing and outbound connectivity methods:
100-
Virtual appliance UDR / VPN Gateway / ExpressRoute >> NAT gateway >> Instance-level public IP address on a virtual machine >> Load balancer outbound rules >> default system route to the internet
112+
* Virtual appliance UDR / VPN Gateway / ExpressRoute >> NAT gateway >> Instance-level public IP address on a virtual machine >> Load balancer outbound rules >> default system route to the internet.
101113

102114
### NAT gateway configurations
103115

@@ -109,45 +121,45 @@ Virtual appliance UDR / VPN Gateway / ExpressRoute >> NAT gateway >> Instance-le
109121

110122
* A NAT gateway can’t be deployed in a [gateway subnet](../vpn-gateway/vpn-gateway-about-vpn-gateway-settings.md#gwsub).
111123

112-
* A NAT gateway resource can use up to 16 IP addresses in any combination of:
124+
* A NAT gateway resource can use up to 16 IP addresses in any combination of the following types:
113125

114-
* Public IP addresses
126+
* Public IP addresses.
115127

116-
* Public IP prefixes
128+
* Public IP prefixes.
117129

118130
* Public IP addresses and prefixes derived from custom IP prefixes (BYOIP), to learn more, see [Custom IP address prefix (BYOIP)](../virtual-network/ip-services/custom-ip-address-prefix.md).
119131

120-
* NAT gateway can’t be associated to an IPv6 public IP address or IPv6 public IP prefix.
132+
* NAT gateway can’t be associated to an IPv6 public IP address or IPv6 public IP prefix.
121133

122-
* NAT gateway can be used with Load balancer using outbound rules to provide dual-stack outbound connectivity, see [dual stack outbound connectivity with NAT gateway and Load balancer](/azure/virtual-network/nat-gateway/tutorial-dual-stack-outbound-nat-load-balancer?tabs=dual-stack-outbound-portal).
134+
* NAT gateway can be used with Load balancer using outbound rules to provide dual-stack outbound connectivity. See [dual stack outbound connectivity with NAT gateway and Load balancer](/azure/virtual-network/nat-gateway/tutorial-dual-stack-outbound-nat-load-balancer?tabs=dual-stack-outbound-portal).
123135

124-
* NAT gateway works with any virtual machine network interface or IP configuration. NAT gateway can SNAT multiple IP configurations on a NIC.
136+
* NAT gateway works with any virtual machine network interface or IP configuration. NAT gateway can SNAT multiple IP configurations on a network interface.
125137

126138
* NAT gateway can be associated to an Azure Firewall subnet in a hub virtual network and provide outbound connectivity from spoke virtual networks peered to the hub. To learn more, see [Azure Firewall integration with NAT gateway](../firewall/integrate-with-nat-gateway.md).
127139

128140
### Availability zones
129141

130-
* A NAT gateway can be created in a specific availability zone or placed in 'no zone'.
142+
* A NAT gateway can be created in a specific availability zone or placed in **no zone**.
131143

132144
* NAT gateway can be isolated in a specific zone when you create [zone isolation scenarios](./nat-availability-zones.md). This deployment is called a zonal deployment. After NAT gateway is deployed, the zone selection can't be changed.
133145

134-
* NAT gateway is placed in 'no zone' by default. A [non-zonal NAT gateway](./nat-availability-zones.md#nonzonal) is placed in a zone for you by Azure.
146+
* NAT gateway is placed in **no zone** by default. A [non-zonal NAT gateway](./nat-availability-zones.md#nonzonal) is placed in a zone for you by Azure.
135147

136-
### NAT gateway and basic SKU resources
148+
### NAT gateway and basic resources
137149

138-
* NAT gateway is compatible with standard SKU public IP addresses or public IP prefix resources or a combination of both.
150+
* NAT gateway is compatible with standard public IP addresses or public IP prefix resources or a combination of both.
139151

140-
* Basic SKU resources, such as basic load balancer or basic public IPs aren't compatible with NAT gateway. NAT gateway can't be used with subnets where basic SKU resources exist. Basic load balancer and basic public IP can be upgraded to standard to work with a NAT gateway
152+
* Basic resources, such as basic load balancer or basic public IPs aren't compatible with NAT gateway. NAT gateway can't be used with subnets where basic resources exist. Basic load balancer and basic public IP can be upgraded to standard to work with a NAT gateway.
141153

142-
* Upgrade a load balancer from basic to standard, see [Upgrade a public basic Azure Load Balancer](/azure/load-balancer/upgrade-basic-standard-with-powershell).
154+
* For more information about upgrading a load balancer from basic to standard, see [Upgrade a public basic Azure Load Balancer](/azure/load-balancer/upgrade-basic-standard-with-powershell).
143155

144-
* Upgrade a public IP from basic to standard, see [Upgrade a public IP address](../virtual-network/ip-services/public-ip-upgrade-portal.md).
145-
146-
* Upgrade a basic public IP attached to a VM from basic to standard, see [Upgrade a basic public IP attached to a VM](/azure/virtual-network/ip-services/public-ip-upgrade-vm).
156+
* For more information about upgrading a public IP from basic to standard, see [Upgrade a public IP address](../virtual-network/ip-services/public-ip-upgrade-portal.md).
157+
158+
* For more information about upgrading a basic public IP attached to a virtual machine from basic to standard, see [Upgrade a basic public IP attached to a virtual machine](/azure/virtual-network/ip-services/public-ip-upgrade-vm).
147159

148160
### Connection timeouts and timers
149161

150-
* NAT gateway sends a TCP Reset (RST) packet for any connection flow that it doesn't recognize as an existing connection. The connection flow may no longer exist if the NAT gateway idle timeout was reached or the connection was closed earlier.
162+
* NAT gateway sends a TCP Reset (RST) packet for any connection flow that it doesn't recognize as an existing connection. The connection flow no longer exists if the NAT gateway idle timeout was reached or the connection was closed earlier.
151163

152164
* When the sender of traffic on the nonexisting connection flow receives the NAT gateway TCP RST packet, the connection is no longer usable.
153165

@@ -161,20 +173,23 @@ Virtual appliance UDR / VPN Gateway / ExpressRoute >> NAT gateway >> Instance-le
161173

162174
* UDP traffic has a port reuse timer of 65 seconds for which a port is in hold down before it's available for reuse to the same destination endpoint.
163175

164-
## Pricing and SLA
176+
## Pricing and Service Level Agreement (SLA)
165177

166178
For Azure NAT Gateway pricing, see [NAT gateway pricing](https://azure.microsoft.com/pricing/details/azure-nat-gateway/).
167179

168180
For information on the SLA, see [SLA for Azure NAT Gateway](https://azure.microsoft.com/support/legal/sla/virtual-network-nat/v1_0/).
169181

170182
## Next steps
171183

172-
* To create and validate a NAT gateway, see [Quickstart: Create a NAT gateway using the Azure portal](quickstart-create-nat-gateway-portal.md).
184+
* For more information about creating and validating a NAT gateway, see [Quickstart: Create a NAT gateway using the Azure portal](quickstart-create-nat-gateway-portal.md).
173185

174186
* To view a video on more information about Azure NAT Gateway, see [How to get better outbound connectivity using an Azure NAT gateway](https://www.youtube.com/watch?v=2Ng_uM0ZaB4).
175187

176-
* Learn about the [NAT gateway resource](./nat-gateway-resource.md).
188+
* For more information about the NAT gateway resource, see [NAT gateway resource](./nat-gateway-resource.md).
189+
190+
* Learn more about Azure NAT Gateway in the following module:
191+
192+
* [Learn module: Introduction to Azure NAT Gateway](/training/modules/intro-to-azure-virtual-network-nat).
177193

178-
* [Learn module: Introduction to Azure NAT Gateway](/training/modules/intro-to-azure-virtual-network-nat).
194+
* For more information about architecture options for Azure NAT Gateway, see [Azure Well-Architected Framework review of an Azure NAT gateway](/azure/architecture/networking/guide/well-architected-network-address-translation-gateway).
179195

180-
* To learn more about architecture options for Azure NAT Gateway, see [Azure Well-Architected Framework review of an Azure NAT gateway](/azure/architecture/networking/guide/well-architected-network-address-translation-gateway).

0 commit comments

Comments
 (0)