Friday, December 14, 2018

Configuring Redistribution Between EIGRP for IPv6 and OSPFv3

Route redistribution requires at least one router to do the following:

* Use at least one working physical link with each routing domain.

* A working routing protocol configuration for each routing domain.

* Additional redistribution configuration for each routing protocol, specifically the redistribute command, which tells the routing protocol to take the routes learned by another source of routing information and to then advertise those routes.

The first two steps do not require any new knowledge or commands, but the third step represents the core of the redistribution logic and requires some additional background information.


R1#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
R1(config)#interface loop 0
R1(config-if)#
*Jul  6 09:41:03.291: %LINEPROTO-5-UPDOWN: Line protocol on Interface Loopback0, changed state to up
R1(config-if)#ipv6 address 2001:db8:a:0::1/64
R1(config-if)#                              
R1(config-if)#interface loop 1              
R1(config-if)#
*Jul  6 09:42:02.867: %LINEPROTO-5-UPDOWN: Line protocol on Interface Loopback1, changed state to up
R1(config-if)#ipv6 address 2001:db8:a:1::1/64
R1(config-if)#
R1(config-if)#interface loop 2              
R1(config-if)#
*Jul  6 09:42:13.411: %LINEPROTO-5-UPDOWN: Line protocol on Interface Loopback2, changed state to up
R1(config-if)#ipv6 address 2001:db8:a:2::1/64
R1(config-if)#
R1(config-if)#interface loop 3              
R1(config-if)#
*Jul  6 09:42:24.227: %LINEPROTO-5-UPDOWN: Line protocol on Interface Loopback3, changed state to up
R1(config-if)#ipv6 address 2001:db8:a:3::1/64
R1(config-if)#
R1(config-if)#interface serial 2/0
R1(config-if)#ipv6 address 2001:db8:cafe:1::1/64
R1(config-if)#no shut
R1(config-if)#
*Jul  6 09:43:01.227: %LINK-3-UPDOWN: Interface Serial2/0, changed state to up
R1(config-if)#
*Jul  6 09:43:02.239: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial2/0, changed state to up
R1(config-if)#end
R1#


R2#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
R2(config)#interface loop 0
R2(config-if)#
*Jul  6 09:43:50.331: %LINEPROTO-5-UPDOWN: Line protocol on Interface Loopback0, changed state to up
R2(config-if)#ipv6 address 2001:db8:b:0::1/64
R2(config-if)#
R2(config-if)#interface serial 2/0
R2(config-if)#ipv6 address 2001:db8:cafe:1::2/64
R2(config-if)#no shut
R2(config-if)#
*Jul  6 09:44:35.359: %LINK-3-UPDOWN: Interface Serial2/0, changed state to up
R2(config-if)#
*Jul  6 09:44:36.371: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial2/0, changed state to up
R2(config-if)#
R2(config-if)#do ping 2001:db8:cafe:1::1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:CAFE:1::1, timeout is 2 seconds:
.!!!!
Success rate is 80 percent (4/5), round-trip min/avg/max = 32/37/40 ms
R2(config-if)#
R2(config-if)#interface serial 2/1
R2(config-if)#ipv6 address 2001:db8:cafe:2::1/64
R2(config-if)#no shut
R2(config-if)#
*Jul  6 09:45:18.551: %LINK-3-UPDOWN: Interface Serial2/1, changed state to up
R2(config-if)#
*Jul  6 09:45:19.563: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial2/1, changed state to up
R2(config-if)#end
R2#


