AZ-104 · Configure & Manage Virtual Networks Concept map + module map for the networking path.

Configure & Manage Virtual Networks — MOC

MS Learn path: Configure and manage virtual networks for Azure administrators · Largest skill area on the AZ-104 exam.

Map / Canvas

The core idea

Virtual networks are Azure’s software-defined networking. You design IP space (CIDR), segment it into subnets, connect VNets to each other (vnet-peering) and to on-premises (vpn-gateway/expressroute), secure traffic (nsg/asg/azure-firewall), route it (route-table/bgp), resolve names (azure-dns/private-dns), and balance load (load-balancer/application-gateway/traffic-manager). One network, many layers — this MOC ties them together.

Concepts (linked from here)

Core topology

Connectivity

Security

Name resolution

Load balancing & traffic

Modules in this path

Hybrid connectivity is covered conceptually here via vpn-gateway and expressroute (no dedicated module in this path; see the associated hybrid-networking learn path).

Skills measured (current exam blueprint)

  1. Configure VNets, subnets, peering, public IPs, UDRs, and troubleshoot connectivity.
  2. Configure NSGs/ASGs, evaluate effective rules, Azure Bastion, service endpoints, and private endpoints.
  3. Configure Azure DNS, internal/public Load Balancer, and troubleshoot load balancing.

Route check: Draw a packet’s route from a VM to a private PaaS endpoint, naming the subnet, NSG, route, DNS record, and endpoint involved. The coverage audit identifies remaining gaps, including public IPs and effective NSG-rule evaluation.

Cross-module lab

Ordered practice route

  1. Complete configure-virtual-networks, then az104-vnet-routing-effective-rules-lab. You should now be able to distinguish address planning, routing, and NSG authorization from their observable outputs.
  2. Complete host-domain-azure-dns, then az104-private-dns-bastion-lab. You should now be able to trace private name resolution and reach a private-only VM without creating a VM public IP.
  3. Complete intro-to-azure-load-balancer, then az104-internal-load-balancer-health-lab. You should now be able to inspect a private frontend and diagnose a failed backend health probe.

Practice questions

Conceptual checkpoint

Explain the sequence in this path using one workload scenario: identify the boundary being changed, the identity or tool acting on it, the expected evidence, and the failure that would change your decision.

Sources and re-audit

Re-audit when the AZ-104 course path, study-guide effective date, or the services and permissions taught here change.

Module 1 · Configure Virtual Networks

MS Learn: Configure Virtual Networks · learn.wwl.configure-virtual-networks Module note for Path MOC

Overview

This is the foundation module of the networking path. It covers designing and implementing the IP address space (CIDR/IP addressing) and creating a Virtual Network segmented into subnet, then assigning IP addresses to resources. Everything else in the path (peering, routing, security, DNS) builds on these core objects.

Learning objectives (from Microsoft Learn)

In this module, you learn how to:

  • Describe Azure virtual network features and components.
  • Identify features and use cases for subnets and subnetting.
  • Identify use cases for private and public IP addresses.
  • Create a virtual network and assign IP addresses.

Units

  1. Introduction
  2. Plan virtual networks
  3. Create subnets
  4. Create a virtual network
  5. Plan IP addressing
  6. Create public IP addressing
  7. Associate public IP addresses
  8. Associate private IP addresses
  9. Lab: Configure and design Azure Virtual Networks
  10. Knowledge check
  11. Summary and resources

Concepts introduced

Key terms & commands (Azure CLI)

# Plan: private range (e.g. 10.0.0.0/16), subnets within it
az vnet create -g <rg> -n <vnet> --address-prefixes 10.0.0.0/16     --subnet-name snet-frontend --subnet-prefixes 10.0.1.0/24
az vnet subnet create -g <rg> --vnet-name <vnet> -n snet-app     --address-prefixes 10.0.2.0/24
az network public-ip create -g <rg> -n <pip> --allocation-method static     --sku Standard

Hands-on

  • Create a VNet + subnets in the portal and confirm reserved addresses.
  • Assign a static public IP and note private vs public address widths for a VM NIC.

Exam focus

  • VNet is regional; subnets must lie within and not overlap.
  • Reserved addresses in each subnet (~5 per subnet).
  • Private RFC1918 vs public IP; dynamic vs static allocation.
  • One NIC = one private IP; NIC in one subnet/VNet.

Path MOC · vnet · subnet · cidr-ip-addressing · configure-vnet-peering · control-network-traffic-flow-with-routes

Module 2 · Configure Virtual Network Peering

MS Learn: Configure Azure Virtual Network Peering · learn.wwl.configure-vnet-peering Module note for Path MOC

Overview

Connect separate VNets so they can talk to each other with near-LAN performance via the Microsoft backbone. The module covers when to peer, how to enable gateway transit, and how to do hub-and-spoke / service chaining with UDRs.

Learning objectives (from Microsoft Learn)

In this module, you learn how to:

  • Identify usage cases and product features of Azure Virtual Network peering.
  • Configure your network to implement Azure VPN Gateway for transit connectivity.
  • Extend peering by using a hub and spoke network with user-defined routes and service chaining.

Units

  1. Introduction
  2. Determine Azure Virtual Network peering use cases
  3. Determine gateway transit connectivity
  4. Create peering
  5. Determine service-chaining use cases
  6. Interactive lab: Configure VNet peering
  7. Knowledge check
  8. Summary and resources

Concepts introduced

Key terms & commands (Azure CLI)

az network vnet peering create -g <rg1> --name peer-1to2     --vnet-name <vnet1> --remote-vnet <vnet2-id>     --allow-vnet-access
az network vnet peering create -g <rg2> --name peer-2to1     --vnet-name <vnet2> --remote-vnet <vnet1-id>     --allow-vnet-access

Hands-on

  • Create two VNets with non-overlapping ranges, peer them (both directions), and verify VM connectivity.
  • Enable gateway transit on the hub and use remote gateways on a spoke; confirm spoke→on-prem path.
  • Add a UDR on a spoke to force traffic through the hub’s Firewall/NVA (service chaining).

Exam focus

  • Peering is non-transitive — the classic gotcha.
  • Each VNet needs its own peering link (both sides).
  • No overlapping address spaces between peered VNets.
  • Gateway transit (hub) + use remote gateways (spoke) settings.

Path MOC · vnet-peering · vnet · route-table · vpn-gateway · virtual-wan

Module 3 · Configure Network Security Groups

MS Learn: Configure Network Security Groups · learn.wwl.configure-network-security-groups Module note for Path MOC

Overview

Add the security layer: filter inbound/outbound traffic at the subnet and/or NIC boundary using Network Security Groups, and group workloads by role using Application Security Groups to keep rules readable and portable.

Learning objectives (from Microsoft Learn)

In this module, you learn how to:

  • Determine when to use network security groups.
  • Create network security groups.
  • Implement and evaluate network security group rules.
  • Describe the function of application security groups.

Units

  1. Introduction
  2. Implement network security groups
  3. Determine NSG rules
  4. Determine effective (NSG) rules
  5. Create NSG rules
  6. Implement application security groups (ASGs)
  7. Interactive lab: implement network security groups
  8. Knowledge check
  9. Summary and resources

Concepts introduced

Key terms & commands (Azure CLI)

az network nsg create -g <rg> -n nsg-web
az network nsg rule create -g <rg> --nsg-name nsg-web -n r1     --priority 100 --source-address-prefixes Internet --destination-port-ranges 80 443     --access Allow --direction Inbound --protocol Tcp
az network vnet subnet update -g <rg> --vnet-name <vnet> -n snet-web     --network-security-group nsg-web

Hands-on

  • Create an NSG, associate to a subnet; watch effective rules combine subnet+NIC.
  • Build an ASG, assign VMs, and write an NSG rule using the ASG as source/destination.
  • Use Network Watcher → IP Flow Verify to confirm a specific flow is allowed/denied.

Exam focus

  • Priority order (lower number wins); default rules (vnet-internal allow, deny internet inbound) can be overridden, not deleted.
  • Effective rules = subnet rules then NIC rules.
  • NSG = filter; route table = path.
  • ASG lets NSG rules reference roles/names instead of IPs.

Path MOC · nsg · asg · subnet · configure-virtual-networks

Module 4 · Manage & Control Traffic Flow with Routes

MS Learn: Manage and control traffic flow in your Azure deployment with routes · learn.control-network-traffic-flow-with-routes Module note for Path MOC

Overview

Steer where traffic actually goes. Azure provides automatic system routes; this module shows how to override them with user-defined routes (UDRs) and deploy a network virtual appliance (NVA) — a VM acting as a firewall/router — to inspect or force traffic through a chosen path.

