Understanding EIGRP Queries
Despite claims that EIGRP is a "hybrid" routing protocol, it is in fact a distance-vector routing protocol (Cisco has more recently ceded to using the term "advanced distance vector" in place of "hybrid"). A prime example of this behavior can be observed by examining EIGRP's route querying process. Queries are used to ask neighbors whether they have a path to a route which was recently lost. This is in contrast to a link-state routing protocol, wherein every router already has a complete picture (SPF tree) of its link-state area.
EIGRP's query process is ...
Sniffing with Wireshark as a Non-Root User
This article focuses on Linux and some UNIXes. For Windows users, there is some good info in the Wireshark wiki.
Many network engineers become dismayed the first time they run Wireshark on a Linux machine and find that they don't have access to any network interfaces. This is because, by default, raw access to network interfaces (e.g. eth0) requires root privileges. Unfortunately, this often prompts people to simply run Wireshark as root - a bad idea. As an older Gentoo Linux ebuild of Wireshark warns:
WIRESHARK CONTAINS OVER ONE POINT FIVE MILLION LINES OF SOURCE CODE. DO NOT RUN ...
Using 6to4 for IPv6 at Home
Earlier this week, we looked at using 6to4 tunnels to establish IPv6 connectivity among sites separated by an IPv4-only transit network. This article extends that concept a bit further to show how you can take advantage of 6to4 tunneling to achieve IPv6 (albeit non-native) access to the public Internet, even from home.
This article discusses configuration of the 6to4 tunnel on an IOS-based access router, however this concept applies to any router or end host which supports 6to4 tunneling and has a global IPv4 address.
Step 1: Find a 6to4 Relay Near You
Like any tunnel ...
6to4 IPv6 Tunneling
"6to4 tunneling" is an IPv6 transition mechanism described in RFC 3056. Like many other transition mechanisms, it enables encapsulation of IPv6 packets into IPv4 for transport across an IPv4 network. What's really neat about 6to4 is that it allows for automatic IPv6-to-IPv4 address translation, and treats the underlying IPv4 network as one big non-broadcast multiaccess (NBMA) network, rather than a collection of independent point-to-point links.
Consider the following topology:

Three sites, each with its own IPv6 LAN, are connected to one another via an IPv4-only backbone. One way to connect the IPv6 LANs would be to ...
RFC 5798 Brings IPv6 to VRRP
RFC 5798 was published this week, formalizing the latest incarnation of Virtual Router Redundancy Protocol (VRRP). VRRPv3 introduces support for IPv6 in addition to IPv4.
One might wonder why VRRP is necessary for IPv6 at all, given that IPv6 includes robust router discovery as part of its Neighbor Discovery (ND) protocol. Section 1.3 of the RFC explains it well (emphasis mine):
Neighbor Discovery (ND) includes a mechanism called Neighbor Unreachability Detection to detect the failure of a neighbor node (router or host) or the forwarding path to a neighbor. This is done by sending ...
The Science of Network Troubleshooting
A number of people have written asking me what happened to a paper I wrote back in 2008 entitled "The Science of Network Troubleshooting." Unfortunately, I neglected to republish the paper after revamping packetlife.net in late 2009, so here it is again as a blog article.
Troubleshooting is not an art. Along with many other IT methodologies, it is often referred to as an art, but it's not. It's a science, if ever there were one. Granted, someone with great skill in troubleshooting can make it seem like a natural talent, the same way a professional ball ...
Navigating Cisco.com Documentation
From what I've seen interacting with other engineers, it seems that most of us, when we need to research something relevant to Cisco networking, go straight to Google. This is typically the most expedient path toward an answer, but it isn't necessarily the most reliable or the most accurate. The problem is that Google or another search engine will direct you to whatever resource on cisco.com it considers most relevant; one must be careful to consider the hardware platform and/or IOS version specific to the situation at hand.
For example, an engineer who googles for documentation concerning the configuration of a particular IOS feature will often find what he needs, but may not be aware that the documentation he is looking at is for a newer or older version of software, or that it applies to a family of hardware different from the device he is configuring. This might not be a problem all the time, but it is a good way to get bitten by minor differences in supported features and configuration syntax.
A more reliable approach is to navigate Cisco's documentation manually to find the exact information you need. People often complain that Cisco's online documentation is too difficult to navigate, but after digging through it numerous times to find references for the many blog articles I've written, I think it merely takes a bit of strategy. That's why I decided to write this article.
Cisco "Go" links reference in the wiki
One of my (very) slow-paced background projects has been building a list of all the handy Cisco.com "go" links I come across. "Go" links are easily remembered shortcut links to various content throughout Cisco.com. For example, http://cisco.com/go/fn redirects to Cisco's feature navigator tool at http://tools.cisco.com/ITDIT/CFN/jsp/index.jsp. Unfortunately, I've been unable to find a master index of all "go" links, so I started the Cisco.com "go" links wiki article to record the ones I've found useful.
At the time of this writing, the article ...
Teaching binary and other bases
I've seen a lot of people struggle when first learning decimal-to-binary and other conversions, mostly because they find themselves overwhelmed with conversion charts and don't quite grasp the concept of a numbering base. I decided to write this post when I realized the method I use to teach people binary and hexadecimal isn't used in any of the books I have (which isn't to say it's unique by any means, but perhaps not very widespread).
If you do use the methodology described here, I would appreciate feedback on how well it worked (or didn't ...
OSPFv2 versus OSPFv3
OSPFv3 is to IPv6 what OSPFv2 is to IPv4. The two versions of OSPF naturally have much in common, however there are several important differences in the way the two protocols operate. This article seeks to highlight some of the more noteworthy deviations. (For a more thorough discussion, see section 2 of RFC 5340.) For illustration, both OSPFv2 and OSPFv3 have been configured on the example topology below.

For some IOS OSPFv3 configuration fundamentals, see IPv6 and OSPFv3.
New LSA Types
OSPFv3 carries over the seven basic LSA types we're familiar with from OSPFv2. However ...