R3#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
R3(config)#interface loop 0
R3(config-if)# 
*Jul  6 09:47:01.591: %LINEPROTO-5-UPDOWN: Line protocol on Interface Loopback0, changed state to up
R3(config-if)#ipv6 address 2001:db8:c:0::1/64
R3(config-if)#
R3(config-if)#interface loop 1              
R3(config-if)#
*Jul  6 09:47:26.715: %LINEPROTO-5-UPDOWN: Line protocol on Interface Loopback1, changed state to up
R3(config-if)#ipv6 address 2001:db8:c:1::1/64
R3(config-if)#
R3(config-if)#interface loop 2              
R3(config-if)#ipv6 address 2001:db8:c:::1/64
*Jul  6 09:47:38.355: %LINEPROTO-5-UPDOWN: Line protocol on Interface Loopback2, changed state to up
R3(config-if)#ipv6 address 2001:db8:c:2::1/64
R3(config-if)#
R3(config-if)#interface loop 3              
R3(config-if)#                              
*Jul  6 09:47:46.807: %LINEPROTO-5-UPDOWN: Line protocol on Interface Loopback3, changed state to up
R3(config-if)#ipv6 address 2001:db8:c:3::1/64
R3(config-if)#
R3(config-if)#interface loop 4              
R3(config-if)#
*Jul  6 09:48:36.747: %LINEPROTO-5-UPDOWN: Line protocol on Interface Loopback4, changed state to up
R3(config-if)#ipv6 address 2001:db8:d:0::1/64
R3(config-if)#
R3(config-if)#interface loop 5              
R3(config-if)#
*Jul  6 09:48:54.215: %LINEPROTO-5-UPDOWN: Line protocol on Interface Loopback5, changed state to up
R3(config-if)#ipv6 address 2001:db8:d:1::1/64
R3(config-if)#
R3(config-if)#interface loop 6              
R3(config-if)#
*Jul  6 09:49:17.603: %LINEPROTO-5-UPDOWN: Line protocol on Interface Loopback6, changed state to up
R3(config-if)#ipv6 address 2001:db8:d:2::1/64
R3(config-if)#
R3(config-if)#interface loop 7              
R3(config-if)#               
*Jul  6 09:49:29.175: %LINEPROTO-5-UPDOWN: Line protocol on Interface Loopback7, changed state to up
R3(config-if)#ipv6 address 2001:db8:d:3::1/64
R3(config-if)#
R3(config-if)#interface serial 2/1
R3(config-if)#ipv6 address 2001:db8:cafe:2::2/64
R3(config-if)#no shut
R3(config-if)#
*Jul  6 09:50:01.407: %LINK-3-UPDOWN: Interface Serial2/1, changed state to up
R3(config-if)#
*Jul  6 09:50:02.419: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial2/1, changed state to up
R3(config-if)#do ping 2001:db8:cafe:2::1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:CAFE:2::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 8/15/20 ms
R3(config-if)#end
R3#


R1#show ipv6 interface brief
FastEthernet0/0        [administratively down/down]
    unassigned
FastEthernet1/0        [administratively down/down]
    unassigned
FastEthernet1/1        [administratively down/down]
    unassigned
Serial2/0              [up/up]
    FE80::C801:15FF:FEB0:0
    2001:DB8:CAFE:1::1
Serial2/1              [administratively down/down]
    unassigned
Serial2/2              [administratively down/down]
    unassigned
Serial2/3              [administratively down/down]
    unassigned
Loopback0              [up/up]
    FE80::C801:15FF:FEB0:0
    2001:DB8:A::1
Loopback1              [up/up]
    FE80::C801:15FF:FEB0:0
    2001:DB8:A:1::1
Loopback2              [up/up]
    FE80::C801:15FF:FEB0:0
    2001:DB8:A:2::1
Loopback3              [up/up]
    FE80::C801:15FF:FEB0:0
    2001:DB8:A:3::1


R3#show ipv6 interface brief
FastEthernet0/0        [administratively down/down]
    unassigned
FastEthernet1/0        [administratively down/down]
    unassigned
FastEthernet1/1        [administratively down/down]
    unassigned
Serial2/0              [administratively down/down]
    unassigned
Serial2/1              [up/up]
    FE80::C803:1BFF:FE10:0
    2001:DB8:CAFE:2::2
Serial2/2              [administratively down/down]
    unassigned
Serial2/3              [administratively down/down]
    unassigned
Loopback0              [up/up]
    FE80::C803:1BFF:FE10:0
    2001:DB8:C::1
Loopback1              [up/up]
    FE80::C803:1BFF:FE10:0
    2001:DB8:C:1::1
Loopback2              [up/up]
    FE80::C803:1BFF:FE10:0
    2001:DB8:C:2::1
Loopback3              [up/up]
    FE80::C803:1BFF:FE10:0
    2001:DB8:C:3::1
Loopback4              [up/up]
    FE80::C803:1BFF:FE10:0
    2001:DB8:D::1
Loopback5              [up/up]
    FE80::C803:1BFF:FE10:0
    2001:DB8:D:1::1
Loopback6              [up/up]
    FE80::C803:1BFF:FE10:0
    2001:DB8:D:2::1
Loopback7              [up/up]
    FE80::C803:1BFF:FE10:0
    2001:DB8:D:3::1


R2#show ipv6 interface brief
FastEthernet0/0        [administratively down/down]
    unassigned
FastEthernet1/0        [administratively down/down]
    unassigned
FastEthernet1/1        [administratively down/down]
    unassigned
Serial2/0              [up/up]
    FE80::C802:16FF:FECC:0
    2001:DB8:CAFE:1::2
Serial2/1              [up/up]
    FE80::C802:16FF:FECC:0
    2001:DB8:CAFE:2::1
Serial2/2              [administratively down/down]
    unassigned
Serial2/3              [administratively down/down]
    unassigned