Learning objectives (from Microsoft Learn)

In this module, you will:

  • Identify the routing capabilities of an Azure virtual network.
  • Configure routing within a virtual network.
  • Deploy a basic network virtual appliance.
  • Configure routing to send traffic through a network virtual appliance.

Units

  1. Introduction
  2. Azure Virtual Network route tables
  3. Exercise: create custom (user-defined) routes
  4. Network virtual appliances (NVAs)
  5. Exercise: create an NVA VM
  6. Exercise: route traffic through the NVA
  7. Summary

Concepts introduced

  • Route tables & UDRs — override system routes at the subnet level.
  • BGP — dynamic route exchange for hybrid connectivity (contrast to static UDRs).
  • Azure Firewall — the managed alternative to a self-run NVA.
  • VNet / subnet — the scope where routes apply.

Key terms & commands (Azure CLI)

az network route-table create -g <rg> -n rt-none
az network route-table route create -g <rg> --route-table-name rt-none -n to-internet     --address-prefix 0.0.0.0/0 --next-hop-type Internet
az network vnet subnet update -g <rg> --vnet-name <vnet> -n snet-app --route-table rt-none

Hands-on

  • Create a route table, add a UDR, associate to a subnet, and use Network Watcher → Next Hop to confirm the applied next hop.
  • Deploy an NVA VM, add a UDR pointing 0.0.0.0/0 (or specific prefix) at the NVA’s IP, and verify traffic is steered through it.

Exam focus

  • Precedence: UDR > BGP > system; longest-prefix-match always wins.
  • A route table does nothing until associated to a subnet.
  • Next hop types: VirtualNetwork, Internet, VirtualAppliance, VirtualNetworkGateway, None, VNet peering.
  • UDR + peer = service chaining (hub-and-spoke routing).

Path MOC · route-table · azure-firewall · bgp · vnet · subnet

Module 5 · Host Your Domain on Azure DNS

MS Learn: Host your domain on Azure DNS · learn.azure.host-domain-azure-dns Module note for Path MOC

Overview

Use Azure DNS as the authoritative DNS service for your public domains. Create DNS zones, manage record sets, and use alias records to keep resources (like a Load Balancer) reachable without manual IP edits. (Private name resolution inside VNets is the Azure Private DNS service._)

Learning objectives (from Microsoft Learn)

In this module, you will:

  • Configure Azure DNS to host your domain.

Units

  1. Introduction
  2. What is Azure DNS?
  3. Configure Azure DNS to host your domain
  4. Exercise: create a DNS zone and an A record
  5. Resolve names with an alias record
  6. Exercise: create alias records
  7. Summary

Concepts introduced

Key terms & commands (Azure CLI)

az network dns zone create -g <rg> -n contoso.com
az network dns record-set a add-record -g <rg> -z contoso.com     -n www --ipv4-address 20.x.x.x
az network dns record-set a create -g <rg> -z contoso.com -n www     --alias-target-resource-id <resource-id>    # alias record

Hands-on

  • Create a public DNS zone, add an A record, and associate the zone’s NS records at your registrar (delegation).
  • Create an alias record pointing at an Azure LB/front-end IP; change the resource IP and confirm the alias follows automatically.

Exam focus

  • Alias records auto-resolve changes for Azure resources (no manual IP updates).
  • Azure DNS zone → record sets (type+name) → records; TTL matters.
  • Azure DNS = public; Private DNS = within VNets.
  • Delegation = point registrar NS at Azure zone NS.

Path MOC · azure-dns · private-dns · load-balancer · azure-front-door

Module 6 · Introduction to Azure Load Balancer

MS Learn: Introduction to Azure Load Balancer · learn.azure.intro-to-azure-load-balancer Module note for Path MOC

Overview

Azure Load Balancer is a Layer-4 (TCP/UDP) load balancer that distributes traffic across a backend pool of VMs/VMSS instances, with health probes and (on Standard) outbound connectivity and zone/region awareness.

Learning objectives (from Microsoft Learn)

In this module, you will:

  • Learn what Azure Load Balancer is and the functionality it provides.
  • Determine whether Load Balancer meets the needs of your organization.

Units

  1. Introduction
  2. What is Azure Load Balancer?
  3. How Azure Load Balancer works
  4. When to use Azure Load Balancer
  5. Knowledge check
  6. Summary

Concepts introduced

Key terms & commands (Azure CLI)

az network lb create -g <rg> -n lb-web --sku Standard --public-ip-address <pip>
az network lb probe create -g <rg> --lb-name lb-web -n probe80 --protocol Http --port 80
az network lb rule create -g <rg> --lb-name lb-web -n rule443     --frontend-port 443 --backend-port 443 --backend-pool-name <pool> --protocol Tcp

Hands-on

  • Create a public LB + backend pool + health probe + rule; add two VMs and verify failover when one is stopped.
  • Note Standard vs Basic differences (zones, outbound, SLA).

Exam focus

  • L4 only — no HTTP routing, no SSl (that’s App Gateway).
  • Public (internet) vs internal (VNet-private) editions.
  • Health probe governs backend availability.
  • Standard SKU adds zones/regions/outbound rules/SLA.

Path MOC · load-balancer · intro-to-azure-application-gateway · vnet

Module 7 · Introduction to Azure Application Gateway

MS Learn: Introduction to Azure Application Gateway · learn.azure.intro-to-azure-application-gateway Module note for Path MOC

Overview

Azure Application Gateway is the Layer-7 (HTTP/HTTPS) load balancer: URL/host-based routing, SSL/TLS termination, cookie session affinity, and optional WAF (web application firewall). Where Load Balancer forwards raw TCP/UDP, Application Gateway routes web content.

Learning objectives (from Microsoft Learn)

In this module, you’ll:

  • Learn what Azure Application Gateway is and the functionality it provides.
  • Determine whether Application Gateway meets the needs of your organization.

Units

  1. Introduction
  2. What is Azure Application Gateway?
  3. How Azure Application Gateway works
  4. When to use Azure Application Gateway
  5. Knowledge check
  6. Summary

Concepts introduced

Key terms & commands (Azure CLI)

az network application-gateway create -g <rg> -n appgw     --sku Standard_v2 --capacity 2 --vnet-name <vnet>     --subnet snet-appgw --priority 100

Hands-on

  • Deploy an App Gateway into a dedicated subnet, define a listener + backend pool + HTTP health probe.
  • Add a path-based routing rule (/api/ vs /) and note the behavior.
  • Enable the WAF SKU and observe managed rule set.

Exam focus

  • L7 vs L4 distinction with Load Balancer.
  • SSL termination and cookie session affinity are App GW strengths.
  • URL-path / multi-site routing; needs its own subnet.
  • WAF_v2 protects web apps (OWASP rules).

Path MOC · application-gateway · intro-to-azure-load-balancer · vnet · subnet

Module 8 · Introduction to Azure Network Watcher

MS Learn: Introduction to Azure Network Watcher · learn.azure.intro-to-azure-network-watcher Module note for Path MOC

Overview

Azure Network Watcher is the regional monitoring + diagnostics service for networking. Use its tools (Topology, IP Flow Verify, Next Hop, Packet Capture, Connection Monitor, flow logs, VPN troubleshoot) to find why traffic works or doesn’t.

Learning objectives (from Microsoft Learn)

In this module, you will:

  • Learn what Azure Network Watcher is and the functionality it provides.
  • Determine whether Azure Network Watcher meets the needs of your organization.

Units

  1. Introduction
  2. What is Azure Network Watcher?
  3. How Azure Network Watcher works
  4. When to use Azure Network Watcher
  5. Knowledge check
  6. Summary

Concepts introduced

  • Network Watcher — monitoring/diagnostic toolset.
  • Uses NSG + route knowledge to explain flows (IP Flow Verify / Next Hop).

Key terms & commands (Azure CLI)

az network watcher configure -g <rg> --locations <region> --enabled true
az network watcher test-ip-flow-verify -g <rg> --vm <vm> --local-ip <ip>     --remote-ip 20.x.x.x --direction Inbound --protocol Tcp --local-port 80 --remote-port 443
az network watcher show-next-hop -g <rg> --vm <vm> --source-ip <ip> --dest-ip 20.x.x.x

Hands-on

  • Enable Network Watcher for your region.
  • Use Topology to view a VNet; use IP Flow Verify to confirm an NSG allows/denies a specific flow; use Next Hop to confirm routing.

