Azure Networking Resource

Azure VNet Peering

Azure VNet Peering is one of the most important connectivity features in Azure networking. It lets two virtual networks communicate privately over the Microsoft backbone, often with the same feel as if the resources were in one larger network design.

If Azure VNet gives you the network boundary, subnets give you structure, NSGs filter traffic, route tables control the path, and Private Link gives you private service access, then VNet peering gives you private network-to-network connectivity.

This page explains Azure VNet Peering in practical terms, with global peering, gateway transit, hub-and-spoke design, service chaining, real-world examples, common mistakes, troubleshooting tips, and official Azure documentation links.

What is Azure VNet Peering?

Azure VNet Peering connects two virtual networks so resources in those VNets can communicate privately using Azure’s backbone network. It is commonly used to connect application environments, shared services networks, or hub-and-spoke architectures.

In simple terms, peering is how you privately link two Azure VNets without building a VPN tunnel between them. Azure documents peering as a low-latency, high-bandwidth connection over the Microsoft backbone.

Peering can connect VNets in the same region or in different regions. When VNets are in different regions, Azure calls that global virtual network peering.

Main purpose Connect two VNets privately over the Microsoft backbone.
Why it matters It supports fast private connectivity between Azure network boundaries.
Typical use Hub-and-spoke designs, shared services, cross-subscription connectivity, and regional connectivity patterns.
Quick understanding: VNet peering is private network-to-network connectivity, not service-specific private access like Private Link.

Why Azure VNet Peering matters

Azure environments often grow beyond a single VNet. Different teams, environments, security zones, or regions may use separate VNets. Peering matters because it lets those networks communicate privately without overcomplicating the design.

Private connectivity

VNets can communicate over private IPs without sending traffic through the public internet.

Same-region and global support

Peering works within a region and also across regions through global VNet peering.

Hub-and-spoke architecture

It is one of the most common ways to connect spokes to a central hub VNet.

Gateway transit

One VNet can use a gateway in another peered VNet for on-premises connectivity.

Cross-subscription designs

Peering supports enterprise environments where VNets live in different subscriptions or even different Entra tenants.

Better traffic design

It helps teams separate environments cleanly while still allowing approved communication paths.

Important idea: VNet peering is often the cleanest answer when two Azure networks need to talk privately but should still remain separate network boundaries.

Azure VNet Peering in the 5 Ws

What is Azure VNet Peering?

It is a private connectivity feature that links two VNets so resources in them can communicate over Azure’s backbone.

Why do teams use it?

Teams use it to connect separate VNets privately for shared services, application communication, hub-and-spoke design, or regional connectivity patterns.

When should you use it?

Use peering when two Azure VNets need private connectivity and a clean network-to-network relationship is a better fit than VPN-based design.

Where does it fit?

It fits between VNets, whether those VNets are in the same region, different regions, different subscriptions, or different administrative boundaries.

Who works with it?

Cloud engineers, Azure administrators, network engineers, platform architects, and DevOps teams all work with peering in real Azure environments.

How does it work?

Azure creates a peering relationship between two VNets. Once peered, traffic between address spaces can route privately over Azure’s backbone, subject to routing, NSG, and peering settings.

How VNet peering works

When two VNets are peered, Azure adds routing awareness for the remote VNet address space. Azure notes that effective routes on a NIC in a peered VNet will show next hop type Virtual network peering for the peered address spaces.

This means resources in one VNet can reach resources in the other VNet privately, provided the address spaces do not overlap and other controls like NSGs or UDRs do not block the path.

Peering idea

VNet A
   ↕
Azure peering relationship
   ↕
VNet B

Traffic path:
private IP → Azure backbone → private IP
Simple idea: Peering is about connecting whole network boundaries, not exposing a single service endpoint.

Same-region vs global VNet peering

Azure supports peering between VNets in the same region and also across different regions. Azure refers to cross-region peering as global virtual network peering.

Type What it means Typical use
VNet peering Connect VNets in the same Azure region Shared services, same-region hub-and-spoke
Global VNet peering Connect VNets in different Azure regions Multi-region architecture, regional separation with private connectivity
Important reminder: Azure documents some constraints for globally peered VNets, including limitations around Basic Load Balancer front-end IP communication. Review those when designing older or constrained workloads.

Gateway transit explained

Gateway transit lets one peered VNet use the VPN or ExpressRoute gateway in another peered VNet. Azure documents that the VNet using a remote gateway cannot also have its own gateway in that scenario.

This is especially useful in hub-and-spoke designs where the hub has the gateway and the spokes consume that gateway for on-premises or cross-network connectivity.

Why teams use it

To avoid deploying separate gateways in every spoke VNet.

Common design

Hub VNet hosts the gateway, spoke VNets use remote gateway transit.

Practical reminder: Gateway transit is a peering property, not an automatic behavior. The correct peering settings still need to be enabled on both sides.

Service chaining and UDRs

Azure documents service chaining as the ability to use UDRs so traffic from one VNet can be sent to a virtual appliance or gateway in a peered VNet. This is a core pattern behind many hub-and-spoke firewall designs.

In practical terms, this means:

  • a spoke VNet can peer with a hub VNet
  • the hub can host a firewall or virtual appliance
  • UDRs in the spoke can send traffic to that appliance as the next hop
Service chaining idea

Spoke VNet
   ↓ UDR next hop
Hub firewall / virtual appliance
   ↓
Approved destination
Simple idea: Peering gives the connectivity, and UDRs shape how traffic uses that connectivity.

Hub-and-spoke peering