Loopback0              [up/up]
    FE80::C802:16FF:FECC:0
    2001:DB8:B::1

R1#tclsh
R1(tcl)#foreach address {
+>(tcl)#2001:db8:cafe:1::1
+>(tcl)#2001:db8:cafe:1::2
+>(tcl)#2001:db8:a:0::1
+>(tcl)#2001:db8:a:1::1
+>(tcl)#2001:db8:a:2::1
+>(tcl)#2001:db8:a:3::1
+>(tcl)#2001:db8:b:0::1
+>(tcl)#2001:db8:cafe:2::1
+>(tcl)#2001:db8:cafe:2::2
+>(tcl)#2001:db8:c:0::1
+>(tcl)#2001:db8:c:1::1
+>(tcl)#2001:db8:c:2::1
+>(tcl)#2001:db8:c:3::1
+>(tcl)#2001:db8:d:0::1
+>(tcl)#2001:db8:d:1::1
+>(tcl)#2001:db8:d:2::1
+>(tcl)#2001:db8:d:3::1
+>(tcl)#} { ping $address }
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:CAFE:1::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/1 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:CAFE:1::2, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 12/16/20 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:A::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/1 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:A:1::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/4 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:A:2::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/1 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:A:3::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/4 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:B::1, timeout is 2 seconds:   // NO ROUTE TO OSPF DOMAIN

% No valid route for destination
Success rate is 0 percent (0/1)
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:CAFE:2::1, timeout is 2 seconds:

% No valid route for destination
Success rate is 0 percent (0/1)
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:CAFE:2::2, timeout is 2 seconds:

% No valid route for destination
Success rate is 0 percent (0/1)
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:C::1, timeout is 2 seconds:

% No valid route for destination
Success rate is 0 percent (0/1)
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:C:1::1, timeout is 2 seconds:

% No valid route for destination
Success rate is 0 percent (0/1)
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:C:2::1, timeout is 2 seconds:

% No valid route for destination
Success rate is 0 percent (0/1)
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:C:3::1, timeout is 2 seconds:

% No valid route for destination
Success rate is 0 percent (0/1)
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:D::1, timeout is 2 seconds:

% No valid route for destination
Success rate is 0 percent (0/1)
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:D:1::1, timeout is 2 seconds:

% No valid route for destination
Success rate is 0 percent (0/1)
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:D:2::1, timeout is 2 seconds:

% No valid route for destination
Success rate is 0 percent (0/1)
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:D:3::1, timeout is 2 seconds:

% No valid route for destination
Success rate is 0 percent (0/1)


R1#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
R1(config)#ipv6 unicast-routing
R1(config)#ipv6 router eigrp 1
R1(config-rtr)#eigrp router-id 1.1.1.1    // EIGRP FOR IPv6 REQUIRES 32-BIT ROUTER-ID IF THERE ARE NO ACTIVE IPv4 ADDRESSES
R1(config-rtr)#no shutdown      // PRIOR TO IOS 15.2, EIGRP FOR IPv6 IS SHUTDOWN BY DEFAULT
R1(config-rtr)#
R1(config-rtr)#interface range loop 0 - 3
R1(config-if-range)#ipv6 eigrp 1
R1(config-if-range)#
R1(config-if-range)#interface serial 2/0
R1(config-if)#ipv6 eigrp 1       
R1(config-if)#end
R1#
*Jul  6 10:48:41.483: %DUAL-5-NBRCHANGE: EIGRP-IPv6 1: Neighbor FE80::C802:16FF:FECC:0 (Serial2/0) is up: new adjacency


R2#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
R2(config)#ipv6 unicast
R2(config)#ipv6 router eigrp 1
R2(config-rtr)#eigrp router-id 2.2.2.2
R2(config-rtr)#no shutdown
R2(config-rtr)#
R2(config-rtr)#interface loop 0
R2(config-if)#ipv6 eigrp 1
R2(config-if)#
R2(config-if)#interface serial 2/0
R2(config-if)#ipv6 eigrp 1       
R2(config-if)#
*Jul  6 10:48:42.243: %DUAL-5-NBRCHANGE: EIGRP-IPv6 1: Neighbor FE80::C801:15FF:FEB0:0 (Serial2/0) is up: new adjacency
R2(config-if)#end
R2#
*Jul  6 10:48:51.503: %SYS-5-CONFIG_I: Configured from console by console
R2#
R2#show ipv6 eigrp neighbors
EIGRP-IPv6 Neighbors for AS(1)
H   Address                 Interface              Hold Uptime   SRTT   RTO  Q  Seq
                                                   (sec)         (ms)       Cnt Num
0   Link-local address:     Se2/0                    12 00:00:30   24   144  0  3
    FE80::C801:15FF:FEB0:0