Exam focus

  • Network Watcher is regional — enable per region.
  • IP Flow Verify → “which NSG rule blocks my traffic?”
  • Next Hop → “which route does my packet take?”
  • Topology / Connection Monitor / Packet Capture / flow logs round out the toolbox.

Path MOC · network-watcher · nsg · route-table · configure-network-security-groups

Core topology

Connectivity

Security

Name resolution

Load balancing & traffic

Virtual Network (VNet)

What it is

An Azure Virtual Network (VNet) is a private network you define in Azure. It gives Azure resources a shared private address space and the network controls needed to communicate with each other, the internet, connected networks, and supported Azure services. Think of it as the boundary of Northwind’s private office network in Azure, not as a physical switch or a single datacenter.

Why it exists

Physical networks were constrained by hardware and on-premises cabling. A VNet gives you the same segmentation, routing, name resolution, and security primitives as an on-prem LAN, but delivered as an isolated slice of Azure’s shared cloud — provisioned in seconds and fully API-managed.

Key ideas

  • A VNet belongs to one Azure region and subscription. It spans the availability zones in that region; you do not create a separate VNet merely to use different zones.
  • You give the VNet a private address range, such as 10.0.0.0/16, expressed in CIDR notation, then divide it into subnets. Ranges must be planned so they do not overlap with networks you need to connect.
  • Azure supplies system routes. Route tables can direct traffic; network security groups decide whether matching traffic is allowed. A route is a path, not a firewall rule.
  • VNets can connect to other VNets through vnet-peering, and to on-premises networks through VPN Gateway or ExpressRoute.
  • Inbound internet access requires an intentional design such as a public IP or public load balancer. Plan outbound access explicitly as well; do not depend on an accidental default.

Northwind example

Northwind creates one production VNet and divides 10.20.0.0/16 into frontend, app, and private-endpoints subnets. Its public load balancer receives shopper traffic, while application-to-storage traffic uses a private endpoint. An NSG permits only the front-end traffic needed by the app tier. The VNet supplies the private network; the subnets organize it; the NSG filters it; and routes determine where it goes.

Common confusion

  • A VNet is not a VPN. A VPN gateway can connect a VNet to another network, but the VNet is the Azure network itself.
  • A VNet is not automatically isolated from all internet access. Inbound and outbound behavior must be designed and controlled.
  • A VNet does not replace an NSG, firewall, DNS, or load balancer. Those solve different network problems.

How it fits

Internet │  On-premises
   │      │      │
   ▼      ▼      ▼
[ public IP ][ VPN Gateway / ER ]
   ┌────────────── VNet (10.0.0.0/16) ──────────────┐
   │  Subnet A (10.0.1.0/24)    Subnet B (10.0.2.0/24) │
   │  [VM][LB]                   [VM][ASG]            │
   │  NSG / route tables / Azure Firewall             │
   └───────────────────────────────▲──────────────────┘
                                   │ vnet-peering
                          ┌────────┴────────┐
                          │  other VNet     │
                          └─────────────────┘

Practical limits and tradeoffs

  • Choose address ranges before deployment. Overlap can block peering, VPN, and hybrid connectivity later.
  • A VNet can contain resources with different roles, but use subnets and rules to limit unnecessary traffic between them.
  • Moving a VM to another VNet requires recreating the VM in the target VNet. Treat network moves as planned migrations, not a quick toggle.

subnet · cidr-ip-addressing · vnet-peering · route-table · nsg · private-endpoint · azure-dns · northwind-traders-case-study

📘 Source: Microsoft Learn — What is Azure Virtual Network?, checked 2026-09-16.

Subnet

What it is

A subnet is a smaller, continuous slice of a Virtual Network’s private address range. Resources in that slice can receive private IP addresses, and the subnet can carry shared routing and network-security settings. It is an address-and-traffic boundary, not a physical room or an automatic security wall.

Why it exists

Segmenting a large address space into subnets lets you organize, isolate, and control traffic: place web, app, and DB tiers in separate subnets, apply different NSGs/routes to each, and reserve ranges for specific service types.

Key ideas

  • A subnet range must sit inside the VNet’s address range and cannot overlap another subnet. Azure reserves five IP addresses in each subnet, so a range has fewer usable addresses than its size suggests.
  • Associate an NSG to filter traffic for the subnet and a route table to control paths. These settings apply to traffic, not to a business department or application name.
  • Some Azure services require a dedicated subnet with a required name or size. Do not place unrelated workloads there without checking that service’s documentation.
  • Delegation lets a supported Azure service manage a subnet for that service. A private endpoint uses a private IP from a subnet but is a separate network interface and should be designed with DNS.

Northwind example

Northwind splits 10.20.0.0/16 into 10.20.1.0/24 for front ends, 10.20.2.0/24 for application components, and 10.20.3.0/24 for private endpoints. The application subnet receives an NSG rule that accepts only the front end’s required traffic. That rule does not make the subnet a database or application by itself; it simply limits network flows to the resources placed there.

Common confusion

  • A subnet is not an Azure subscription and is not a billing boundary.
  • An NSG filters traffic; it does not create a subnet or select a traffic route.
  • Sizing a subnet too tightly can prevent future scale-out or private endpoints. Reserve room before production deployment.

How it fits

VNet address space 10.0.0.0/16 is divided:

10.0.0.0/16  VNet
├── 10.0.0.0/24  snet-frontend    [VM][LB][NSG]
├── 10.0.1.0/24  snet-app         [VM][ASG]
├── 10.0.2.0/24  snet-data        [DB]
├── 10.0.3.0/24  GatewaySubnet    [VPN Gateway]
└── 10.0.4.0/24  AzureFirewallSubnet [Firewall]

Practical limits and failure modes

  • Azure reserves the first four and last address of every subnet. Use the current service limits and subnet documentation for exact sizing.
  • Existing resources can constrain an address-range change. Plan a migration rather than assuming a subnet can be resized in place.
  • Use meaningful but non-sensitive names. Names help humans; rules, routes, and service configuration enforce behavior.

vnet · cidr-ip-addressing · nsg · route-table · vnet-peering · private-endpoint · northwind-traders-case-study

📘 Source: Microsoft Learn — Add, change, or delete a virtual network subnet, checked 2026-09-16.

IP Addressing & CIDR

What it is

Classless Inter-Domain Routing (CIDR) is the shorthand Azure uses for IP ranges, such as 10.0.0.0/24. An address plan uses those ranges to divide a virtual network into subnets and give resources private addresses. A resource gets a public IP only when a supported design assigns one.

Why it exists

You need a way to say both “which neighborhood?” and “how many addresses?” CIDR combines those facts in one short label so Azure can check that subnets fit inside their VNet and that connected networks do not overlap.

Key ideas

  • The / number: it is the number of network bits. A /24 leaves 8 host bits, so it contains 2^8 = 256 IPv4 addresses. A smaller suffix, such as /16, describes a larger range.
  • Private ranges: common choices are 10.0.0.0/8, 172.16.0.0/12, and 192.168.0.0/16. Azure also recognizes the shared 100.64.0.0/10 space, but it can be unsuitable for some connected networks. Plan against existing corporate and partner ranges.
  • Azure reservations: Azure reserves the first four and last address in every subnet. Thus a /24 has 251 addresses available for use. The smallest supported IPv4 subnet is /29; IPv6 subnets must be /64.
  • Private versus public: a private address works inside the network path; a public IP is a separate Azure resource used by a supported component for internet-routable addressing. Neither address type grants permission by itself.
  • Dynamic versus static private IP: for Resource Manager resources, both remain assigned until the resource is deleted; “static” lets you choose an available address, while “dynamic” lets Azure choose it.

Northwind example

Northwind reserves 10.20.0.0/16 for its ordering VNet. It gives the web tier 10.20.1.0/24, the application tier 10.20.2.0/24, and leaves room for growth. Before linking a warehouse network, Maya checks that it does not already use 10.20.0.0/16; overlapping ranges make routing ambiguous and prevent VNet peering.

Quick calculation

For IPv4, a CIDR range contains 2^(32 − prefix length) addresses. Azure then reserves five addresses per subnet. For example, /27 contains 32 addresses and has 27 addresses available. This is a sizing aid, not a reason to use the smallest possible range—some Azure services have their own subnet-size requirements.

How it fits

Exam notes

  • Always confirm no overlap between VNet ranges and peered VNets / ExpressRoute/corporate ranges — overlap breaks peering and routing.
  • Use the smallest subnet that fits to conserve address space (exam likes subnet sizing questions, e.g. how many /24s fit in a /16 → 256).
  • Do not plan a VNet with ranges that overlap other VNets, on-premises networks, or partner networks it must reach.
  • A route and an NSG still control how an address is reached and whether a flow is allowed.

