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_R2_R3.png

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.

About the Author

Jeremy Stretch is a network engineer living in the Raleigh-Durham, North Carolina area. He is known for his blog and cheat sheets here at Packet Life. You can reach him by email or follow him on Twitter.

Posted in IPv6

Comments


Didzis Ozolins (guest)
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.


shivlu
April 9, 2010 at 6:04 a.m. UTC

good troubleshooting :)


RaSta
April 9, 2010 at 6:41 a.m. UTC

Great footnote, this will keep my coworker happy and sharp :p


Murali
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.


Marco Rizzi (guest)
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...)

:-)

Marco


gradgrind
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".


Evan
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.


Evan
April 9, 2010 at 12:04 p.m. UTC

My mistake, it does allow you to address it, how stupid is that?!


pompeychimes
April 9, 2010 at 9:23 p.m. UTC

Back in the day not having ip routing enabled was a frequent gotcha.


stretch
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).


UnderratedKing
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.


pradeep (guest)
April 10, 2010 at 12:00 p.m. UTC

Hi Stretch,

Nice troubleshooting.


Jim (guest)
April 12, 2010 at 5:25 p.m. UTC

C'est ne pas un router.


hp_sky
April 18, 2010 at 5:30 a.m. UTC

Very good,thanks for share it!:-)


bob (guest)
April 21, 2010 at 1:37 p.m. UTC

This must rank up there with forgetting to "no shut" an interface...


Philip (guest)
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.


OH BOY (guest)
August 28, 2010 at 4:00 a.m. UTC

Thanks Strech

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).

Thanks mate.


ciscom (guest)
January 20, 2012 at 11:59 p.m. UTC

You just saved my day!!!!! My goodness...And there shall be light!!


gnarly_packet (guest)
July 23, 2012 at 2:35 a.m. UTC

Great post, i was hitting this too!!


Alex (guest)
October 12, 2012 at 8:29 a.m. UTC

Just got the same problem, thanks for this post!!


Daro (guest)
October 22, 2013 at 8:36 p.m. UTC

Thanx! This helped me a lot while I got stucked in NAT-PT lab


Ashutosh (guest)
November 26, 2013 at 5:51 a.m. UTC

Thanks for the post! It's straight forward and very helpful.


A guest
December 22, 2014 at 7:06 a.m. UTC

you saved my time :)

Comments have closed for this article due to its age.