R2#
R2#show ipv6 route eigrp
IPv6 Routing Table - default - 11 entries
Codes: C - Connected, L - Local, S - Static, U - Per-user Static route
       B - BGP, HA - Home Agent, MR - Mobile Router, R - RIP
       H - NHRP, I1 - ISIS L1, I2 - ISIS L2, IA - ISIS interarea
       IS - ISIS summary, D - EIGRP, EX - EIGRP external, ND - ND Default
       NDp - ND Prefix, DCE - Destination, NDr - Redirect, O - OSPF Intra
       OI - OSPF Inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2, ON1 - OSPF NSSA ext 1
       ON2 - OSPF NSSA ext 2, l - LISP
D   2001:DB8:A::/64 [90/2297856]
     via FE80::C801:15FF:FEB0:0, Serial2/0
D   2001:DB8:A:1::/64 [90/2297856]
     via FE80::C801:15FF:FEB0:0, Serial2/0
D   2001:DB8:A:2::/64 [90/2297856]
     via FE80::C801:15FF:FEB0:0, Serial2/0
D   2001:DB8:A:3::/64 [90/2297856]
     via FE80::C801:15FF:FEB0:0, Serial2/0


R1#tclsh
R1(tcl)#foreach address {
+>(tcl)#2001:db8:cafe:1::1
+>(tcl)#2001:db8:cafe:1::2
+>(tcl)#2001:db8:a:0::1
+>(tcl)#2001:db8:a:1::1
+>(tcl)#2001:db8:a:2::1
+>(tcl)#2001:db8:a:3::1
+>(tcl)#} { ping $address }
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:CAFE:1::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/4 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:CAFE:1::2, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 12/16/20 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:A::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/1 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:A:1::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/4 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:A:2::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/4 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:A:3::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/4 ms


R1#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
R1(config)#interface serial 2/0
R1(config-if)#ipv6 summary-address ?
  eigrp  Enhanced Interior Gateway Routing Protocol (EIGRP)

R1(config-if)#ipv6 summary-address eigrp ?
  <1-65535>  AS number

R1(config-if)#ipv6 summary-address eigrp 1 ?
  X:X:X:X::X/<0-128>  IPv6 prefix

R1(config-if)#ipv6 summary-address eigrp 1 2001:db8:a::/62    // SUMMARIZE EIGRP IPv6 ROUTES TO REDUCE ROUTING TABLE AND MAKE ROUTING UPDATE MORE EFFICIENT
R1(config-if)#
*Jul  6 10:51:32.223: %DUAL-5-NBRCHANGE: EIGRP-IPv6 1: Neighbor FE80::C802:16FF:FECC:0 (Serial2/0) is resync: summary configured


R2#show ipv6 route eigrp
IPv6 Routing Table - default - 8 entries
Codes: C - Connected, L - Local, S - Static, U - Per-user Static route
       B - BGP, HA - Home Agent, MR - Mobile Router, R - RIP
       H - NHRP, I1 - ISIS L1, I2 - ISIS L2, IA - ISIS interarea
       IS - ISIS summary, D - EIGRP, EX - EIGRP external, ND - ND Default
       NDp - ND Prefix, DCE - Destination, NDr - Redirect, O - OSPF Intra
       OI - OSPF Inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2, ON1 - OSPF NSSA ext 1
       ON2 - OSPF NSSA ext 2, l - LISP
D   2001:DB8:A::/62 [90/2297856]
     via FE80::C801:15FF:FEB0:0, Serial2/0


R1#tclsh     // VERIFY R1 CAN STILL REACH EIGRP IPv6 ROUTES
R1(tcl)#foreach address {
+>(tcl)#2001:db8:cafe:1::1
+>(tcl)#2001:db8:cafe:1::2
+>(tcl)#2001:db8:a:0::1
+>(tcl)#2001:db8:a:1::1
+>(tcl)#2001:db8:a:2::1
+>(tcl)#2001:db8:a:3::1
+>(tcl)#} { ping $address }
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:CAFE:1::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/4 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:CAFE:1::2, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 8/15/20 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:A::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/1 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:A:1::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/1 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:A:2::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/4 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:A:3::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/1 ms


R2#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
R2(config)#ipv6 unicast
R2(config)#router o?   
odr  ospf  ospfv3 

R2(config)#router ospfv3 ?
  <1-65535>  Process ID

R2(config)#router ospfv3 1      // COMBINES OSPF CONFIG FOR IPv4 AND IPv6 ADDRESS FAMILIES (AF)
R2(config-router)#address-family ?
  ipv4  Address family
  ipv6  Address family

R2(config-router)#address-family ipv6 ?
  unicast  Address Family modifier