Home · subnet · vnet · azure-dns · network-watcher

📘 Source: Microsoft Learn — Azure Virtual Network FAQ

Route Tables & User-Defined Routes (UDR)

What it is

A route table is a collection of directions attached to a subnet. Each direction says, “for an address in this range, send traffic to this next place.” Azure supplies system routes automatically; directions you add are user-defined routes (UDRs).

Think of it as road signs for packets. A route decides where traffic goes next. It does not decide whether that traffic is safe, allowed, or authenticated.

Why it exists

Azure can route ordinary VNet, peered-VNet, and internet-bound traffic without a route table. A team adds UDRs when it needs a deliberate path—for example, to send a subnet’s outbound traffic to Azure Firewall for inspection, or to send spoke-to-spoke traffic through a hub.

How Azure chooses a route

  1. Azure combines applicable system routes, UDRs, and routes learned through BGP.
  2. It normally selects the route with the most-specific matching address prefix. For the same prefix, a UDR takes precedence over BGP, which takes precedence over a system route.
  3. Some Azure-managed system routes—for VNet, peering, and service-endpoint traffic—have special precedence. Do not assume every system route can be overridden; inspect the effective routes on the NIC when troubleshooting.

One route table can be associated with a subnet, and that table can be associated with multiple subnets. A table with no subnet association has no effect.

Common next hops

  • Virtual appliance: an appliance private IP, such as a firewall or NVA. It must be able to forward the traffic; Azure does not turn an ordinary VM into a router automatically.
  • Virtual network gateway: sends traffic to a gateway, commonly for a connected on-premises network.
  • Internet: sends traffic toward the internet.
  • None: drops traffic matching the prefix.

Azure also creates system routes for paths such as local VNet and peering traffic. They are not UDR next-hop choices you manually create.

Northwind example

Northwind Traders puts its ordering VMs in snet-orders. Maya associates a route table with that subnet and adds 0.0.0.0/0 → Virtual appliance: 10.10.1.4, the private address of Azure Firewall. Now ordinary internet-bound traffic goes to the firewall first. The firewall’s rules decide whether to allow it; an NSG and the app’s own authorization still have separate jobs.

This is called forced tunneling. It is useful only if the firewall route, forwarding configuration, and return path are designed together. A bad route can cut off the workload or create a routing loop.

How it fits

route-table - Microsoft diagram

Diagrams courtesy of Microsoft Learn / Azure docs: virtual-network/virtual-networks-udr-overview

Customer VM (snet-app) ──► route table UDR: 0.0.0.0/0 next hop Azure Firewall
                                        │
                                        ▼
                              Azure Firewall (inspect/filter)
                                        │
                                   to internet

Avoid these mix-ups

  • A route table chooses a path; an nsg filters network flows; rbac controls who may manage Azure resources. None replaces the others.
  • 0.0.0.0/0 means “all IPv4 destinations not matched by a more-specific route.” It is powerful and should be tested before association.
  • An appliance usually belongs in a different subnet from the workloads it serves. It needs IP forwarding enabled in Azure and may also need forwarding enabled in its operating system or appliance configuration.

Home · subnet · vnet · bgp · azure-firewall · vnet-peering · network-watcher

📘 Source: Microsoft Learn — Virtual network traffic routing

Border Gateway Protocol (BGP)

What it is

Border Gateway Protocol (BGP) is the standard exterior routing protocol that exchanges routing information between autonomous systems (ASes). In Azure it’s how your on-premises edge and ExpressRoute/VPN infrastructural peers advertise routes to (and receive routes from) Azure networks.

Why it exists

Static routes need manual changes when a network changes. BGP lets connected networks announce the address prefixes they can reach and withdraw them when they cannot. This makes hybrid routing adaptable, but a correct route policy and a resilient physical design are still necessary for useful failover.

Key ideas

  • Peers exchange reachability information. Azure learns on-premises prefixes, while the on-premises edge learns Azure prefixes. For ExpressRoute, BGP sessions run between the network edge and Microsoft enterprise edge routers; VPN Gateway can also use BGP.
  • An autonomous system number (ASN) identifies the routing domain in BGP. Azure and the peer use configured ASNs; supported values and default behavior depend on the service and configuration, so do not memorize one private range as a universal Azure requirement.
  • BGP is central to ExpressRoute and optional for some VPN Gateway designs. It is not required for simple VNet peering.
  • Route selection is not one simple universal order. Prefix specificity, service route sources, user-defined routes, and gateway propagation interact. Inspect effective routes for the affected subnet and use the current Azure route-selection guidance for the exact scenario.

Key facts

  • Advertising a default route (0.0.0.0/0) on ExpressRoute private peering can route associated VNet traffic to the on-premises network. The corporate edge then needs a design for internet-bound and Azure platform traffic; test carefully before calling this forced tunneling safe.
  • BGP can withdraw or change routes after a path event, but successful failover also depends on redundant gateways, circuits, devices, routes, and application dependencies.
  • Treat ASN values, prefix limits, and path attributes as configuration details to verify against the service documentation, not as a memorized magic number.

Northwind example

Northwind’s warehouse advertises 10.40.0.0/16 to Azure through its ExpressRoute BGP peer. Azure advertises the order VNet prefix back. When Northwind adds a second warehouse subnet, BGP can announce the new prefix without editing every VM route table. Before advertising a default route, Maya checks effective routes and confirms that required Azure services and internet egress still have a supported path. A BGP session alone does not prove a warehouse application can fail over.

How it fits

[on-premises routing domain]                  [Azure/provider routing domain]
        │  BGP session (eBGP over IPsec/ER)          │
        │  advertise corp prefixes <────>            │
        │  receive VNet prefixes                     │
        ▼                                             ▼
   on-prem network                               VNet routes

bgp - Microsoft diagram Diagram courtesy of Microsoft Learn / Azure docs: expressroute/expressroute-optimize-routing

Exam notes

  • BGP is most relevant to hybrid connectivity such as ExpressRoute and dynamic VPN routing.
  • It exchanges networks that are reachable; it does not replace network security or application identity.
  • Use effective routes and current route-selection guidance rather than applying an oversimplified precedence rule to every scenario.

Home · expressroute · vpn-gateway · route-table · virtual-wan

📘 Source: Microsoft Learn — Bgp

Azure Network Watcher

What it is

Azure Network Watcher is the regional diagnostics and monitoring service for Azure networking. It gives tools to inspect connectivity, packet flows, topology, and logs across your VNets and subnets.

Why it exists

When traffic “doesn’t work,” administrators need fast, visual answers: is the route right? is the NSG blocking? can VM A reach VM B? Network Watcher centralizes these connectivity/protocol diagnostics instead of you poking NIC/protocol state manually.

Key ideas (core tools)

  • Topology — visual interactive graph of your VNet resources and their connections.
  • IP Flow Verify — tests whether a packet from a source IP/port to a destination IP/port is allowed or denied, applying NSG rules + routes to explain the result.
  • Next Hop — shows the next hop (and which route drove it) for a packet, great for debugging UDRs.
  • Effective security rules — lists the applicable NSG rules for a NIC/subnet combined (classic Association + effective).
  • VPN troubleshoot — diagnoses gateway/connection issues.
  • Packet capture — captures traffic to/from a VM NIC (agent-free snapshot).
  • Connection monitor — end-to-end, recurring connectivity/performance testing between resources.
  • NSG/network flow logs — record allowed/denied flows for SIEM/NSG analysis.

How it fits

Enabled per region (one Network Watcher per region) and typically deployed automatically (one instance per region). Flows from VNets across many subnets are analyzed in one pane. network-watcher - Microsoft diagram

Diagrams courtesy of Microsoft Learn / Azure docs: network-watcher/network-watcher-monitoring-overview

Exam notes

  • Network Watcher is regional — enable it in the region where your VNets live.
  • Flow logs and some tools incur cost/are billed; baseline topology/IP flow verify tools are often free but check current billing docs.
  • Use IP Flow Verify for “which NSG rule is blocking my traffic” exam scenarios; use Next Hop for route/diagnostic questions.

Home · vnet · nsg · route-table · subnet

📘 Source: Microsoft Learn — Network Watcher

Virtual Network Peering

What it is

Virtual Network Peering (VNet peering) connects two virtual networks over Microsoft’s private backbone. It gives their resources a direct private network path, without a public-internet path or a VPN gateway between those two VNets.

Why it exists

Applications often span separate VNets for teams, tiers, regions, or subscriptions. Peering gives a direct path between them while preserving separate VNet boundaries and address spaces.

