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:
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 126.96.36.199 no shutdown
R2#show run | section ipv6 router ipv6 router eigrp 12 router-id 188.8.131.52 no shutdown redistribute ospf 1 metric 1500 100 255 1 1500 ipv6 router ospf 1 router-id 184.108.40.206 log-adjacency-changes redistribute eigrp 12
R3#show run | section ipv6 router ipv6 router ospf 1 router-id 220.127.116.11 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:
So we can use the “include connected” as opposed to the following command and it will have the same affect then right?
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.
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.
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.
Hi, I’d like to see (maybe I’m not finding it), an IPv6 redistribution example between BGP and IGPs.