Checking the IP routing table in Windows shows which gateway and network interface handle traffic for each destination network. When multiple adapters, VPN clients, or virtual switches exist, the routing table is often the difference between a working connection and traffic silently taking the wrong path.
The Windows TCP/IP stack maintains separate routing tables for IPv4 and IPv6. Each route specifies a destination prefix (network + mask/prefix length), a next hop (gateway) or On-link delivery, an interface, and a metric that influences route selection. Windows generally chooses the most specific match first (longest prefix), then prefers the lowest metric among equally specific routes.
Route entries can change automatically due to DHCP renewals, Wi-Fi roaming, VPN connections, or virtualization features such as Hyper-V and WSL. Viewing routes is safe, but changing routes (route add/route delete, New-NetRoute, Remove-NetRoute) can immediately break connectivity if a default route or interface route is altered.
Related: How to check IP address in Windows
Related: How to configure a static IP address on Windows
Methods to check IP routing table in Windows:
Using the Command Prompt:
- Open Command Prompt.
- Display the IPv4 routing table.
C:\> route print -4 =========================================================================== Interface List 15...3c 52 82 aa bb cc ...... Ethernet 11...f0 9f c2 12 34 56 ...... Wi-Fi 1........................... Software Loopback Interface 1 =========================================================================== IPv4 Route Table =========================================================================== Active Routes: Network Destination Netmask Gateway Interface Metric 0.0.0.0 0.0.0.0 192.168.1.1 192.168.1.50 25 127.0.0.0 255.0.0.0 On-link 127.0.0.1 331 192.168.1.0 255.255.255.0 On-link 192.168.1.50 281 192.168.1.50 255.255.255.255 On-link 192.168.1.50 281 192.168.1.255 255.255.255.255 On-link 192.168.1.50 281 =========================================================================== Persistent Routes: None0.0.0.0 with netmask 0.0.0.0 is the default IPv4 route used when no more specific route matches.
- Display the IPv6 routing table when troubleshooting IPv6 paths.
C:\> route print -6 =========================================================================== Interface List 15...3c 52 82 aa bb cc ...... Ethernet 11...f0 9f c2 12 34 56 ...... Wi-Fi 1........................... Software Loopback Interface 1 =========================================================================== IPv6 Route Table =========================================================================== Active Routes: If Metric Network Destination Gateway 15 25 ::/0 fe80::1 1 331 ::1/128 On-link 15 281 2001:db8:1:1::/64 On-link 15 281 2001:db8:1:1::50/128 On-link 15 281 fe80::/64 On-link =========================================================================== Persistent Routes: None
::/0 is the default IPv6 route, and fe80::1 is a common link-local next hop on the local segment.
- Inspect the Active Routes and Persistent Routes sections to confirm the expected gateway, interface, and metrics.
- Filter the output by specifying a destination network.
C:\> route print 192.168.1.0 =========================================================================== IPv4 Route Table =========================================================================== Active Routes: Network Destination Netmask Gateway Interface Metric 192.168.1.0 255.255.255.0 On-link 192.168.1.50 281 192.168.1.50 255.255.255.255 On-link 192.168.1.50 281 192.168.1.255 255.255.255.255 On-link 192.168.1.50 281Use route print -4 and route print -6 to limit output to IPv4 or IPv6 when the full table is noisy.
- Close Command Prompt.
Using Windows PowerShell:
The NetTCPIP cmdlets return route entries as objects, which is useful for filtering by prefix, address family, and metric.
- Open Windows PowerShell.
- List all current routes.
PS C:\> Get-NetRoute ifIndex DestinationPrefix NextHop RouteMetric PolicyStore ------ ----------------- ------- ----------- ----------- 15 0.0.0.0/0 192.168.1.1 25 ActiveStore 15 192.168.1.0/24 0.0.0.0 281 ActiveStore 1 127.0.0.0/8 0.0.0.0 331 ActiveStore 15 2001:db8:1:1::/64 0.0.0.0 281 ActiveStore 15 ::/0 fe80::1 25 ActiveStore ##### snipped #####
ifIndex maps to the interface index, and RouteMetric is used as a tiebreaker when multiple routes have the same destination specificity.
- Filter routes by destination prefix.
PS C:\> Get-NetRoute -DestinationPrefix 192.168.1.0/24 ifIndex DestinationPrefix NextHop RouteMetric PolicyStore ------ ----------------- ------- ----------- ----------- 15 192.168.1.0/24 0.0.0.0 281 ActiveStore
- Display the default IPv4 route.
PS C:\> Get-NetRoute -DestinationPrefix 0.0.0.0/0 ifIndex DestinationPrefix NextHop RouteMetric PolicyStore ------ ----------------- ------- ----------- ----------- 15 0.0.0.0/0 192.168.1.1 25 ActiveStore
- Display the default IPv6 route.
PS C:\> Get-NetRoute -DestinationPrefix ::/0 ifIndex DestinationPrefix NextHop RouteMetric PolicyStore ------ ----------------- ------- ----------- ----------- 15 ::/0 fe80::1 25 ActiveStore
- Exit PowerShell.
Mohd Shakir Zakaria is a cloud architect with deep roots in software development and open-source advocacy. Certified in AWS, Red Hat, VMware, ITIL, and Linux, he specializes in designing and managing robust cloud and on-premises infrastructures.