Key ideas

  • Two links: both directions must exist and be connected. Creating only one leaves the peering in an initiated state.
  • No overlap: the VNets cannot have overlapping address spaces.
  • Local or global: regular peering connects VNets in one region; global peering connects across regions. Peering can cross subscriptions and Entra tenants when permissions and requirements are met.
  • Non-transitive: A ↔ B and B ↔ C does not automatically create A ↔ C. Add a direct peering or deliberately route through a hub with UDRs and an appliance/gateway.
  • Gateway transit: a spoke can use a remote VPN or ExpressRoute gateway in a hub for hybrid connectivity. A VNet using a remote gateway cannot also have its own gateway.
  • Private path, separate controls: peering creates connectivity, not permission. NSGs, routes, firewalls, and application authorization still decide what traffic and actions are allowed.

How it fits

              [hub VNet]
  spokeA ─────┘    │    └──── spokeB
  peer links on each side only
  (non-transitive: spokeA needs a direct peering or designed hub route to reach spokeB)

vnet-peering - Microsoft diagram

Diagrams courtesy of Microsoft Learn / Azure docs: virtual-network/virtual-network-peering-overview

Northwind example

Northwind peers its ordering VNet (spoke) with its shared-services VNet (hub), where a VPN gateway reaches the warehouse. The warehouse route works only after gateway transit is correctly configured. If the ordering VNet must reach a second spoke through a firewall in the hub, Maya adds intentional UDRs and tests both directions; peering by itself does not relay one spoke through another.

Cost and troubleshooting

Azure charges for data transferred across a peering connection. Check current pricing when cost matters. To troubleshoot, examine the NIC’s effective routes and use Network Watcher connectivity checks; an apparently connected peering can still be blocked by a route or NSG.

Home · vnet · subnet · route-table · vpn-gateway · virtual-wan

📘 Source: Microsoft Learn — Azure virtual network peering

Azure VPN Gateway

What it is

Azure VPN Gateway is a managed Azure service that sends encrypted traffic between a virtual network and an on-premises location over the public internet. It can also connect Azure VNets to each other. Azure operates the gateway service; you configure its connections, routing, and SKU.

Why it exists

Use it when people, sites, or networks need private-style encrypted connectivity to Azure without a dedicated private circuit. It terminates secure tunnels so the remote network or user can reach allowed private Azure addresses.

Key ideas

  • Site-to-site (S2S) connects a VNet to an on-premises VPN device through an IPsec/IKE tunnel.
  • Point-to-site (P2S) connects an individual remote computer. VPN Gateway supports OpenVPN, IKEv2, or SSTP for this scenario.
  • VNet-to-VNet connects two Azure VNets through VPN gateways. VNet peering is a separate option when its direct private connection model fits.
  • GatewaySubnet is dedicated. The VPN gateway is deployed into a subnet named exactly GatewaySubnet; do not place ordinary workloads there.
  • SKU and architecture shape capacity and resilience. Gateway SKU affects bandwidth and connection limits. You can design active-active connectivity, use BGP for dynamic routes, and use availability-zone-capable gateway deployments where the region supports them.
  • VPN is not ExpressRoute. VPN Gateway uses encrypted tunnels over the public internet; ExpressRoute uses a private provider connection. They can coexist, including a VPN failover path for an ExpressRoute design.

Northwind example

Northwind’s warehouse has a VPN device. Maya creates a site-to-site VPN connection from that device to the GatewaySubnet in Northwind’s Azure VNet, then advertises only the warehouse and application address ranges it needs. Warehouse scanners can reach the private order service, but the VPN does not make every Azure resource public or bypass the service’s own identity and network rules. Staff working from home use point-to-site VPN instead of sharing the warehouse device’s credentials.

How it fits

[on-prem VPN device/router]   <—IPsec S2S—>   [Azure VPN Gateway]
       │                                           │  (GatewaySubnet)
   corp LAN                                    [VNet subnets]

Exam notes

  • GatewaySubnet is reserved for the virtual network gateway.
  • Point-to-site connects individual clients; site-to-site connects networks; VNet-to-VNet connects Azure VNets.
  • For a hub-and-spoke transit design, verify gateway-transit settings and routing on both sides rather than assuming peering automatically exposes the gateway.
  • Compare VPN Gateway with ExpressRoute and Virtual WAN by connection model, capacity, and operational need.

Home · bgp · expressroute · vnet · virtual-wan · route-table

📘 Source: Microsoft Learn — What is Azure VPN Gateway?

Azure ExpressRoute

What it is

Azure ExpressRoute extends an on-premises network into Microsoft cloud services over a private provider connection rather than the public internet. The connection can use an any-to-any IP VPN network, point-to-point Ethernet, or a virtual cross-connection through a connectivity provider or colocation facility.

Why it exists

Organizations use ExpressRoute when their hybrid network needs private connectivity, predictable performance characteristics, provider integration, or a design with higher resiliency than a typical internet path. It can connect to Azure and, in appropriate scenarios, Microsoft 365 services. “Private” means the traffic does not travel over the public internet; it does not by itself mean every workload connection is encrypted or that every service is reachable.

Key ideas

  • Private peering connects a VNet to on-premises networks. Microsoft peering connects to supported Microsoft cloud services, with specific routing and public-address requirements. Azure public peering is deprecated; use current service documentation for the exact supported services.
  • BGP exchanges routes dynamically between the customer/provider edge and Microsoft. It tells each side which address prefixes are reachable; it does not authorize application users or automatically encrypt application protocols.
  • A VNet connection normally uses an ExpressRoute virtual network gateway in GatewaySubnet. Architecture features such as FastPath have exceptions, so validate the selected design rather than reducing every connection to one diagram.
  • Built-in circuit redundancy is valuable but bounded. A circuit has redundant connections to Microsoft edge routers at a peering location. For maximum resiliency, Microsoft recommends two circuits at different peering locations; one circuit does not eliminate provider, location, configuration, or application failures.
  • Scope and cost depend on SKU and design. A circuit can link multiple VNets subject to documented limits and configuration. Premium adds broader global connectivity and larger limits; Local and billing models have separate behavior.
  • Protect the data too. Apply TLS or another suitable encryption approach when data confidentiality requires it, because a private transport path is not a substitute for end-to-end application security.

Northwind example

Northwind’s warehouse network needs a reliable private route to the order-processing VNet. It orders an ExpressRoute circuit through a connectivity provider, configures private peering and BGP, and attaches the VNet through the appropriate gateway design. The team still uses HTTPS to its order API and Azure RBAC for authorization. For an outage plan, it evaluates a second circuit at a different peering location and tests the routes; it does not call one redundant circuit “disaster recovery.”

How it fits

[on-premises edge]  <— private provider connection —>  [ExpressRoute circuit/gateway]
       provider (Ethernet/MPLS)                         |  (GatewaySubnet)
                                                        ▼
                                                   [VNet subnets]

expressroute - Microsoft diagram

Diagrams courtesy of Microsoft Learn / Azure docs: expressroute/expressroute-introduction

Exam notes

  • ExpressRoute is private provider connectivity; VPN Gateway uses encrypted tunnels over the public internet.
  • BGP exchanges routes; it is not the same as IPsec or an application authorization system.
  • Know private versus Microsoft peering, gateway architecture, and the difference between circuit redundancy and a full resiliency plan.

Home · vpn-gateway · bgp · virtual-wan · vnet

📘 Source: Microsoft Learn — Expressroute

Azure Virtual WAN

What it is

Azure Virtual WAN is a managed hub-and-spoke networking service that consolidates branch (site-to-site), remote-user (point-to-site), VPN, and ExpressRoute connectivity into a set of virtual hubs Microsoft operates across regions. Each hub carries routing, and can host Azure Firewall and network security groups.

Why it exists

Traditional hub-and-spoke with separate VPN gateways, route tables, NSGs, and peering is complex to operate at scale across many regions. Virtual WAN gives one management plane for branch/remote/hybrid connectivity with global transit routing — administrators connect spokes to a hub instead of hand-managing peering and gateways per region.

Key ideas

  • Virtual hubs — regional hubs that own routing, gateways (VPN Site-to-Site, Point-to-Site, ExpressRoute) and optional Azure Firewall.
  • Global transit — spokes in different regions route through hubs; transitive routing (unlike plain peer non-transitivity) is handled by the hub/routing infrastructure.
  • Branch-to-VNet, VNet-to-VNet, VNet-to-branch over the Microsoft backbone; no internet egress between them.
  • Standard vs Basic tiers: Standard adds ExpressRoute, global transit, fireworks integration, etc.
  • Routing is propagated automatically to spokes; you can override with custom route destinations (UDR style).