R2(config-router)#address-family ipv6 unicast
R2(config-router-af)#
*Jul  6 10:54:01.383: %OSPFv3-4-NORTRID: Process OSPFv3-1-IPv6 could not pick a router-id, please configure manually
R2(config-router-af)#router-id 2.2.2.2
R2(config-router-af)#exit-address-family
R2(config-router)#exit
R2(config)#interface loop 0
R2(config-if)#ospfv3 ?
  <1-65535>            Process ID
  authentication       Enable authentication
  cost                 Route cost of this interface
  database-filter      Filter OSPF LSA during synchronization and flooding
  dead-interval        Interval after which a neighbor is declared dead
  demand-circuit       OSPF demand circuit
  encryption           Enable encryption
  flood-reduction      OSPF Flood Reduction
  hello-interval       Time between HELLO packets
  manet                Mobile Adhoc Networking options
  mtu-ignore           Ignores the MTU in DBD packets
  neighbor             OSPF neighbor
  network              Network type
  priority             Router priority
  retransmit-interval  Time between retransmitting lost link state
                       advertisements
  transmit-delay       Link state transmit delay

R2(config-if)#ospfv3 1 ?
  cost                 Route cost of this interface
  database-filter      Filter OSPF LSA during synchronization and flooding
  dead-interval        Interval after which a neighbor is declared dead
  demand-circuit       OSPF demand circuit
  flood-reduction      OSPF Flood Reduction
  hello-interval       Time between HELLO packets
  ipv4                 Specify parameters for IPv4
  ipv6                 Specify parameters for IPv6
  manet                Mobile Adhoc Networking options
  mtu-ignore           Ignores the MTU in DBD packets
  neighbor             OSPF neighbor
  network              Network type
  priority             Router priority
  retransmit-interval  Time between retransmitting lost link state
                       advertisements
  transmit-delay       Link state transmit delay

R2(config-if)#ospfv3 1 ipv6 ?
  area                 Set the OSPF area ID
  cost                 Route cost of this interface
  database-filter      Filter OSPF LSA during synchronization and flooding
  dead-interval        Interval after which a neighbor is declared dead
  demand-circuit       OSPF demand circuit
  flood-reduction      OSPF Flood Reduction
  hello-interval       Time between HELLO packets
  manet                Mobile Adhoc Networking options
  mtu-ignore           Ignores the MTU in DBD packets
  neighbor             OSPF neighbor
  network              Network type
  priority             Router priority
  retransmit-interval  Time between retransmitting lost link state
                       advertisements
  transmit-delay       Link state transmit delay

R2(config-if)#ospfv3 1 ipv6 area ?
  <0-4294967295>  OSPF area ID as a decimal value
  A.B.C.D         OSPF area ID in IP address format

R2(config-if)#ospfv3 1 ipv6 area 0
R2(config-if)#
R2(config-if)#interface serial 2/1
R2(config-if)#ospfv3 1 ipv6 area 0
R2(config-if)#end
R2#
*Jul  6 10:58:31.155: %OSPFv3-5-ADJCHG: Process 1, IPv6, Nbr 3.3.3.3 on Serial2/1 from LOADING to FULL, Loading Done


R3#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
R3(config)#router ospfv3 1
%OSPFv3: IPv6 routing not enabled
R3(config)#ipv6 unicast
R3(config)#router ospfv3 1
R3(config-router)#router-id 3.3.3.3
R3(config-router)#exit
R3(config)#router ospfv3 1 
R3(config-router)#address-family ipv6 unicast
R3(config)#interface range loop 0 - 3
R3(config-if-range)#ospfv3 1 ipv6 area 0      
R3(config-if-range)#
R3(config-if-range)#interface range loop 4 - 7
R3(config-if-range)#ospfv3 1 ipv6 area 20    
R3(config-if-range)#
R3(config-if-range)#interface serial 2/1
R3(config-if)#ospfv3 1 ipv6 area 0     
R3(config-if)#
*Jul  6 10:58:31.019: %OSPFv3-5-ADJCHG: Process 1, IPv6, Nbr 2.2.2.2 on Serial2/1 from LOADING to FULL, Loading Done
R3(config-if)#end
R3#


R2#show ipv6 ospf neighbor

            OSPFv3 Router with ID (2.2.2.2) (Process ID 1)

