Exploring Network Discovery with Visio 2002, Part 2

Archived content. No warranty is made as to technical accuracy. Content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.

Published: October 1, 2001

By Jeff Yarnell

Microsoft Corporation

Applies to:
Microsoft Visio Professional 2002
Microsoft Visio Standard 2002

In the first installment of this series on network discovery, I described a typical network environment, but there's really no such thing. A plethora of various networking devices were bought, sold (remember the NASDAQ Composite peak at 5,000?), and deployed as corporate and ISP networks exploded in the past few years. What all these networks do have in common is their diversity, complexity, and, far more often than not, IT staff who aren't exactly sure what they have and how it's all connected.

I've worked on network discovery for six years, and can't count the number of times I've heard network administrators, faced with the results of a network discovery, exclaim "But that's not on my network!" Granted, discovery isn't infallible, but it usually doesn't find things that aren't there. More often than not, network discovery presents network administrators with a few surprises.

There's no such thing as a typical network. What networks have in common is diversity, complexity, and more often than not, IT staff who aren't 100 percent sure what's where.

In this article, I'll talk about using logical networks to manage network complexity and demonstrate the principles with the IP subnet and router example.

On This Page

Logical Networks: Useful Abstractions
The IP Subnet and Router Example
Using Routers to Identify Subnets
Using Route Tables

Logical Networks: Useful Abstractions

One way network administrators often think of their networks is hierarchically, where the bottom level is made up of desktop end stations and the top level is some high-speed core backbone. The middle layers are full of various routers and switches that provide paths through the network, and are designed to ensure security, redundancy, and priority delivery (quality of service) to mission critical applications.

But to make sense of network complexities, administrators also often think of their networks as logical networks and physical networks.

Logical networks, such as IP subnets, Windows domains, and VLANs, are defined by the applications or network protocols. In contrast, physical networks consist of the actual infrastructure—the hardware devices, ports, connectors, and cables of the logical networks. Understanding both is key to working with your network.

Logical networks are defined by the applications or protocols at work on the networks. Physical networks are the infrastructure of the logical networks—the actual hardware devices, ports, connectors, and cables.

The IP Subnet and Router Example

Discovery of logical networks requires knowledge of the applications and protocols on the network. Each subnet is characterized by an IP address and subnet mask, which together define a network address. A subnet accommodates some number of hosts who share that network address.

For example, the IP address 192.168.32.64 and mask 255.255.255.192 define IP subnet 192.168.32.64 with host addresses ranging from 192.168.32.65 to 192.168.32.127 (the subnet broadcast address).

IP subnets represent a logical view of a network. However, IP subnets alone are not enough to help a network administrator understand a network, because subnets are connected by routers. Since many applications depend upon a proper understanding of the routed infrastructure of your network, the right combination of router and IP subnet information can help you deploy new applications and troubleshoot network-related problems.

So the question becomes, how can we discover the routers and IP subnets that make up a network?

Using Routers to Identify Subnets

Every TCP/IP device on the network has some information about IP subnets. Most devices are simply configured with an IP address and subnet mask reflecting their own subnet. But routers forward packets from one subnet to another, so they have to recognize multiple subnets at least the subnets they're connected to. Routers that exchange routing messages recognize additional subnets. Therefore, if we want to know the IP subnets on the network, routers can provide the answer.

There are several ways to examine routers. Anyone who's configured a router is familiar with a command line interface for specifying routing protocols, addressing, and other configuration settings.

Today, most network devices also offer a built-in Web server for configuration. While these configuration mechanisms may show which subnets a router recognizes, they're usually different for each router vendor, and sometimes different among routers from the same vendor.

SNMP (Simple Network Management Protocol) provides a vendor-independent, programmable way to query routers and determine the subnets on the network. Virtually all SNMP-manageable routers implement MIB-II (RFC 1213), ground-zero for network management. (I'm not aware of a router that isn't SNMP-manageable.) Among other useful data, MIB-II includes the ipRouteTable, a table of information about the subnets the router knows about. By simply querying a router for each ipRouteDest in its ipRouteTable, you can discover the subnets.

Using Route Tables

Here are two important considerations about using route tables.

First, in large networks, route tables can contain thousands of entries. It can take a long time to read every route in a router's ipRouteTable. Also, routers will naturally know about many of the same subnets so the cumulative results of ipRouteTable queries will include a lot of redundant information.

Second, using SNMP to query the route table of every router on the network presupposes that you know an IP address for each of those routers. But if you don't, the ipRouteTable can serve another purpose. For every ipRouteDest there is a corresponding ipRouteNextHop that is the IP address of an adjacent router (for example, a router on a common subnet). So, using the ipRouteTable, you can discover not only subnets, but other routers. Therefore, all you need to begin identifying the network's subnets is a starting router.

Since many applications depend upon a proper understanding of the routed infrastructure of your network, this router and IP subnet information can help you deploy new applications and troubleshoot network-related problems.

See Exploring Network Discovery in Visio 2002, Part 1 on the TechNet Technology Center for Visio 2002.