{"id":"ede5eafb-62ce-458b-b851-e2fb78205d15","shortId":"ycKAkD","kind":"skill","title":"azure-nat-gateway","tagline":"Expert knowledge for Azure NAT Gateway development including troubleshooting, best practices, decision making, architecture & design patterns, limits & quotas, configuration, and deployment. Use when managing SNAT ports, outbound IPs, flow logs, hub-spoke egress, or Azure Firewal","description":"# Azure NAT Gateway Skill\n\nThis skill provides expert guidance for Azure NAT Gateway. Covers troubleshooting, best practices, decision making, architecture & design patterns, limits & quotas, configuration, and deployment. It combines local quick-reference content with remote documentation fetching capabilities.\n\n## How to Use This Skill\n\n> **IMPORTANT for Agent**: Use the **Category Index** below to locate relevant sections. For categories with line ranges (e.g., `L35-L120`), use `read_file` with the specified lines. For categories with file links (e.g., `[security.md](security.md)`), use `read_file` on the linked reference file\n\n> **IMPORTANT for Agent**: If `metadata.generated_at` is more than 3 months old, suggest the user pull the latest version from the repository. If `mcp_microsoftdocs` tools are not available, suggest the user install it: [Installation Guide](https://github.com/MicrosoftDocs/mcp/blob/main/README.md)\n\nThis skill requires **network access** to fetch documentation content:\n- **Preferred**: Use `mcp_microsoftdocs:microsoft_docs_fetch` with query string `from=learn-agent-skill`. Returns Markdown.\n- **Fallback**: Use `fetch_webpage` with query string `from=learn-agent-skill&accept=text/markdown`. Returns Markdown.\n\n## Category Index\n\n| Category | Lines | Description |\n|----------|-------|-------------|\n| Troubleshooting | L35-L39 | Diagnosing and fixing NAT Gateway issues: reading flow logs, resolving misconfigurations, connectivity failures with Azure services, and outbound internet connection problems. |\n| Best Practices | L40-L44 | Guidance on reducing SNAT port exhaustion and optimizing outbound connectivity patterns when using Azure NAT Gateway. |\n| Decision Making | L45-L51 | Guidance on choosing NAT Gateway SKUs, migrating existing NAT Gateways to StandardV2, and moving outbound internet access from other methods to NAT Gateway. |\n| Architecture & Design Patterns | L52-L60 | Design patterns for placing NAT Gateway in VNets, hub-spoke, with NVAs, and with internal/public load balancers, plus scaling outbound traffic and combining with Azure Firewall. |\n| Limits & Quotas | L61-L65 | NAT Gateway limits, SNAT port quotas, connection scaling behavior, per-resource caps, and FAQs on throughput, IPs, and troubleshooting limit-related issues. |\n| Configuration | L66-L74 | Configuring NAT Gateway (Standard and StandardV2), managing IPs/resources, setting up flow logs, and configuring monitoring, metrics, and alerts for gateway traffic. |\n| Deployment | L75-L80 | How to deploy and redeploy NAT Gateway (ARM/Bicep), migrate or move outbound traffic from VMs/public IPs, and transition existing outbound access to Azure NAT Gateway. |\n\n### Troubleshooting\n| Topic | URL |\n|-------|-----|\n| Monitor and troubleshoot with NAT Gateway flow logs | https://learn.microsoft.com/en-us/azure/nat-gateway/monitor-nat-gateway-flow-logs |\n\n### Best Practices\n| Topic | URL |\n|-------|-----|\n| Optimize SNAT usage with Azure NAT Gateway | https://learn.microsoft.com/en-us/azure/nat-gateway/nat-gateway-snat |\n\n### Decision Making\n| Topic | URL |\n|-------|-----|\n| Migrate Azure NAT Gateway to StandardV2 | https://learn.microsoft.com/en-us/azure/nat-gateway/nat-gateway-v2-migrate |\n| Choose between Azure NAT Gateway SKUs | https://learn.microsoft.com/en-us/azure/nat-gateway/nat-sku |\n| Migrate Azure outbound access to NAT Gateway | https://learn.microsoft.com/en-us/azure/nat-gateway/tutorial-migrate-outbound-nat |\n\n### Architecture & Design Patterns\n| Topic | URL |\n|-------|-----|\n| Design virtual networks using Azure NAT Gateway | https://learn.microsoft.com/en-us/azure/nat-gateway/nat-gateway-design |\n| Scale outbound traffic with NAT Gateway and Azure Firewall | https://learn.microsoft.com/en-us/azure/nat-gateway/tutorial-hub-spoke-nat-firewall |\n| Integrate NAT Gateway in hub-spoke with NVA | https://learn.microsoft.com/en-us/azure/nat-gateway/tutorial-hub-spoke-route-nat |\n| Use NAT Gateway with internal load balancer | https://learn.microsoft.com/en-us/azure/nat-gateway/tutorial-nat-gateway-load-balancer-internal-portal |\n| Use NAT Gateway with public load balancer | https://learn.microsoft.com/en-us/azure/nat-gateway/tutorial-nat-gateway-load-balancer-public-portal |\n\n### Limits & Quotas\n| Topic | URL |\n|-------|-----|\n| Azure NAT Gateway FAQs with limits and behavior | https://learn.microsoft.com/en-us/azure/nat-gateway/faq |\n\n### Configuration\n| Topic | URL |\n|-------|-----|\n| Manage Azure NAT Gateway configuration and IPs | https://learn.microsoft.com/en-us/azure/nat-gateway/manage-nat-gateway |\n| Reference for Azure NAT Gateway monitoring data | https://learn.microsoft.com/en-us/azure/nat-gateway/monitor-nat-gateway-reference |\n| Enable and use StandardV2 NAT Gateway flow logs | https://learn.microsoft.com/en-us/azure/nat-gateway/nat-gateway-flow-logs |\n| Configure Azure NAT Gateway resource components | https://learn.microsoft.com/en-us/azure/nat-gateway/nat-gateway-resource |\n| Configure metrics and alerts for Azure NAT Gateway | https://learn.microsoft.com/en-us/azure/nat-gateway/nat-metrics |\n\n### Deployment\n| Topic | URL |\n|-------|-----|\n| Deploy Standard V2 NAT Gateway with ARM/Bicep | https://learn.microsoft.com/en-us/azure/nat-gateway/quickstart-create-nat-gateway-v2-templates |\n| Redeploy NAT Gateway after cross-region resource move | https://learn.microsoft.com/en-us/azure/nat-gateway/region-move-nat-gateway |\n| Move VM public IP outbound traffic to NAT Gateway | https://learn.microsoft.com/en-us/azure/nat-gateway/tutorial-migrate-ilip-nat |","tags":["azure","nat","gateway","agent","skills","microsoftdocs","agent-skills","agentic-skills","agentskill","ai-agents","ai-coding","azure-functions"],"capabilities":["skill","source-microsoftdocs","skill-azure-nat-gateway","topic-agent","topic-agent-skills","topic-agentic-skills","topic-agentskill","topic-ai-agents","topic-ai-coding","topic-azure","topic-azure-functions","topic-azure-kubernetes-service","topic-azure-openai","topic-azure-sql-database","topic-azure-storage"],"categories":["Agent-Skills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/MicrosoftDocs/Agent-Skills/azure-nat-gateway","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add MicrosoftDocs/Agent-Skills","source_repo":"https://github.com/MicrosoftDocs/Agent-Skills","install_from":"skills.sh"}},"qualityScore":"0.698","qualityRationale":"deterministic score 0.70 from registry signals: · indexed on github topic:agent-skills · 497 github stars · SKILL.md body (5,557 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-04-22T06:53:35.184Z","embedding":null,"createdAt":"2026-04-18T21:59:33.544Z","updatedAt":"2026-04-22T06:53:35.184Z","lastSeenAt":"2026-04-22T06:53:35.184Z","tsv":"'/en-us/azure/nat-gateway/faq':539 '/en-us/azure/nat-gateway/manage-nat-gateway':552 '/en-us/azure/nat-gateway/monitor-nat-gateway-flow-logs':419 '/en-us/azure/nat-gateway/monitor-nat-gateway-reference':562 '/en-us/azure/nat-gateway/nat-gateway-design':480 '/en-us/azure/nat-gateway/nat-gateway-flow-logs':573 '/en-us/azure/nat-gateway/nat-gateway-resource':582 '/en-us/azure/nat-gateway/nat-gateway-snat':433 '/en-us/azure/nat-gateway/nat-gateway-v2-migrate':446 '/en-us/azure/nat-gateway/nat-metrics':593 '/en-us/azure/nat-gateway/nat-sku':455 '/en-us/azure/nat-gateway/quickstart-create-nat-gateway-v2-templates':606 '/en-us/azure/nat-gateway/region-move-nat-gateway':618 '/en-us/azure/nat-gateway/tutorial-hub-spoke-nat-firewall':492 '/en-us/azure/nat-gateway/tutorial-hub-spoke-route-nat':504 '/en-us/azure/nat-gateway/tutorial-migrate-ilip-nat':630 '/en-us/azure/nat-gateway/tutorial-migrate-outbound-nat':465 '/en-us/azure/nat-gateway/tutorial-nat-gateway-load-balancer-internal-portal':514 '/en-us/azure/nat-gateway/tutorial-nat-gateway-load-balancer-public-portal':524 '/microsoftdocs/mcp/blob/main/readme.md)':168 '3':139 'accept':207 'access':173,283,401,459 'agent':88,132,191,205 'alert':373,586 'architectur':18,61,290,466 'arm/bicep':388,603 'avail':158 'azur':2,8,40,42,52,234,259,321,403,428,439,449,457,475,488,529,544,555,575,588 'azure-nat-gateway':1 'balanc':313,511,521 'behavior':336,536 'best':14,57,241,420 'cap':340 'capabl':80 'categori':91,99,115,211,213 'choos':269,447 'combin':70,319 'compon':579 'configur':23,66,352,356,369,540,547,574,583 'connect':231,239,255,334 'content':75,177 'cover':55 'cross':612 'cross-region':611 'data':559 'decis':16,59,262,434 'deploy':25,68,377,383,594,597 'descript':215 'design':19,62,291,296,467,471 'develop':11 'diagnos':220 'doc':183 'document':78,176 'e.g':103,119 'egress':38 'enabl':563 'exhaust':251 'exist':274,399 'expert':5,49 'failur':232 'fallback':195 'faq':342,532 'fetch':79,175,184,197 'file':109,117,124,129 'firew':41 'firewal':322,489 'fix':222 'flow':33,227,366,415,569 'gateway':4,10,44,54,224,261,271,276,289,301,329,358,375,387,405,414,430,441,451,462,477,486,495,507,517,531,546,557,568,577,590,601,609,627 'github.com':167 'github.com/microsoftdocs/mcp/blob/main/readme.md)':166 'guid':165 'guidanc':50,246,267 'hub':36,305,498 'hub-spok':35,304,497 'import':86,130 'includ':12 'index':92,212 'instal':162,164 'integr':493 'intern':509 'internal/public':311 'internet':238,282 'ip':32,345,396,549,622 'ips/resources':363 'issu':225,351 'knowledg':6 'l120':106 'l35':105,218 'l35-l120':104 'l35-l39':217 'l39':219 'l40':244 'l40-l44':243 'l44':245 'l45':265 'l45-l51':264 'l51':266 'l52':294 'l52-l60':293 'l60':295 'l61':326 'l61-l65':325 'l65':327 'l66':354 'l66-l74':353 'l74':355 'l75':379 'l75-l80':378 'l80':380 'latest':147 'learn':190,204 'learn-agent-skil':189,203 'learn.microsoft.com':418,432,445,454,464,479,491,503,513,523,538,551,561,572,581,592,605,617,629 'learn.microsoft.com/en-us/azure/nat-gateway/faq':537 'learn.microsoft.com/en-us/azure/nat-gateway/manage-nat-gateway':550 'learn.microsoft.com/en-us/azure/nat-gateway/monitor-nat-gateway-flow-logs':417 'learn.microsoft.com/en-us/azure/nat-gateway/monitor-nat-gateway-reference':560 'learn.microsoft.com/en-us/azure/nat-gateway/nat-gateway-design':478 'learn.microsoft.com/en-us/azure/nat-gateway/nat-gateway-flow-logs':571 'learn.microsoft.com/en-us/azure/nat-gateway/nat-gateway-resource':580 'learn.microsoft.com/en-us/azure/nat-gateway/nat-gateway-snat':431 'learn.microsoft.com/en-us/azure/nat-gateway/nat-gateway-v2-migrate':444 'learn.microsoft.com/en-us/azure/nat-gateway/nat-metrics':591 'learn.microsoft.com/en-us/azure/nat-gateway/nat-sku':453 'learn.microsoft.com/en-us/azure/nat-gateway/quickstart-create-nat-gateway-v2-templates':604 'learn.microsoft.com/en-us/azure/nat-gateway/region-move-nat-gateway':616 'learn.microsoft.com/en-us/azure/nat-gateway/tutorial-hub-spoke-nat-firewall':490 'learn.microsoft.com/en-us/azure/nat-gateway/tutorial-hub-spoke-route-nat':502 'learn.microsoft.com/en-us/azure/nat-gateway/tutorial-migrate-ilip-nat':628 'learn.microsoft.com/en-us/azure/nat-gateway/tutorial-migrate-outbound-nat':463 'learn.microsoft.com/en-us/azure/nat-gateway/tutorial-nat-gateway-load-balancer-internal-portal':512 'learn.microsoft.com/en-us/azure/nat-gateway/tutorial-nat-gateway-load-balancer-public-portal':522 'limit':21,64,323,330,349,525,534 'limit-rel':348 'line':101,113,214 'link':118,127 'load':312,510,520 'local':71 'locat':95 'log':34,228,367,416,570 'make':17,60,263,435 'manag':28,362,543 'markdown':194,210 'mcp':153,180 'metadata.generated':134 'method':286 'metric':371,584 'microsoft':182 'microsoftdoc':154,181 'migrat':273,389,438,456 'misconfigur':230 'monitor':370,409,558 'month':140 'move':280,391,615,619 'nat':3,9,43,53,223,260,270,275,288,300,328,357,386,404,413,429,440,450,461,476,485,494,506,516,530,545,556,567,576,589,600,608,626 'network':172,473 'nva':501 'nvas':308 'old':141 'optim':253,424 'outbound':31,237,254,281,316,392,400,458,482,623 'pattern':20,63,256,292,297,468 'per':338 'per-resourc':337 'place':299 'plus':314 'port':30,250,332 'practic':15,58,242,421 'prefer':178 'problem':240 'provid':48 'public':519,621 'pull':145 'queri':186,200 'quick':73 'quick-refer':72 'quota':22,65,324,333,526 'rang':102 'read':108,123,226 'redeploy':385,607 'reduc':248 'refer':74,128,553 'region':613 'relat':350 'relev':96 'remot':77 'repositori':151 'requir':171 'resolv':229 'resourc':339,578,614 'return':193,209 'scale':315,335,481 'section':97 'security.md':120,121 'servic':235 'set':364 'skill':45,47,85,170,192,206 'skill-azure-nat-gateway' 'skus':272,452 'snat':29,249,331,425 'source-microsoftdocs' 'specifi':112 'spoke':37,306,499 'standard':359,598 'standardv2':278,361,443,566 'string':187,201 'suggest':142,159 'text/markdown':208 'throughput':344 'tool':155 'topic':407,422,436,469,527,541,595 'topic-agent' 'topic-agent-skills' 'topic-agentic-skills' 'topic-agentskill' 'topic-ai-agents' 'topic-ai-coding' 'topic-azure' 'topic-azure-functions' 'topic-azure-kubernetes-service' 'topic-azure-openai' 'topic-azure-sql-database' 'topic-azure-storage' 'traffic':317,376,393,483,624 'transit':398 'troubleshoot':13,56,216,347,406,411 'url':408,423,437,470,528,542,596 'usag':426 'use':26,83,89,107,122,179,196,258,474,505,515,565 'user':144,161 'v2':599 'version':148 'virtual':472 'vm':620 'vms/public':395 'vnet':303 'webpag':198","prices":[{"id":"b573c031-0e89-4252-8719-979f8783cee9","listingId":"ede5eafb-62ce-458b-b851-e2fb78205d15","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"MicrosoftDocs","category":"Agent-Skills","install_from":"skills.sh"},"createdAt":"2026-04-18T21:59:33.544Z"}],"sources":[{"listingId":"ede5eafb-62ce-458b-b851-e2fb78205d15","source":"github","sourceId":"MicrosoftDocs/Agent-Skills/azure-nat-gateway","sourceUrl":"https://github.com/MicrosoftDocs/Agent-Skills/tree/main/skills/azure-nat-gateway","isPrimary":false,"firstSeenAt":"2026-04-18T21:59:33.544Z","lastSeenAt":"2026-04-22T06:53:35.184Z"}],"details":{"listingId":"ede5eafb-62ce-458b-b851-e2fb78205d15","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"MicrosoftDocs","slug":"azure-nat-gateway","github":{"repo":"MicrosoftDocs/Agent-Skills","stars":497,"topics":["agent","agent-skills","agentic-skills","agentskill","ai","ai-agents","ai-coding","azure","azure-functions","azure-kubernetes-service","azure-openai","azure-sql-database","azure-storage","azure-virtual-machine","claude-code","github-copilot","microsoft-learn","openai-codex","skills"],"license":"cc-by-4.0","html_url":"https://github.com/MicrosoftDocs/Agent-Skills","pushed_at":"2026-04-22T01:37:27Z","description":"Curated Agent Skills for Microsoft & Azure – giving AI coding assistants structured, real-time expertise from Microsoft Learn docs.","skill_md_sha":"ba2d905346848231917f5e40f0e66e6f6283fa8b","skill_md_path":"skills/azure-nat-gateway/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/MicrosoftDocs/Agent-Skills/tree/main/skills/azure-nat-gateway"},"layout":"multi","source":"github","category":"Agent-Skills","frontmatter":{"name":"azure-nat-gateway","description":"Expert knowledge for Azure NAT Gateway development including troubleshooting, best practices, decision making, architecture & design patterns, limits & quotas, configuration, and deployment. Use when managing SNAT ports, outbound IPs, flow logs, hub-spoke egress, or Azure Firewall integration, and other Azure NAT Gateway related development tasks. Not for Azure Virtual Network (use azure-virtual-network), Azure Virtual Network Manager (use azure-virtual-network-manager), Azure Virtual WAN (use azure-virtual-wan), Azure VPN Gateway (use azure-vpn-gateway).","compatibility":"Requires network access. Uses mcp_microsoftdocs:microsoft_docs_fetch or fetch_webpage to retrieve documentation."},"skills_sh_url":"https://skills.sh/MicrosoftDocs/Agent-Skills/azure-nat-gateway"},"updatedAt":"2026-04-22T06:53:35.184Z"}}