Neighbor ID     Pri   State           Dead Time   Interface ID    Interface
3.3.3.3           0   FULL/  -        00:00:31    7               Serial2/1
R2#
R2#show ipv6 route ospf
IPv6 Routing Table - default - 16 entries
Codes: C - Connected, L - Local, S - Static, U - Per-user Static route
       B - BGP, HA - Home Agent, MR - Mobile Router, R - RIP
       H - NHRP, I1 - ISIS L1, I2 - ISIS L2, IA - ISIS interarea
       IS - ISIS summary, D - EIGRP, EX - EIGRP external, ND - ND Default
       NDp - ND Prefix, DCE - Destination, NDr - Redirect, O - OSPF Intra
       OI - OSPF Inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2, ON1 - OSPF NSSA ext 1
       ON2 - OSPF NSSA ext 2, l - LISP
O   2001:DB8:C::1/128 [110/64]
     via FE80::C803:1BFF:FE10:0, Serial2/1
O   2001:DB8:C:1::1/128 [110/64]
     via FE80::C803:1BFF:FE10:0, Serial2/1
O   2001:DB8:C:2::1/128 [110/64]
     via FE80::C803:1BFF:FE10:0, Serial2/1
O   2001:DB8:C:3::1/128 [110/64]
     via FE80::C803:1BFF:FE10:0, Serial2/1
OI  2001:DB8:D::1/128 [110/64]
     via FE80::C803:1BFF:FE10:0, Serial2/1
OI  2001:DB8:D:1::1/128 [110/64]
     via FE80::C803:1BFF:FE10:0, Serial2/1
OI  2001:DB8:D:2::1/128 [110/64]
     via FE80::C803:1BFF:FE10:0, Serial2/1
OI  2001:DB8:D:3::1/128 [110/64]
     via FE80::C803:1BFF:FE10:0, Serial2/1


R3#show ipv6 route ospf
IPv6 Routing Table - default - 20 entries
Codes: C - Connected, L - Local, S - Static, U - Per-user Static route
       B - BGP, HA - Home Agent, MR - Mobile Router, R - RIP
       H - NHRP, I1 - ISIS L1, I2 - ISIS L2, IA - ISIS interarea
       IS - ISIS summary, D - EIGRP, EX - EIGRP external, ND - ND Default
       NDp - ND Prefix, DCE - Destination, NDr - Redirect, O - OSPF Intra
       OI - OSPF Inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2, ON1 - OSPF NSSA ext 1
       ON2 - OSPF NSSA ext 2, l - LISP
O   2001:DB8:B::1/128 [110/64]
     via FE80::C802:16FF:FECC:0, Serial2/1


R3#tclsh     // VERIFY R3 CAN REACH OSPFv3 ROUTES
R3(tcl)#foreach address {
+>(tcl)#2001:db8:b:0::1
+>(tcl)#2001:db8:cafe:2::1
+>(tcl)#2001:db8:cafe:2::2
+>(tcl)#2001:db8:c:0::1
+>(tcl)#2001:db8:c:1::1
+>(tcl)#2001:db8:c:2::1
+>(tcl)#2001:db8:c:3::1
+>(tcl)#2001:db8:d:0::1
+>(tcl)#2001:db8:d:1::1
+>(tcl)#2001:db8:d:2::1
+>(tcl)#2001:db8:d:3::1
+>(tcl)#} { ping $address }
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:B::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 12/16/20 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:CAFE:2::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 8/14/20 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:CAFE:2::2, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/4 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:C::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/4 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:C:1::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/4 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:C:2::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/1 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:C:3::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/1 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:D::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/1 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:D:1::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/4 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:D:2::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/4 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:D:3::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/1 ms


R2#conf t       // CONFIGURE MUTUAL REDISTRIBUTION BETWEEN EIGRP FOR IPv6 AND OSPFv3
Enter configuration commands, one per line.  End with CNTL/Z.          
R2(config)#router ospfv3 1
R2(config-router)#address-family ipv6 unicast
R2(config-router-af)#?
Router Address Family configuration commands:
  area                   OSPF area parameters
  auto-cost              Calculate OSPF interface cost according to bandwidth
  bfd                    BFD configuration commands
  compatible             Compatibility list
  default                Set a command to its defaults
  default-information    Distribution of default information
  default-metric         Set metric of redistributed routes
  discard-route          Enable or disable discard-route installation
  distance               Administrative distance
  distribute-list        Filter networks in routing updates
  event-log              Event Logging
  exit-address-family    Exit from Address Family configuration mode
  graceful-restart       Graceful-restart options
  help                   Description of the interactive help system
  interface-id           Source of the interface ID
  log-adjacency-changes  Log changes in adjacency state
  manet                  Specify MANET OSPF parameters
  max-lsa                Maximum number of non self-generated LSAs to accept
  max-metric             Set maximum metric
  maximum-paths          Forward packets over multiple paths
  no                     Negate a command or set its defaults
  passive-interface      Suppress routing updates on an interface
  queue-depth            Hello/Router process queue depth
  redistribute           Redistribute IPv6 prefixes from another routing
                         protocol
  router-id              router-id for this OSPF process
  snmp                   Modify snmp parameters
  summary-prefix         Configure IPv6 summary prefix
  table-map              Map external entry attributes into routing table
  timers                 Adjust routing timers