How it fits

[Branch A]─┐                  ┌─[Spoke VNet 1]
[Branch B]─┼─► [Virtual Hub A] ┼─[Spoke VNet 2]
[Remote user]                  ├─(peer to hub)
[ER circuit]                   └─► transit to [Virtual Hub B] (other region)

virtual-wan - Microsoft diagram Diagram courtesy of Microsoft Learn / Azure docs: virtual-wan/virtual-wan-about

Exam notes

  • Virtual WAN provides transitive connectivity via its hub, a contrast to basic vnet-peering.
  • One Virtual WAN per region; standard tier required for ExpressRoute and global transit.
  • Deleting a hub/vWAN removes underlying gateways; be careful with Dependency and billing.

Home · vnet · vpn-gateway · expressroute · vnet-peering · azure-firewall

📘 Source: Microsoft Learn — Virtual Wan

Network Security Group (NSG)

What it is

A network security group (NSG) is a set of allow-or-deny rules that filters inbound and outbound network traffic for supported resources in a VNet. You can associate it with a subnet or a network interface (NIC). It filters traffic; it does not choose the traffic’s route or inspect a web request’s URL.

Why it exists

You need cheap, per-interface/per-tier filtering of who can talk to whom inside your VNet and with the outside world. NSGs provide stateful, micro-segmented security filtering without a box — applied right at the workload.

Key ideas

  1. A rule names a source, destination, protocol, port or port range, direction, priority, and Allow or Deny action. Sources and destinations can use IP addresses, CIDR ranges, service tags, or application security groups.
  2. Lower priority numbers are evaluated first. The first matching rule decides the outcome; later rules are not considered.
  3. Azure includes default rules, including virtual-network traffic allowances and a default internet-inbound deny. You cannot delete them, but a higher-priority custom rule can take precedence.
  4. NSGs are stateful. When a new allowed connection receives a reply, the reply is allowed without a mirror-image return rule. Rule changes affect new connections, not necessarily a connection already established.

How to reason about a flow

subnet association  ────────┐
NIC association    ────────┼──► combine (effective rules)
                            ▼
         process rules by priority, first match decides allow/deny
  • When an NSG is applied at both subnet and NIC, Azure evaluates the applicable rules at both levels. Traffic must be permitted through both; an allow at one level cannot defeat a deny at the other.
  • Check the path as well as the NSG. A rule that permits traffic cannot help if a route, DNS setting, load balancer, or service firewall sends it elsewhere or blocks it.

Northwind example

Northwind associates an NSG with the application subnet. It allows TCP traffic to the application port only from the front-end subnet and denies other inbound traffic. Luis can reach the application from the approved front end, but a shopper on the internet cannot reach the private app address directly. If Northwind needs URL-based rules such as “allow /orders but block /admin,” it needs a web-aware service such as Application Gateway, not an NSG.

Common confusion

  • NSG = traffic filter; route table = traffic path; Azure Firewall = centralized firewall capability. They can work together.
  • An NSG rule applies to network five-tuple details such as address, port, and protocol. It is not a user permission and does not replace RBAC.
  • Attaching an NSG to a subnet does not give each VM an internet address. Public exposure requires an explicit inbound path.

How it fits

Failure modes

  • A broad allow rule with a high priority can unintentionally override a later deny.
  • Blocking a platform or service dependency can make a workload fail in ways that look unrelated to networking.
  • Relying on an NSG alone does not protect data when an application, identity, or public endpoint is misconfigured.

asg · subnet · vnet · route-table · azure-firewall · application-gateway · network-watcher · northwind-traders-case-study

📘 Source: Microsoft Learn — Network security groups overview, checked 2026-09-16.

Application Security Group (ASG)

What it is

An Application Security Group (ASG) is a logical label for VM network interfaces in one VNet. It lets an NSG rule refer to a role such as WebServers or DatabaseServers, rather than maintaining a list of individual IP addresses.

Why it exists

IP lists are brittle: a new VM or address change means another rule update. An ASG separates what the VM does from which address it has, so the NSG rule can remain stable as membership changes.

Key ideas

  • An ASG contains VM network interfaces, not subnets and not people.
  • An NSG rule can use an ASG as a source or destination. It is still the NSG rule—not the ASG—that allows or denies the flow.
  • A NIC can belong to multiple ASGs, up to Azure limits. All NICs in one ASG must be in the same VNet.
  • If an ASG is both source and destination in an NSG rule, the source and destination ASGs must be in the same VNet.

Northwind example

Northwind places the web VM NICs in AsgWeb, application VM NICs in AsgApp, and database VM NICs in AsgDb. Its NSG allows HTTPS from AsgWeb to AsgApp, and the database port only from AsgApp to AsgDb. Adding a new app VM means adding its NIC to AsgApp; the existing NSG rules apply without rewriting IP lists.

Rule example

priority 100  source: Source=ASG WebServers  dest=ASG AppServers  allow TCP 443
priority 200  source: Source=ASG AppServers  dest=ASG AppServers  deny  all     (isolate tier)

How it fits

NICs tagged into Web and DB ASGs; an NSG associated with the subnet references them: asg - Microsoft diagram

Diagrams courtesy of Microsoft Learn / Azure docs: virtual-network/application-security-groups

Exam notes

  • ASG = NIC membership by role; it is not an NSG replacement.
  • NSG’s “source/destination” can be an ASG, a service tag, or an IP/CIDR.
  • Grouping by application tier is the canonical use case; rules become portable across IP changes.

Home · nsg · subnet · vnet

📘 Source: Microsoft Learn — Application security groups

Azure Firewall

What it is

Azure Firewall is a managed, stateful network firewall service for Azure workloads. It can inspect both traffic entering or leaving a network (north-south) and traffic moving between network segments (east-west), then allow or deny it according to configured rules.

Why it exists

Network security groups protect individual subnets or network interfaces. Azure Firewall gives a team a central inspection point and shared rule policy when traffic must be routed through it. It can complement NSGs; the two do not replace one another automatically.

Key ideas

  • Network rules use IP addresses, protocols, and ports. Application rules use fully qualified domain names (FQDNs) for supported application traffic. NAT rules can map inbound traffic to a private destination.
  • A Firewall Policy holds reusable rule collections and configuration that can be applied to one or more firewalls. It makes shared governance clearer than maintaining unrelated rules in each deployment.
  • Azure Firewall has Basic, Standard, and Premium SKUs. Standard offers L3–L7 filtering and Microsoft threat-intelligence feeds. Premium adds capabilities such as signature-based intrusion detection and prevention. Select features from the current SKU documentation rather than assuming every firewall includes Premium inspection.
  • User-defined routes can send selected traffic to the firewall for inspection. This is a routing design choice: a rule cannot inspect traffic that never reaches the firewall.
  • Azure Firewall can run in virtual-network and Virtual WAN secure-hub designs. Its exact subnet, public-IP, availability-zone, and capacity configuration depends on the chosen deployment design and SKU.

How it fits

[VM/app] ──selected UDR──► [Azure Firewall] ──► [allowed destination]
                              │  Application / network / NAT rules
                              ▼
                           logging and alerting

azure-firewall - Microsoft diagram

Diagrams courtesy of Microsoft Learn / Azure docs: firewall/overview

Northwind example

Maya routes Northwind’s application subnet outbound traffic through Azure Firewall. An application rule permits the ordering service to reach only its approved payment-provider FQDN, while network rules control other permitted IP-and-port paths. The team reviews firewall logs when checkout fails. It does not assume the firewall can protect a workload that has a direct route around it, or that an allow rule proves the remote service is safe.

Azure Firewall, NSG, and WAF

ServicePrimary boundary
Azure FirewallCentral network and application traffic inspection and control.
[[nsgNetwork security group]]
Web Application FirewallHTTP(S) web-attack protection for supported web entry points.

Use the services according to traffic path and threat model. They can work together.

Common confusion

  • Azure Firewall is stateful; it does not make NSGs “stateless.” NSGs are also stateful, but they operate at a different scope and feature set.
  • Threat intelligence and advanced inspection do not remove the need for least privilege, patching, identity controls, and application security.
  • A firewall rule governs network traffic, not whether a caller is authorized to read a specific order or customer record.

Home · nsg · route-table · virtual-wan · ddos-protection · vnet

Sources and re-audit

Azure DDoS Protection

What it is

Azure DDoS Protection helps defend internet-reachable Azure workloads from a distributed denial-of-service (DDoS) attack: a flood of traffic intended to exhaust the service so legitimate customers cannot use it. Its enhanced protection operates at network layers 3 and 4; it is not a web-request filter.

