IPv6: Not a Router?
By stretch | Friday, April 9, 2010 at 1:11 a.m. UTC
I managed to frustrate myself recently (sadly, not an uncommon occurrence) while working on an IPv6 lab. One of the routers simply refused to pass traffic, and at first I could not figure out why. The solution was simple - and in hindsight, painfully obvious - but I decided to record it here for posterity.
Here we have a simple scenario, three routers connected in series:
R1 and R3 both have a static default IPv6 route installed, pointing toward R2 as the next hop. All interfaces are up, and you would assume they could ping one another.
R1# show ipv6 route IPv6 Routing Table - 4 entries Codes: C - Connected, L - Local, S - Static, R - RIP, B - BGP U - Per-user Static route, M - MIPv6 I1 - ISIS L1, I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary O - OSPF intra, OI - OSPF inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2 ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2 D - EIGRP, EX - EIGRP external S ::/0 [1/0] via 2001:DB8:0:12::2 C 2001:DB8:0:12::/64 [0/0] via ::, FastEthernet0/0 L 2001:DB8:0:12::1/128 [0/0] via ::, FastEthernet0/0 L FF00::/8 [0/0] via ::, Null0 R1# ping 2001:db8:0:12::2
Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 2001:DB8:0:12::2, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 4/6/8 ms R1# ping 2001:db8:0:23::3
Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 2001:DB8:0:23::3, timeout is 2 seconds: ..... Success rate is 0 percent (0/5)
No luck. What gives? Let's start an IPv6 packet debug on R2 to hopefully shed some light on the issue.
R2# debug ipv6 packet IPv6 unicast packet debugging is on
Attempting our ping again from R1 elicits the following output from the debug on R2:
*Mar 1 00:14:14.575: IPV6: source 2001:DB8:0:12::1 (FastEthernet0/0) *Mar 1 00:14:14.575: dest 2001:DB8:0:23::3 (FastEthernet0/1) *Mar 1 00:14:14.579: traffic class 0, flow 0x0, len 100+14, prot 58, hops 64, not a router? *Mar 1 00:14:16.591: IPV6: source 2001:DB8:0:12::1 (FastEthernet0/0) *Mar 1 00:14:16.591: dest 2001:DB8:0:23::3 (FastEthernet0/1) *Mar 1 00:14:16.591: traffic class 0, flow 0x0, len 100+14, prot 58, hops 64, not a router? ...
"Not a router"? I don't want to get into a philosophical debate, I just want to ping, damnit. After a moment, though, the message clicks: R2 is indeed not an IPv6 router. Unlike its well-established predecessor, IPv6 routing does not yet come enabled out of the box. The administrator must enable it, which I forgot to do.
R2(config)# ipv6 unicast-routing
R1# ping 2001:db8:0:23::3 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 2001:DB8:0:23::3, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 4/9/16 ms
Back on R2, our debug confirms R2 is indeed a router now:
*Mar 1 00:19:26.107: IPV6: source 2001:DB8:0:23::3 (FastEthernet0/1) *Mar 1 00:19:26.107: dest 2001:DB8:0:12::1 (FastEthernet0/0) *Mar 1 00:19:26.107: traffic class 0, flow 0x0, len 100+14, prot 58, hops 63, forwarding
As a footnote, IPv4 can also be toggled on and off with
no ip routing; great for pranking your coworkers, especially considering that
debug ip packet (the IPv4 packet debug) won't offer any clues.
Posted in IPv6
April 9, 2010 at 5:55 a.m. UTC
happened to me as well, but with ipv4. In these cases there will be no routing table, so i usually execute the "show ip route" to see whether "ip routing" is enabled or not.
April 9, 2010 at 6:04 a.m. UTC
good troubleshooting :)
April 9, 2010 at 6:41 a.m. UTC
Great footnote, this will keep my coworker happy and sharp :p
April 9, 2010 at 9:49 a.m. UTC
Nice. I have actually seen 'no ip routing' used deliberately in devices which are intended to behave as pure layer-2 switches, or as hosts (e.g. voice gateways). It's useful because it makes the output of 'show ip route' very different, making it clear that you're working on a layer-2 device.
April 9, 2010 at 9:59 a.m. UTC
Nice one, that's the kind of troubleshooting you will remember forever...
I just recalled my first L3 switch installation at CCNA times years ago... I missed the ip routing command for about 1 hour.... (not funny with static routes, no way to find a solution...)
April 9, 2010 at 11:03 a.m. UTC
I've gotten stuck on the same thing. :) I'm not sure how good the practice is, but I will use the
ipv6 unicast routing command on the router pointed to the IPv6 internet in my lab to "turn IPv6 on and off".
April 9, 2010 at 11:55 a.m. UTC
Stretch, if that is the case then how did you configure the R2 interfaces with IPv6 addresses without turning on IPv6 first? From what I remember the router does not allow you to do this without implementing the "ipv6 unicast-routing" first.
April 9, 2010 at 12:04 p.m. UTC
My mistake, it does allow you to address it, how stupid is that?!
April 9, 2010 at 9:23 p.m. UTC
Back in the day not having ip routing enabled was a frequent gotcha.
April 9, 2010 at 10:30 p.m. UTC
@Evan: Remember, just because it may not be an IPv6 router doesn't mean it can't be an IPv6 host (e.g. for administrative access).
April 10, 2010 at 3:14 a.m. UTC
Nice write up Stretch. I actually just completed a lab earlier today on your lab involving the command ipv6 unicast-routing. I'm getting ready to take the BSCI.
April 10, 2010 at 12:00 p.m. UTC
April 12, 2010 at 5:25 p.m. UTC
C'est ne pas un router.
April 18, 2010 at 5:30 a.m. UTC
Very good,thanks for share it!:-)
April 21, 2010 at 1:37 p.m. UTC
This must rank up there with forgetting to "no shut" an interface...
April 21, 2010 at 1:41 p.m. UTC
Additional IPv6 fun fact: if you're planning to enable IPv6 CEF, IPv4 CEF must be enabled first.
August 28, 2010 at 4:00 a.m. UTC
i was doing my uni assignment and stuck for hours to figure out how to troubleshoot that bloody "not a router?" debug message...
Funny thing is there is no info available on Google search. luckily i bumped into your life saving post here..lol
It was really worth posting it here, even though its a simple silly error (especially for n00b like me).
January 20, 2012 at 11:59 p.m. UTC
You just saved my day!!!!! My goodness...And there shall be light!!
July 23, 2012 at 2:35 a.m. UTC
Great post, i was hitting this too!!
October 12, 2012 at 8:29 a.m. UTC
Just got the same problem, thanks for this post!!
October 22, 2013 at 8:36 p.m. UTC
Thanx! This helped me a lot while I got stucked in NAT-PT lab
November 26, 2013 at 5:51 a.m. UTC
Thanks for the post! It's straight forward and very helpful.
December 22, 2014 at 7:06 a.m. UTC
you saved my time :)