R2(config-router-af)#redistribute ?
  bgp        Border Gateway Protocol (BGP)
  connected  Connected Routes
  eigrp      Enhanced Interior Gateway Routing Protocol (EIGRP)
  isis       ISO IS-IS
  lisp       Locator ID Separation Protocol (LISP)
  nd         Neighbor Discovery
  ospf       Open Shortest Path First (OSPF)
  rip        IPv6 Routing Information Protocol (RIPv6)
  static     Static Routes

R2(config-router-af)#redistribute eigrp ?
  <1-65535>  Autonomous system number

R2(config-router-af)#redistribute eigrp 1 ?
  include-connected  Include connected       // TO REDISTRIBUTE ROUTES FOR CONNECTED INTERFACES IN IPv6
  metric             Metric for redistributed routes
  metric-type        OSPF/IS-IS exterior metric type for redistributed routes
  route-map          Route map reference
  tag                Set tag for routes redistributed into OSPF
  <cr>

R2(config-router-af)#redistribute eigrp 1 include-connected
R2(config-router-af)#exit
R2(config-router)#exit
R2(config)#ipv6 router eigrp 1
R2(config-rtr)#redistribute ?          
  bgp        Border Gateway Protocol (BGP)
  connected  Connected Routes
  eigrp      Enhanced Interior Gateway Routing Protocol (EIGRP)
  isis       ISO IS-IS
  mobile     Mobile
  nemo       Network Mobility (NEMO)
  ospf       Open Shortest Path First (OSPF)
  rip        IPv6 Routing Information Protocol (RIPv6)
  static     Static Routes

R2(config-rtr)#redistribute ospf ?
  <1-65535>  Process ID

R2(config-rtr)#redistribute ospf 1 ?
  include-connected  Include connected
  match              Redistribution of OSPF routes
  metric             Metric for redistributed routes
  route-map          Route map reference
  <cr>

R2(config-rtr)#redistribute ospf 1 metric ?
  <1-4294967295>  Bandwidth metric in Kbits per second

R2(config-rtr)#redistribute ospf 1 metric 1500 ?
  <0-4294967295>  EIGRP delay metric, in 10 microsecond units

R2(config-rtr)#redistribute ospf 1 metric 1500 100 ?
  <0-255>  EIGRP reliability metric where 255 is 100% reliable

R2(config-rtr)#redistribute ospf 1 metric 1500 100 1 ?
  <1-255>  EIGRP Effective bandwidth metric (Loading) where 255 is 100% loaded

R2(config-rtr)#redistribute ospf 1 metric 1500 100 1 1500 ?
% Unrecognized command
R2(config-rtr)#redistribute ospf 1 metric 1500 100 1 255 ?
  <1-65535>  EIGRP MTU of the path

R2(config-rtr)#redistribute ospf 1 metric 1500 100 1 255 1500 ?
  include-connected  Include connected
  match              Redistribution of OSPF routes
  route-map          Route map reference
  <cr>

R2(config-rtr)#redistribute ospf 1 metric 1500 100 1 255 1500 include-connected       
R2(config-rtr)#end
R2#


R2#show ipv6 protocols     // VERIFY REDISTRIBUTION
IPv6 Routing Protocol is "connected"
IPv6 Routing Protocol is "ND"
IPv6 Routing Protocol is "eigrp 1"
EIGRP-IPv6 Protocol for AS(1)
  Metric weight K1=1, K2=0, K3=1, K4=0, K5=0
  NSF-aware route hold timer is 240
  Router-ID: 2.2.2.2
  Topology : 0 (base)
    Active Timer: 3 min
    Distance: internal 90 external 170
    Maximum path: 16
    Maximum hopcount 100
    Maximum metric variance 1

  Interfaces:
    Loopback0
    Serial2/0
  Redistribution:
    Redistributing protocol ospf 1 with metric 1500 100 1 255 1500 (internal, external 1 & 2, nssa-external 1 & 2) include-connected
IPv6 Routing Protocol is "ospf 1"
  Router ID 2.2.2.2
  Autonomous system boundary router
  Number of areas: 1 normal, 0 stub, 0 nssa
  Interfaces (Area 0):
    Loopback0
    Serial2/1
  Redistribution:
    Redistributing protocol eigrp 1 include-connected