Why it exists

Any public endpoint can be a target. Azure provides default infrastructure-level protection against common network-layer attacks, and Azure DDoS Protection adds enhanced, workload-aware mitigation and operational signals for supported public workloads. For an HTTP(S) attack at layer 7, add a web application firewall and resilient application design.

Key ideas

  • Default infrastructure protection applies to Azure services and defends against common network-layer attacks. It is not the same thing as enabling an enhanced DDoS Protection offering for a workload.
  • DDoS Network Protection is enabled for a VNet and protects the eligible public resources in that VNet. A single plan can be used across multiple subscriptions in a tenant.
  • DDoS IP Protection is enabled per public IP resource and uses a pay-per-protected-IP model. It shares core mitigation engineering with Network Protection but differs in some value-added services.
  • Adaptive mitigation and evidence — enhanced protection learns normal traffic patterns, applies mitigation when a threshold is exceeded, and exposes attack metrics, alerts, and reports.
  • Layering is intentional. DDoS Protection limits network-layer floods; WAF handles web-request patterns; Azure Firewall and NSGs control allowed traffic paths. None removes the need for capacity, redundancy, application security, and incident response.

Northwind example

Northwind exposes its customer storefront through a public entry point. Maya enables the appropriate DDoS Protection model for its VNet-hosted public workload, configures Azure Monitor alerts, and rehearses the incident response path. A traffic flood is mitigated at the network layer, while the storefront’s WAF separately blocks suspicious HTTP requests such as an attempted SQL-injection pattern. Neither control proves the app can handle every surge, so Northwind also uses scaling and resilient application design.

How it fits

ddos-protection - Microsoft diagram

Diagrams courtesy of Microsoft Learn / Azure docs: ddos-protection/ddos-protection-overview

[Attacker traffic] ──► [Azure DDoS edge scrubbing] ──► [Public IP]
                              │                          │
                    (network-layer mitigation)       [protected workload]

Exam notes

  • DDoS Protection addresses network-layer availability attacks, not application-layer attack logic.
  • Network Protection is VNet-scoped; IP Protection is enabled on a public IP resource.
  • Pair it with WAF, firewall/NSG rules, application resilience, and an incident plan.

Home · azure-firewall · vnet · nsg

📘 Source: Microsoft Learn — What is Azure DDoS Protection?

Azure DNS

What it is

Azure DNS is a managed family of Domain Name System (DNS) services. DNS translates a name such as orders.northwind.example into an address or another DNS answer that software can use. Azure DNS includes public-domain hosting, private DNS zones for virtual networks, and services that help resolve names between Azure and on-premises networks.

Why it exists

People remember names, not IP addresses. Azure DNS lets a team manage name records with the same Azure identity, APIs, tools, and billing used for other Azure resources, without operating DNS servers for the supported service.

Key ideas

  • A public DNS zone holds records for an internet-facing domain that Northwind controls. To make Azure answer publicly, its domain registrar delegates the domain’s name servers to the Azure DNS zone.
  • A record answers a particular DNS question: A and AAAA records map names to IP addresses; CNAME points one name at another name; MX helps route mail; TXT carries verification or policy text. A TTL tells resolvers how long they may cache an answer.
  • An alias record can point directly to supported Azure resources. This avoids hard-coding an Azure resource’s changing IP address in an ordinary record.
  • A private DNS zone resolves names privately for linked virtual networks. It is not a public internet zone, even when its name resembles a public domain.
  • Azure DNS Private Resolver supports name-resolution paths between Azure private zones and on-premises networks without running DNS-server VMs for that purpose. Traffic Manager is a separate DNS-based traffic-routing service, not a normal record host.

How it fits

[registrar] ─NS delegation─► [Azure public DNS zone: northwind.example]
                                      │
                    A / CNAME / MX / TXT / alias records
                                      │
                  orders.northwind.example → application endpoint

Northwind example

Northwind registers northwind.example with a registrar and delegates its public name servers to an Azure DNS zone. It creates orders.northwind.example to reach the public ordering endpoint. Inside its virtual network, a private DNS zone resolves a private database name. Maya keeps the two designs separate: publishing a record publicly would expose name resolution to the internet, while the private zone serves only linked networks.

Common confusion

  • A registrar reserves a domain name; a DNS hosting service answers DNS queries for that domain. They can be different providers.
  • DNS translates names. It does not by itself encrypt application traffic, authenticate users, or load balance every kind of connection.
  • A lower TTL can make changes propagate through caches sooner, but it can increase DNS-query volume and does not instantly erase every existing cached answer.

Home · private-dns · vnet · load-balancer · azure-front-door

Sources and re-audit

Azure Private DNS

What it is

Azure Private DNS hosts DNS records that linked virtual networks can resolve. A private DNS zone gives internal workloads a meaningful name for a private address—for example, a Private Endpoint address—without putting that name and address into public DNS.

Why it exists

Workloads need stable internal names, and Private Endpoints need names that resolve to their private addresses from the right networks. Private DNS provides that naming layer without operating DNS servers just to host the zone.

Key ideas

  • Private DNS zone: a zone that holds internal DNS records. Link a VNet to let resources in that VNet resolve the zone’s records.
  • Virtual-network link: the connection between the VNet and the zone. Linked VNets can resolve all records in that zone, even if the VNets are not peered; network connectivity for the resulting traffic is a separate requirement.
  • Autoregistration: when enabled on a VNet link, Azure automatically creates and updates A records for VMs in that VNet as they are created, changed, or deleted. A VNet can have autoregistration enabled for only one private zone.
  • Private Endpoint pattern: a service-specific privatelink zone maps the service name to the endpoint’s private IP. Follow the service’s documented zone name rather than inventing a suffix.
  • Split horizon: a public and private zone can share a name and return different answers inside and outside the VNet.

How it fits

[VM in VNet A] ──► [Private DNS zone  privatelink.database.windows.net]
                       linked to VNet A & B
                       A record → private IP of the DB private endpoint

private-dns - Microsoft diagram

Diagrams courtesy of Microsoft Learn / Azure docs: dns/private-dns-overview

Northwind example

Northwind gives its private database endpoint a Private DNS name. The ordering VNet and reporting VNet are both linked to the relevant private zone, so their workloads resolve the database name to its private endpoint address. That DNS answer does not by itself create a usable network path or grant database access: routing, network rules, and database authorization still apply.

Avoid these mix-ups

  • Public Azure DNS answers internet DNS queries; Private DNS answers through linked VNets.
  • Private DNS is a naming service, not a network tunnel and not an access-control service.
  • For name resolution between Azure and on-premises networks, use a supported forwarding design such as Azure DNS Private Resolver; VNet linking alone does not configure on-premises DNS.

Home · azure-dns · vnet · subnet

📘 Source: Microsoft Learn — What is Azure Private DNS?

Azure Load Balancer

What it is

Azure Load Balancer is a Layer 4 network load balancer. It distributes TCP, UDP, and related transport-level traffic from a frontend IP to healthy backend instances such as VMs or VM scale-set instances. It sees network connections, not web concepts such as URL paths or HTTP headers.

Why it exists

A single VM is a single point of failure and a capacity ceiling. Load Balancer spreads traffic and handles failover/health so a collection of backends appears as one reliable service, without adding latency (it’s a pass-through forwarder).

Key ideas

  • A public load balancer accepts traffic at a public frontend IP. An internal load balancer exposes a private frontend IP inside a VNet or connected network. Public and internal describe the frontend reachability, not whether the backend VMs have public IPs.
  • A frontend IP, backend pool, health probe, and load-balancing rule work together. The probe decides which backends are eligible; the rule maps matching connection traffic to that healthy pool.
  • A failed health probe removes a backend from new traffic. It does not repair the application, its data, or every existing user connection.
  • Load Balancer operates at Layer 4. For HTTP(S)-aware functions such as path routing, host routing, TLS termination, or web-application firewall rules, use Application Gateway instead.
  • Load Balancer features depend on the SKU and configuration. Choose current supported options for the target region rather than carrying historical Basic-versus-Standard assumptions into a new design.

Northwind example

Northwind runs two VM instances of its legacy order connector. An internal Load Balancer has a private frontend address and sends TCP traffic to the healthy connector instance. Its health probe stops sending new connections to an instance that fails the check. The load balancer helps the two instances appear as one network endpoint; Northwind still needs shared data, secure rules, monitoring, and a plan for the database.

