From the blog.

Managing Digital Racket
The more I tune out, the less I miss it. But that has presented me with some complex choices for a nuanced approach to curb
Complexity – My Friend, My Enemy
Over my years of network engineering, I've learned that the fewer features you can implement while still achieving a business goal, the better. Why? Fewer

GroupStudy.com CCIE-LAB List – Best of 1/22/2008 – Static Routes With Object Tracking + The VTP Version Mystery + no ip mroute-cache + debug ip mpacket + Creative EIGRP Default Route Creation + A Better TCL Pinger

779 Words. Plan about 5 minute(s) to read this.

Topics that interested me over the last several days of reading threads on the GroupStudy.com CCIE-LAB mailing list…

  • Check out this article about conditional static routes based on object tracking by Scott Morris. I’ve actually used this technique in our production network to solve an odd problem where we couldn’t use a dynamic routing protocol to know if a remote node was available.
  • Am I running VTP version 1 or VTP version 2? This issue comes up because the output of the “show vtp status” command is misleading at first glance. The “VTP Version” line indicates that this switch is capable of running VTP v2. The “VTP V2 Mode” line indicates that the switch is or is not running VTP v2. Below I compare output from a 3750 running IOS 12.2(25)SEE with a 3750 running IOS 12.2(37)SE1. IOS 12.2(37)SE1 doesn’t have the same ambiguity.

    IOS 12.2(25)SEE

    LAB-switch(config)#vtp version 1
    VTP mode already in V1.
    LAB-switch(config)#do show vtp status
    VTP Version : 2
    Configuration Revision : 0
    Maximum VLANs supported locally : 1005
    Number of existing VLANs : 16
    VTP Operating Mode : Transparent
    VTP Domain Name :
    VTP Pruning Mode : Disabled
    VTP V2 Mode : Disabled
    VTP Traps Generation : Disabled
    MD5 digest : 0xE8 0xD5 0x94 0x61 0x1D 0x21 0x6E 0x2C
    Configuration last modified by 0.0.0.0 at 0-0-00 00:00:00

    LAB-switch(config)#vtp version 2
    LAB-switch(config)#do show vtp status
    VTP Version : 2
    Configuration Revision : 0
    Maximum VLANs supported locally : 1005
    Number of existing VLANs : 16
    VTP Operating Mode : Transparent
    VTP Domain Name :
    VTP Pruning Mode : Disabled
    VTP V2 Mode : Enabled
    VTP Traps Generation : Disabled
    MD5 digest : 0xC5 0x00 0xB1 0xE7 0x2A 0x86 0x4B 0x72
    Configuration last modified by 100.200.50.25 at 0-0-00 00:00:00

    IOS 12.2(37)SE1

    CAT3(config)#vtp version 1
    VTP mode already in V1.
    CAT3(config)#do show vtp status
    VTP Version : running VTP1 (VTP2 capable)
    Configuration Revision : 0
    Maximum VLANs supported locally : 1005
    Number of existing VLANs : 13
    VTP Operating Mode : Transparent
    VTP Domain Name : dotit-lab9
    VTP Pruning Mode : Disabled
    VTP V2 Mode : Disabled
    VTP Traps Generation : Disabled
    MD5 digest : 0x98 0x87 0x41 0x6D 0x12 0x0C 0x6A 0xB6
    Configuration last modified by 0.0.0.0 at 0-0-00 00:00:00

    CAT3(config)#vtp version 2
    CAT3(config)#do show vtp status
    VTP Version : running VTP2
    Configuration Revision : 0
    Maximum VLANs supported locally : 1005
    Number of existing VLANs : 13
    VTP Operating Mode : Transparent
    VTP Domain Name : dotit-lab9
    VTP Pruning Mode : Disabled
    VTP V2 Mode : Enabled
    VTP Traps Generation : Disabled
    MD5 digest : 0x26 0x72 0x63 0xDB 0x70 0x43 0xD2 0x34
    Configuration last modified by 0.0.0.0 at 0-0-00 00:00:00

  • Use “no ip mroute-cache” in an interface configuration to be sure that you see multicast packets when doing a “debug ip mpacket“.
  • How does one configure EIGRP to advertise a default route, without using “default-information” or an interface summary? How about creating a quad-zero static route pointing to Null0, and then redistributing static routes? I thought that was creative, and could work for other protocols, too. It just so happened to be in a thread about doing it with EIGRP.
  • This nifty TCL script for doing reachability checks was posted to the mailing list as a cross post from Sadikhov forums. The script tidily reduces the output you get from the pinger script we usually all run. Props to the creator, “richerich” over at Sadikhov. So, first the “old” way, then the “new” one…

    OLD TCL PINGER SCRIPT

    R1(tcl)#foreach address {
    +>(tcl)#fec0::101:1
    +>(tcl)#fec0::124:1
    +>(tcl)#fec0::111:A <- This is the bogus IPv6 address.
    +>(tcl)#fec0::102:1
    +>(tcl)#fec0::124:2
    +>(tcl)#fec0::25:2
    +>(tcl)#} {
    +>(tcl)#ping $address
    +>(tcl)#}

    Type escape sequence to abort.
    Sending 5, 100-byte ICMP Echos to FEC0::101:1, timeout is 2 seconds:
    !!!!!
    Success rate is 100 percent (5/5), round-trip min/avg/max = 0/0/0 ms
    Type escape sequence to abort.
    Sending 5, 100-byte ICMP Echos to FEC0::124:1, timeout is 2 seconds:
    !!!!!
    Success rate is 100 percent (5/5), round-trip min/avg/max = 0/0/4 ms
    Type escape sequence to abort.
    Sending 5, 100-byte ICMP Echos to FEC0::111:A, timeout is 2 seconds:
    …..
    Success rate is 0 percent (0/5)
    Type escape sequence to abort.
    Sending 5, 100-byte ICMP Echos to FEC0::102:1, timeout is 2 seconds:
    !!!!!
    Success rate is 100 percent (5/5), round-trip min/avg/max = 48/52/60 ms
    Type escape sequence to abort.
    Sending 5, 100-byte ICMP Echos to FEC0::124:2, timeout is 2 seconds:
    !!!!!
    Success rate is 100 percent (5/5), round-trip min/avg/max = 48/51/52 ms
    Type escape sequence to abort.
    Sending 5, 100-byte ICMP Echos to FEC0::25:2, timeout is 2 seconds:
    !!!!!
    Success rate is 100 percent (5/5), round-trip min/avg/max = 48/49/52 ms

    A BETTER TCL PINGER

    R1(tcl)#foreach ip {
    +>(tcl)#fec0::101:1
    +>(tcl)#fec0::124:1
    +>(tcl)#fec0::111:A <- This is the bogus IPv6 address.
    +>(tcl)#fec0::102:1
    +>(tcl)#fec0::124:2
    +>(tcl)#fec0::25:2
    +>(tcl)#} {
    +>(tcl)#if { [regexp “(!!!)” [exec “ping $ip timeout 1” ]] } {
    +>(tcl)#puts “$ip”
    +>(tcl)#} else { puts “$ip **** failed ***” }
    +>(tcl)#}
    fec0::101:1
    fec0::124:1
    fec0::111:A **** failed ***
    fec0::102:1
    fec0::124:2
    fec0::25:2