Val:~$ whoami

I am Val Glinskiy, network engineer specializing in data center networks. TIME magazine selected me as Person of the Year in 2006.

Search This Blog

Monday, November 08, 2010

OSPFv3-EIGRPv6 redistribution. Strange "include-connected" behavior.

I've been practicing IPv6 and notice strange thing with "include-connected" option when redistributing between EIGRPv6 and OSPFv3. First, short preamble. In IPv4 redistribution, when source protocol runs on connected network, this network is automatically included in redistribution in destination protocol. Apparently, this is not the case in IPv6. You have to include connected network explicitly. Here is my network:

All routers run IOS 12.4(22)T
R2 and R3 are doing redistribution:

R2#sho run | sec ipv6 router
ipv6 router ospf 11
log-adjacency-changes
redistribute rip RIPng include-connected
ipv6 router rip RIPng
redistribute ospf 11 metric 5 include-connected


R3#sho run | sec ipv6 router
ipv6 router eigrp 1
no shutdown
default-metric 1000000 1 255 1 1500
redistribute ospf 11 include-connected
ipv6 router ospf 11
log-adjacency-changes
default-metric 30
redistribute eigrp 1 include-connected

Notice "include-connected" in redistribute command. Now, let's see what routing table looks like on R1 and R4:

R4>sho ipv6 route
EX 2000:1::/64 [170/3072]
via FE80::21E:7AFF:FE94:117, GigabitEthernet0/3
EX 2000:2::/64 [170/3072]
via FE80::21E:7AFF:FE94:117, GigabitEthernet0/3
C 2000:4::/64 [0/0]
via Loopback10, directly connected
L 2000:4::1/128 [0/0]
via Loopback10, receive
EX 2001:1::/64 [170/3072]
via FE80::21E:7AFF:FE94:117, GigabitEthernet0/3
C 2001:3::/64 [0/0]
via GigabitEthernet0/3, directly connected
L 2001:3::2/128 [0/0]
via GigabitEthernet0/3, receive
L FF00::/8 [0/0]
via Null0, receive


R1>1>sho ipv6 route
C 2000:1::/64 [0/0]
via Loopback10, directly connected
L 2000:1::1/128 [0/0]
via Loopback10, receive
R 2000:2::/64 [120/2]
via FE80::21E:7AFF:FE75:521A, GigabitEthernet0/2
R 2000:3::1/128 [120/6]
via FE80::21E:7AFF:FE75:521A, GigabitEthernet0/2
R 2000:4::/64 [120/6]
via FE80::21E:7AFF:FE75:521A, GigabitEthernet0/2
C 2001:1::/64 [0/0]
via GigabitEthernet0/2, directly connected
L 2001:1::1/128 [0/0]
via GigabitEthernet0/2, receive
R 2001:2::/64 [120/6]
via FE80::21E:7AFF:FE75:521A, GigabitEthernet0/2
L FF00::/8 [0/0]
via Null0, receive



R1 does not have 2001:3::/64 network and R4 is missing 2001:2::/64.
2001:3::/64 is EIGRPv6 network and is supposed to be redistributed into OSPFv3 and then into RIPng.
2001:2::/64 is OSPFv3 network and should be redistributed into EIGRPv6.
So, even though "include-connected" is added to "redistribute ospf" and "redistribute eigrp" it does not seem to work. At the same time, on R2, RIPng redistribute connected OSPF networks.
Let's add explicit "redistribute connected" statements on R3.

R3(config)#ipv6 router eigrp 1
R3(config-rtr)#redistribute connected
R3(config-rtr)#ipv6 router ospf 11
R3(config-rtr)#redistribute connected
R3(config-rtr)#end

Let's check R1 and R4 again:
R1>sho ipv6 route
C 2000:1::/64 [0/0]
via Loopback10, directly connected
L 2000:1::1/128 [0/0]
via Loopback10, receive
R 2000:2::/64 [120/2]
via FE80::21E:7AFF:FE75:521A, GigabitEthernet0/2
R 2000:3::1/128 [120/6]
via FE80::21E:7AFF:FE75:521A, GigabitEthernet0/2
R 2000:4::/64 [120/6]
via FE80::21E:7AFF:FE75:521A, GigabitEthernet0/2
C 2001:1::/64 [0/0]
via GigabitEthernet0/2, directly connected
L 2001:1::1/128 [0/0]
via GigabitEthernet0/2, receive
R 2001:2::/64 [120/6]
via FE80::21E:7AFF:FE75:521A, GigabitEthernet0/2
R 2001:3::/64 [120/6]
via FE80::21E:7AFF:FE75:521A, GigabitEthernet0/2

L FF00::/8 [0/0]
via Null0, receive

R4>show ipv6 route
EX 2000:1::/64 [170/3072]
via FE80::21E:7AFF:FE94:117, GigabitEthernet0/3
EX 2000:2::/64 [170/3072]
via FE80::21E:7AFF:FE94:117, GigabitEthernet0/3
EX 2000:3::/64 [170/3072]
via FE80::21E:7AFF:FE94:117, GigabitEthernet0/3
C 2000:4::/64 [0/0]
via Loopback10, directly connected
L 2000:4::1/128 [0/0]
via Loopback10, receive
EX 2001:1::/64 [170/3072]
via FE80::21E:7AFF:FE94:117, GigabitEthernet0/3
EX 2001:2::/64 [170/3072]
via FE80::21E:7AFF:FE94:117, GigabitEthernet0/3

C 2001:3::/64 [0/0]
via GigabitEthernet0/3, directly connected
L 2001:3::2/128 [0/0]
via GigabitEthernet0/3, receive
L FF00::/8 [0/0]
via Null0, receive

It works now. To make sure:

R4>traceroute 2000:1::1

Type escape sequence to abort.
Tracing the route to 2000:1::1

1 2001:3::1 0 msec 0 msec 0 msec
2 2001:2::1 0 msec 4 msec 0 msec
3 2001:1::1 0 msec 0 msec 0 msec
So far I was not able to find if this is intended behavior.

7 comments:

  1. Hi Val,
    Great blog post! I had the exact same issue and resorted to google which led me here. I know it's an old post but I just wanted to ask if you have any updates in regards to whether this is intended behaviour or not?

    thank you,

    ReplyDelete
  2. Nope, I was not able to find out

    ReplyDelete
  3. I'm running version 12.2(33)SRC6 on a 7200 router and had the same issue. Weird behaviour, but fixed it when running redistribute connected

    ReplyDelete
  4. hmm, redistribute connected works. Thanks

    ReplyDelete
  5. Hi, Val.
    I've wrote command "redistribute connected" in ospf network to redistribute eigrp.
    But there was an error "% Only classful networks will be redistributed".
    Whats wrong?

    Thanks.

    ReplyDelete
    Replies
    1. You need to do "redistribute connected subnets" to get rid to this error message if you run IPv4

      Delete
    2. My network runs in IPv6.
      In the EIGRP router, there was not external route (D EX) from OSPF.
      But in the OSPF router, there was external router (O E2) from EIGRP.

      Delete