Hub-and-spoke is one of the most common Azure network patterns for VNet peering. The hub VNet usually hosts shared services such as firewalls, Bastion, DNS forwarders, VPN gateways, or shared management services, while spoke VNets host application workloads.

Hub-and-spoke idea

Hub VNet
 ├─ Firewall
 ├─ Bastion
 ├─ VPN / ExpressRoute Gateway
 └─ Shared services

Spoke VNet A
 └─ App workloads

Spoke VNet B
 └─ App workloads
Why teams like this: It keeps network roles clear while still allowing private connectivity through peering.

Common Azure VNet Peering use cases

Hub-and-spoke networking

Spoke VNets connect privately to a central hub VNet with shared services.

Shared services access

App VNets reach central DNS, firewall, Bastion, or management components in another VNet.

Cross-subscription communication

Teams keep VNets in separate subscriptions but still connect them privately.

Multi-region architecture

Global peering connects VNets in different regions when private inter-region communication is required.

Gateway sharing

Spoke VNets use a remote gateway in the hub for on-premises connectivity.

Centralized inspection

UDRs and peering combine to steer traffic through hub-based appliances.

Real-world Azure VNet Peering examples

Example 1: Shared hub services

A platform team builds one hub VNet with Bastion, firewall, and DNS services, then peers multiple spoke VNets to it for private access.

Example 2: Enterprise cross-subscription design

Separate business units keep their workloads in different subscriptions but peer VNets so approved application communication stays private.

Example 3: Multi-region application footprint

Regional VNets are globally peered so app components and operational tooling can communicate privately across regions.

Example 4: On-premises gateway transit

A hub VNet hosts the gateway, and spoke VNets use remote gateway transit instead of deploying separate gateways everywhere.

Example 5: Firewall service chaining

UDRs in spoke subnets point to a firewall in a peered hub VNet so traffic follows an inspected path before leaving the subnet.

Azure VNet Peering best practices

  • Plan address spaces carefully and avoid overlap.
  • Use clear naming for peering relationships.
  • Document the purpose of each peering link.
  • Keep hub-and-spoke roles clear if that pattern is used.
  • Understand gateway transit settings before enabling them.
  • Review NSGs and UDRs along with peering, not separately.
  • Use global peering intentionally for multi-region design.
  • Test effective routes and real connectivity after changes.
  • Review pricing impact for peering traffic where relevant.
  • Keep old or unnecessary peerings cleaned up.
Most important best practice: Peering is simple to create, but it should still follow a clear network design rather than becoming an uncontrolled mesh.
Good next step: Once you understand Azure VNet Peering conceptually, the best way to reinforce learning is to build it with Terraform.

Common Azure VNet Peering mistakes

Overlapping address spaces

Peering will not work correctly if the VNet address spaces overlap.

Wrong gateway transit settings

Gateway sharing can fail if the peering properties are not configured properly.

Ignoring UDR and NSG behavior

Peering provides connectivity, but routing and filtering still control the actual path and permission.

Unplanned full mesh growth

Too many peerings without clear design can make troubleshooting and governance harder.

Forgetting global peering constraints

Some legacy or constrained services may behave differently across global peering paths.

No route validation

Teams sometimes assume peering is enough without checking effective routes or real traffic behavior.

Troubleshooting Azure VNet Peering issues

When peering connectivity fails, Azure recommends checking effective routes and using Network Watcher connectivity checks. Effective routes should show peered address spaces with next hop type Virtual network peering.

Basic troubleshooting sequence

  1. Check that the peering exists on both sides as intended.
  2. Confirm the address spaces do not overlap.
  3. Check effective routes on a NIC in the affected subnet.
  4. Validate NSGs and UDRs along the path.
  5. Review gateway transit and remote gateway settings if used.
  6. Use Network Watcher connectivity checks where appropriate.

Useful troubleshooting questions

  • Is the peering actually configured on both VNets?
  • Are the address spaces unique and non-overlapping?
  • Do effective routes show the peered prefixes?
  • Is a UDR or NSG blocking the traffic even though peering exists?
  • If using gateway transit, are the right peering properties enabled?
Troubleshooting mindset

Peering issue?
 ├─ Check peering objects
 ├─ Check address spaces
 ├─ Check effective routes
 ├─ Check NSG / UDR path
 ├─ Check gateway transit settings
 └─ Check Network Watcher connectivity
Common trap: Teams often blame peering first when the real issue is still a route table, NSG, or overlapping address plan.

Frequently asked questions

What is Azure VNet Peering in simple words?

It is a private connection between two Azure VNets over the Microsoft backbone.

What is global VNet peering?

It is VNet peering between VNets in different Azure regions.

Can peered VNets use a shared gateway?

Yes, gateway transit allows one peered VNet to use a gateway in another peered VNet when configured correctly.

Does peering replace NSGs and route tables?

No. Peering provides connectivity, but NSGs still filter traffic and route tables still control traffic direction.

Can I peer VNets across subscriptions?

Yes. Azure supports peering across subscriptions and also across Microsoft Entra tenants in supported scenarios.

What usually breaks VNet peering?

Overlapping address spaces, wrong peering settings, route table issues, NSG rules, and gateway transit misconfiguration are common causes.

Official Microsoft Azure documentation

These official Microsoft Azure references are useful if you want deeper platform details, peering behavior guidance, and service-specific documentation for Azure VNet Peering.

Helpful next step: Use the official Microsoft Azure documentation above if you want deeper product details, peering settings guidance, and troubleshooting workflows for VNet peering.