ZeroToArchitect Logo

Route Tables and User Defined Routes (UDRs)

In this lesson you will learn how Virtual Machines know how to reach other VMs inside a Virtual Network, and how to override the path they take.

7 min read
3 exam insights

Up to this point, you’ve learned what a Virtual Network is and how it can be divided into smaller parts called subnets.

However, an important point we haven’t covered is: how does a Virtual Machine know where to send its traffic inside a network?

For example, how does a web server in one subnet know how to reach a database server in another subnet?

In this lesson, you will learn about what Route Tables are and how they help Virtual Machines know where to send their network traffic.

What is a Route Table?

Route Table Steps

In simple terms, a Route Table is a list of routing rules that define how network traffic should travel.

Each routing rule has three properties, and they are commonly shown as rows inside a table, like this:

Source

Address Prefix

Next Hop Type

Default

10.0.0.0/8

None

Default

0.0.0.0/0

Internet

Default

172.16.0.0/12

Virtual Network

Here’s what each column means:

  • The Source column represents who created the route in the Route Table. A value of “Default” means that the row was automatically created by Azure, and it cannot be deleted or modified.

  • The Address Prefix column specifies the destination IP to match. For example, if a VM sends a request to 10.0.0.10, then it will be picked up by the first row in the table.

  • The Next Hop Type tells Azure where the network traffic should go next. A value of “Virtual Network” means the destination is inside the same network, “Internet” means the traffic will be sent out toward the public internet, and “None” means that the traffic should be dropped.

*As a quick side note here, sometimes, a fourth column is also present, called Next Hop IP, but that’s used only in special scenarios where a request is redirected to a specific VM. You will learn more about this in the section about User Defined Routes.

Did you know?

A Route Table can be linked to multiple subnets, but each subnet can have at most one Route Table.

System Routes

System Routes & UDRs

System Routes are the default routing rules that Azure creates automatically for every subnet inside a Virtual Network.

This type of routes are updated by Azure every time you modify your network, for example when you add a new subnet or create a peering connection to another Virtual Network.

Every subnet has its own Route Table, and System Routes cannot be deleted or modified. If you want to override them, you must create a User Defined Route (UDR), more on that later.

The default System Routes for every subnet look like this:

Source

Address Prefix

Next Hop Type

Default

(your VNets address space)

Virtual Network

Default

10.0.0.0/8

None

Default

172.16.0.0/12

None

Default

192.168.0.0/16

None

Default

100.64.0.0/10

None

Default

0.0.0.0/0

Internet

Here's what these rules mean:

All System Routes use “Default” as their Source. This allows you to quickly identify which routing rules were automatically created by Azure.

The first routing rule specifies that any network traffic sent to an IP Address within the Virtual Network’s own Address Space will stay inside the Virtual Network. This rule allows Virtual Machines to communicate both within the same subnet and across different subnets in that Virtual Network.

The next four rules have the Next Hop Type set to “None”, meaning that any network traffic headed to a Private IP range outside your Virtual Network’s Address Space will be dropped.

The last rule (0.0.0.0/0 → Internet) sends any remaining traffic (not matched by the other rules) to the public internet.

Exam Insight

Remember that System Routes cannot be deleted or modified. If you are asked to override a System Route, you must do so through a User Defined Route (UDR).

User Defined Routes (UDRs)

UDR routing traffic to an NVA example

User Defined Routes (UDRs) are rules that you create to override or extend the default System Routes. They let you control exactly how traffic should flow.

Two common use cases for UDRs are:

  1. Traffic inspection: Send all network traffic to a specific VM for inspection (this VM is commonly called a Network Virtual Appliance, or NVA)

  2. Traffic blocking: Drop network packets that match certain destination CIDR Blocks.

In practice, this is how a Route Table with two UDRs might look like:

Source

Address Prefix

Next Hop Type

Next Hop IP

User

10.5.0.0/24

Virtual Appliance

10.10.0.1

User

10.8.8.0/24

None

None

The first UDR directs all traffic headed to 10.5.0.0/24 to an NVA (at 10.10.0.1). If the NVA allows the traffic after inspection, it will forwarded to the next destination, otherwise it will be dropped.

The second rule drops all network traffic headed to 10.8.8.0/24 .

Exam Insight

You could be asked how to force network traffic from a Virtual Machine through a Network Virtual Appliance (NVA) during your exam. The answer is that you use a UDR with a Next Hop Type value of “Virtual Appliance”.

What to remember for your exam

  • Route Tables define how outbound network traffic from a subnet is routed.

  • Route Tables contain two types of entries: System Tables (the default ones, which you can’t delete or modify), and User Defined Routes (the ones you create manually, to override or extend the default settings).

  • A Network Virtual Appliance (NVA) is a Virtual Machine that inspects network traffic and either forwards it or drops it.

  • You can force network traffic through an NVA by creating a User Defined Route that uses Next Hope Type = “Virtual Appliance”, pointing to the NVA’s Private IP address.

What’s next?

To lock in what you’ve learned, take the short 8-question quiz for this lesson. It will help you test your understanding of Route Tables and User Defined Routes (UDRs) before you move on.

In the next lesson, you'll learn how to secure your Virtual Networks using Network Security Groups (NSGs), which let you allow or block certain network traffic from entering or leaving a subnet or VM.

Alexandru Tepes

Author

Alexandru Tepes

Software Engineer, Tech Educator & Founder. 6x Microsoft + AWS Certified. Helping you go from Zero to Certified Cloud Architect.

Published on 11/4/2025

Practice Quiz

Test your knowledge

*You will be redirected to login first

Want to pass your next certification?

Start practicing with real exam-style questions today. Gain confidence, spot your weak points, and be fully prepared to pass your certification.

Want to connect with others?

Our Discord community is here to support you

Join Our Discord Community

Connect with like-minded professionals studying for their Azure certifications. Share tips, ask questions, find study partners, and stay motivated on your learning journey.

Active Discussions

Get answers to your questions from peers and experts

Study Groups

Find accountability partners and study together

Celebrate Wins

Share your certification achievements with the community

Join Discord Community