Troubleshooting IPv6 Redistribution

Redistribution for IPv6 is pretty similar to IPv4, the same rules and issues apply here. There is however one issue that only applies to IPv6 redistribution which I will show you here. This is the topology I will use:

OSPFv3 EIGRP IPv6 Redistribution Example Topology

R1 and R2 are configured to use EIGRP, R2 and R3 use OSPF. R2 is redistributing between the two routing protocols. The problem is that R1 is unable to reach 2001:0DB8:23:23::/64 and R3 is unable to reach 2001:0DB8:12:12::/64. Everything else is reachable…

Let’s check some routing tables, see what we are dealing with:

R1#show ipv6 route eigrp

EX  2001:DB8:3:3::3/128 [170/1757696]
     via FE80::C002:17FF:FE28:0, FastEthernet0/0
R2#show ipv6 route

D   2001:DB8:1:1::1/128 [90/409600]
     via FE80::C001:18FF:FEB0:0, FastEthernet0/0
O   2001:DB8:3:3::3/128 [110/10]
     via FE80::C003:FFF:FE10:0, FastEthernet0/1
R3#show ipv6 route ospf

OE2  2001:DB8:1:1::1/128 [110/20]
     via FE80::C002:17FF:FE28:1, FastEthernet0/0

Looking at these routing tables, we can see that R1 knows how to reach the loopback of R3 and vice versa. Since we have something in the routing table, we know that the EIGRP and OSPF neighbor adjacencies are working. There are a couple of reasons why we could miss something in the routing table:

  • Networks are not configured: Keep in mind that IPv6 routing protocols use their link-local IPv6 addresses for the neighbor adjacency.
  • Filtering: Route filtering could filter some of the prefixes.
  • Redistribution: Configuration errors with redistribution could cause issues.

Let’s check if those two networks are configured correctly, you could check the addresses or do a quick ping:

R2#show ipv6 interface brief
FastEthernet0/0            [up/up]
    FE80::C002:17FF:FE28:0
    2001:DB8:12:12::2
FastEthernet0/1            [up/up]
    FE80::C002:17FF:FE28:1
    2001:DB8:23:23::2
R2#ping 2001:0DB8:12:12::1

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:12:12::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 8/15/28 ms
R2#ping 2001:0DB8:23:23::3

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:23:23::3, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 4/13/28 ms

It seems that these networks are configured and the pings are working. What about filtering? Normally I’d like to use specific show commands but in this case, checking the EIGRP and OSPF configs will be easier:

R1#show run | section ipv6 router
ipv6 router eigrp 12
 router-id 1.1.1.1
 no shutdown
R2#show run | section ipv6 router
ipv6 router eigrp 12
 router-id 2.2.2.2
 no shutdown
 redistribute ospf 1 metric 1500 100 255 1 1500
ipv6 router ospf 1
 router-id 2.2.2.2
 log-adjacency-changes
 redistribute eigrp 12
R3#show run | section ipv6 router
ipv6 router ospf 1
 router-id 3.3.3.3
 log-adjacency-changes

These configurations are pretty straight-forward. There are no filters and no route-maps attached to the redistribution config, everything is looking good. So what’s the issue here?

Redistribution for IPv6 works a little bit different compared to IPv4. When you redistribute with IPv4, all networks that are advertised in your routing protocols will be redistributed…that includes the directly connected networks.

With IPv6, networks that are directly connected and advertised in your routing protocols are NOT redistributed by default…this is something we have to enable ourselves. Let me show you what I mean:

We're Sorry, Full Content Access is for Members Only...

If you like to keep on reading, Become a Member Now!

  • Learn any CCNA, CCNP and CCIE R&S Topic. Explained As Simple As Possible.
  • Try for Just $1. The Best Dollar You’ve Ever Spent on Your Cisco Career!
  • Full Access to our 804 Lessons. More Lessons Added Every Week!
  • Content created by Rene Molenaar (CCIE #41726)
477 Sign Ups in the last 30 days
satisfaction-guaranteed

  • 100% Satisfaction Guaranteed!
  • You may cancel your monthly membership at any time.
  • No Questions Asked!

Tags:


Forum Replies

  1. Hello,

    So we can use the “include connected” as opposed to the following command and it will have the same affect then right?

    ipv6 router ospf 6
     log-adjacency-changes
     redistribute rip RIPNG metric 1
    ipv6 router rip RIPNG
     redistribute connected metric 1<--------
     redistribute ospf 6 metric 1
    

    Thanks

  2. Hi Fabian,

    That’s right. The “redistribute connected” will redistribute any directly connected interfaces into the routing protocol. It will also redistribute directly connected interfaces that are not advertised in any IPv6 routing protocol.

    Rene

  3. Hi Rene,

    Thanks for reply, I found something interesting though. When setting up redistribution i didn’t have to add a metric command under ospf 6 and it worked fine, does this mean OSPFv3 adds a metric already? Because with no metric command under RIPNG, no routes will get redistributed.

    ipv6 router ospf 6
     log-adjacency-changes
     redistribute rip RIPNG include-connected <------
    !
    ipv6 router rip RIPNG
     redistribute ospf 6 metric 1 include-connected
    

    Thanks

  4. Hi Fabian,
    What you have discovered is a difference in how those routing protocols deal with redistribution in general, as opposed to IPv6 specifically. It is interesting that Link-State protocols don’t require specifying a metric when redistributing into them. For example, OSPF assigns a default metric of “20” in this case, while IS-IS assigns a metric of zero.

    Distance Vector protocols, however, like RIP and EIGRP require you to set some kind of seed metric, or they won’t be advertised.

  5. Hi, I’d like to see (maybe I’m not finding it), an IPv6 redistribution example between BGP and IGPs.

1 more reply! Ask a question or join the discussion by visiting our Community Forum