Common confusion

  • Load Balancer distributes connections; it is not a web application firewall, DNS service, or global traffic manager.
  • A public frontend makes that frontend reachable from the internet only when the surrounding network and security configuration permits it.
  • A healthy TCP probe only proves the probe’s condition. It does not prove a customer checkout succeeds.

How it fits

[Internet] ──► [LB public frontend 20.x.x.x]
                      │  health probe + rule
              ┌───────┼────────┐
           [VM1]   [VM2]   [VM3]   (backend pool, TCP 443)

load-balancer - Microsoft diagram

Diagrams courtesy of Microsoft Learn / Azure docs: load-balancer/load-balancer-overview

Design check

Decide whether clients are public or private, which protocol and port must be distributed, what health condition represents a usable backend, how outbound traffic is designed, and whether the app needs Layer 7 routing instead. Test failure behavior before calling the workload highly available.

application-gateway · traffic-manager · azure-front-door · vnet · subnet · nsg · virtual-machine-scale-set · northwind-traders-case-study

📘 Source: Microsoft Learn — What is Azure Load Balancer?, checked 2026-09-16.

Azure Application Gateway

What it is

Azure Application Gateway is a regional Layer 7 load balancer for web traffic. It examines HTTP(S) request details—such as the host name and URL path—to choose a backend. It can also terminate TLS, keep a user on the same backend with cookie affinity, and integrate with a Web Application Firewall (WAF).

Why it exists

A web application may need /api to go to one backend and /images to another. A Layer 4 Load Balancer sees addresses and ports; Application Gateway can use the web request itself to make that decision.

Key ideas

  • A listener receives a web request. A routing rule maps it to a backend pool; health probes prevent the gateway from sending requests to an unhealthy backend.
  • It supports path-based routing, multiple-site/host routing, redirects, URL and header rewrites, TLS termination, end-to-end TLS, and cookie-based affinity.
  • Current SKUs are Standard_v2 and WAF_v2. WAF_v2 adds web-attack protection using managed and custom rules. WAF reduces common HTTP(S) attack exposure; it does not replace secure application code or identity authorization.
  • A gateway requires its own dedicated virtual-network subnet. It can expose a public or internal frontend, according to the design.
  • Autoscaling, zone redundancy, connection draining, and Application Gateway Ingress Controller integration for AKS are available capabilities of the current platform. Choose and test them against workload requirements.

How it fits

[Internet]
   │  HTTPS → SSL offload + WAF
   ▼
[App Gateway frontend]
   │  URL-path rules
   ├── /api/*  → backend pool A (VMs)
   └── /*      → backend pool B (App Service)

application-gateway - Microsoft diagram

Diagrams courtesy of Microsoft Learn / Azure docs: application-gateway/overview

Northwind example

Northwind uses Application Gateway in its production region. A listener receives orders.northwind.example; a path rule sends /api/ to the ordering API and /images/ to the image service. Health probes remove a failed API instance from rotation. Maya enables WAF rules and investigates their logs before blocking a legitimate partner request with an overbroad custom rule.

Application Gateway versus other delivery services

RequirementStart by considering
Regional, HTTP(S), path or host routing to web backendsApplication Gateway
Global edge delivery and routing for internet-facing web content[[azure-front-door
Regional TCP or UDP load balancing[[load-balancer
DNS-based global routing without HTTP request processing[[traffic-manager

Common confusion

  • WAF is an optional security capability on the WAF_v2 SKU; it is not the same thing as Application Gateway itself.
  • Application Gateway v1 retired on 2026-04-28. Design and migrate with the v2 family rather than using v1 guidance.
  • A healthy HTTP probe does not prove every authenticated customer journey works. Pair it with application telemetry and suitable end-to-end tests.

Home · load-balancer · traffic-manager · azure-front-door · vnet · subnet

Sources and re-audit

Azure Traffic Manager

What it is

Azure Traffic Manager is a DNS-based global traffic load balancer for public-facing applications. It chooses a healthy endpoint—an Azure or external internet-facing service—when a client looks up the Traffic Manager name. It is not an inline proxy between the user and the application.

Why it exists

For global availability, latency, or planned maintenance, a team may need to direct new clients to different regional endpoints. Because Traffic Manager makes a DNS decision rather than proxying each request, it can point clients to Azure, on-premises, or other public endpoints.

Key ideas

  • Priority: primary/backup failover. Weighted: divide traffic by proportion. Performance: directs a client to the endpoint with lowest latency. Geographic: directs by the client’s geographic region. Other methods include multi-value and subnet routing.
  • Health monitoring: Traffic Manager checks endpoints and can stop returning an unhealthy endpoint for new DNS responses.
  • DNS caching matters: a client or recursive resolver can retain a prior answer for its DNS time-to-live (TTL). Failover changes new DNS responses; it does not move an already-open connection.
  • It does not provide HTTP routing, TLS termination, or a web-application firewall. Those are reasons to consider Front Door or Application Gateway.

Northwind example

Northwind runs the ordering site in two regions. Its Traffic Manager profile uses priority routing: the primary regional endpoint is returned while healthy, and the standby is returned when the primary is unhealthy. A customer who has already resolved the old endpoint—or has an active connection—may not switch immediately, so the application and its data design still need their own resilience plan.

How it fits

[users worldwide]
   │  DNS query → returns best endpoint IP
   ▼
[Traffic Manager profile (DNS)]
   │  Performance routing
   ├──→  [region 1 LB]  [region 2 LB]  [region 3 LB]
        (endpoints monitored for health)

Exam notes

  • Traffic Manager = DNS-level, global routing; no inline proxy, TLS termination, or Layer 4/7 forwarding.
  • Compare with Front Door (L7/global proxy + WAF) and Load Balancer (L4, regional).
  • Priority/Weighted/Performance/Geographic methods are exam staples.

Home · azure-front-door · load-balancer · application-gateway · azure-dns

📘 Source: Microsoft Learn — What is Azure Traffic Manager?

Azure Front Door

What it is

Azure Front Door is a global, Layer 7 content-delivery and web-routing service. It accepts internet-facing HTTP(S) traffic at Microsoft’s edge network, then uses configured routes and origin health to deliver static or dynamic content. It can provide caching, TLS termination, and a Web Application Firewall (WAF).

Why it exists

Global web applications benefit when users connect to a nearby edge point and static content can be served without every request crossing the world to an origin. Front Door also provides a single global entry point that can route around an unhealthy origin.

Key ideas

  • A profile exposes endpoints and routes. A route selects an origin group and origins, while health probes help Front Door avoid unhealthy origins.
  • Front Door can route by host and path, terminate TLS at the edge, manage certificates, and use rules at the edge. It supports both static caching and dynamic content delivery.
  • A WAF policy can be attached to protect web traffic. It complements—not replaces—application validation, authentication, authorization, and monitoring.
  • Front Door can use Private Link for supported private-origin designs. Confirm tier, origin type, and network requirements before treating an origin as private.
  • Standard and Premium feature sets differ. Use the current tier comparison for a design or price decision instead of assuming a feature exists in every tier.

How it fits

[users]  →  [Azure Front Door edge (global anycast)]
                │  L7 + WAF + SSL + caching
                │  configured routes + origin health
        ┌───────┴────────┐
   [origin A region] [origin B region]

azure-front-door - Microsoft diagram

Diagrams courtesy of Microsoft Learn / Azure docs: frontdoor/front-door-overview

Northwind example

Northwind has public ordering origins in two regions. Front Door accepts customer traffic at an edge location, caches suitable public product images, and routes dynamic checkout traffic to a healthy origin according to its configured route and priority/weight design. If a health probe marks one origin unhealthy, Front Door can stop sending that route’s traffic there. The order database remains protected by its own private network, identity, and data controls; Front Door does not make the entire workload globally resilient by itself.

Front Door versus other delivery services

RequirementStart by considering
Global, internet-facing HTTP(S) delivery, routing, and optional cachingAzure Front Door
Regional Layer 7 routing inside or close to a virtual network[[application-gateway
Global DNS response routing without proxying each HTTP request[[traffic-manager
Regional Layer 4 TCP or UDP balancing[[load-balancer

These services can appear in the same architecture. Pick each from the traffic path and failure boundary it must control.

Common confusion

  • Front Door is a proxy service for web traffic; it is not simply a DNS record or a generic load balancer for arbitrary TCP/UDP workloads.
  • Caching requires deliberate cache rules and suitable content. Do not cache personalized or sensitive responses without understanding the consequences.
  • A successful edge response does not prove every origin dependency or authenticated operation is healthy.

Home · traffic-manager · application-gateway · load-balancer · azure-dns · azure-firewall

Sources and re-audit