R1#show ipv6 route eigrp      // VERIFY OSPFv3 REDISTRIBUTED ROUTES
IPv6 Routing Table - default - 22 entries
Codes: C - Connected, L - Local, S - Static, U - Per-user Static route
       B - BGP, HA - Home Agent, MR - Mobile Router, R - RIP
       H - NHRP, I1 - ISIS L1, I2 - ISIS L2, IA - ISIS interarea
       IS - ISIS summary, D - EIGRP, EX - EIGRP external, ND - ND Default
       NDp - ND Prefix, DCE - Destination, NDr - Redirect, O - OSPF Intra
       OI - OSPF Inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2, ON1 - OSPF NSSA ext 1
       ON2 - OSPF NSSA ext 2, l - LISP
D   2001:DB8:A::/62 [5/128256]
     via Null0, directly connected
D   2001:DB8:B::/64 [90/2297856]
     via FE80::C802:16FF:FECC:0, Serial2/0
EX  2001:DB8:C::1/128 [170/2244096]
     via FE80::C802:16FF:FECC:0, Serial2/0
EX  2001:DB8:C:1::1/128 [170/2244096]
     via FE80::C802:16FF:FECC:0, Serial2/0
EX  2001:DB8:C:2::1/128 [170/2244096]
     via FE80::C802:16FF:FECC:0, Serial2/0
EX  2001:DB8:C:3::1/128 [170/2244096]
     via FE80::C802:16FF:FECC:0, Serial2/0
EX  2001:DB8:D::1/128 [170/2244096]
     via FE80::C802:16FF:FECC:0, Serial2/0
EX  2001:DB8:D:1::1/128 [170/2244096]
     via FE80::C802:16FF:FECC:0, Serial2/0
EX  2001:DB8:D:2::1/128 [170/2244096]
     via FE80::C802:16FF:FECC:0, Serial2/0
EX  2001:DB8:D:3::1/128 [170/2244096]
     via FE80::C802:16FF:FECC:0, Serial2/0
EX  2001:DB8:CAFE:2::/64 [170/2244096]
     via FE80::C802:16FF:FECC:0, Serial2/0


R3#show ipv6 route ospf      // VERIFY EIGRP FOR IPv6 ROUTES
IPv6 Routing Table - default - 22 entries
Codes: C - Connected, L - Local, S - Static, U - Per-user Static route
       B - BGP, HA - Home Agent, MR - Mobile Router, R - RIP
       H - NHRP, I1 - ISIS L1, I2 - ISIS L2, IA - ISIS interarea
       IS - ISIS summary, D - EIGRP, EX - EIGRP external, ND - ND Default
       NDp - ND Prefix, DCE - Destination, NDr - Redirect, O - OSPF Intra
       OI - OSPF Inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2, ON1 - OSPF NSSA ext 1
       ON2 - OSPF NSSA ext 2, l - LISP
OE2 2001:DB8:A::/62 [110/20]
     via FE80::C802:16FF:FECC:0, Serial2/1
O   2001:DB8:B::1/128 [110/64]
     via FE80::C802:16FF:FECC:0, Serial2/1
OE2 2001:DB8:CAFE:1::/64 [110/20]
     via FE80::C802:16FF:FECC:0, Serial2/1


R1#tclsh      // VERIFY FULL CONNECTIVITY TO ALL ROUTES
R1(tcl)#foreach address {
+>(tcl)#2001:db8:cafe:1::1
+>(tcl)#2001:db8:cafe:1::2
+>(tcl)#2001:db8:a:0::1
+>(tcl)#2001:db8:a:1::1
+>(tcl)#2001:db8:a:2::1
+>(tcl)#2001:db8:a:3::1
+>(tcl)#2001:db8:b:0::1
+>(tcl)#2001:db8:cafe:2::1
+>(tcl)#2001:db8:cafe:2::2
+>(tcl)#2001:db8:c:0::1
+>(tcl)#2001:db8:c:1::1
+>(tcl)#2001:db8:c:2::1
+>(tcl)#2001:db8:c:3::1
+>(tcl)#2001:db8:d:0::1
+>(tcl)#2001:db8:d:1::1
+>(tcl)#2001:db8:d:2::1
+>(tcl)#2001:db8:d:3::1
+>(tcl)#} { ping $address }
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:CAFE:1::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/4 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:CAFE:1::2, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 12/15/20 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:A::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/1 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:A:1::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/1 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:A:2::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/1 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:A:3::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/4 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:B::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 8/15/20 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:CAFE:2::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/17/32 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:CAFE:2::2, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 20/31/44 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:C::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 12/36/52 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:C:1::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 20/33/52 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:C:2::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 16/25/28 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:C:3::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 12/23/28 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:D::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 12/25/32 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:D:1::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 8/23/32 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:D:2::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 12/21/36 ms
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DB8:D:3::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 16/24/28 ms