IPv6 EIGRP
June 13, 2008 4 Comments
IPv6 EIGRP and IPV4 EIGRP are very similar in concept except for the following differences:
- IPv6 is configured on interface basis (like OSPFv3 and RIPng) and networks are advertised based on interface command.
- When configured on interface, IPv6 EIGRP is initially placed in “shutdown” state.
- As with OSPFv3, IPv6 EIGRP require a router-id in IPv4 format.
- Passive interfaces can only be configured in the routing process mode.
- Need for extra memory resources and supported in IOS 12.4(6)T and later.
R1#sh ver | i Version Cisco IOS Software, 7200 Software (C7200-ADVIPSERVICESK9-M), Version 12.4(6)T, RELEASE SOFTWARE (fc1) BOOTLDR: 7200 Software (C7200-ADVIPSERVICESK9-M), Version 12.4(6)T, RELEASE SOFTWARE (fc1) 6 slot VXR midplane, Version 2.1 R1# |
- No split horizon in IPv6 because it is possible to get multiple prefixes per interface.
- No concept of classful routing in IPv6 EIGRP consequently no automatic summary.
Figure1 depicts the Lab topology used for IPv6 EIGRP deployment, R1, R2 and R3 are connected to each other through a Frame Relay cloud and R2, R3 and R4 are connected to each other through LAN.
Each router protect its own set of local networks.
This lab covers the following topics related to the deployment of IPv6 EIGRP
- IPV6 addressing
- Frame Relay configuration
- IPv6 routing configuration
- IPv6 route manipulation
Figure1 IPv6 EIGRP topology:
I) DEPLOYMENT
- IPV6 addressing:
First unicat IPv6 and link local addresses are configured.
Link local addresses are statically configured to make their manipulation easier.
R1(config)#int s1/0 R1(config-if)#ipv6 address 2001:1:1:210::1/60 R1(config-if)#ipv6 address FE80::210:1 link-local R1(config-if)#no sh |
R2(config-if)#int s1/0 R2(config-if)#ipv6 address 2001:1:1:210::2/60 R2(config-if)#ipv6 address FE80::210:2 link-local R2(config-if)#no sh
R2(config)#int fa 0/0 R2(config-if)#ipv6 address 2001:1:1:410::2/60 R2(config-if)#ipv6 address FE80::410:2 link-local R2(config-if)#no sh |
R3(config-if)#int s1/0 R3(config-if)#ipv6 address 2001:1:1:210::3/60 R3(config-if)#ipv6 address FE80::210:3 link-local R3(config-if)#no sh
R3(config-if)#int fa 0/0 R3(config-if)#ipv6 address 2001:1:1:410::3/60 R3(config-if)#ipv6 address FE80::410:3 link-local R3(config-if)#no sh |
R4(config-if)#int fa 0/0 R4(config-if)#ipv6 address 2001:1:1:410::4/60 R4(config-if)#ipv6 address FE80::410:4 link-local R4(config-if)#no sh |
- FR Configuration:
For each interface connected to the Frame relay cloud FR encapsulation is set, Inverse ARP disabled and Static mapping is performed using next-hop unicat ipv6 as well as next-hop link local ipv6.
R1(config-if)#int s1/0 R1(config-if)#encapsulation frame-relay R1(config-if)#frame-relay map ipv6 2001:1:1:210::2 102 broadcast R1(config-if)#frame-relay map ipv6 FE80::210:2 102 R1(config-if)#frame-relay map ipv6 2001:1:1:210::3 103 broadcast R1(config-if)#frame-relay map ipv6 FE80::210:3 103 |
R2(config)#int s1/0 R2(config-if)#encapsulation frame-relay R2(config-if)#frame-relay map ipv6 2001:1:1:210::1 201 broadcast R2(config-if)#frame-relay map ipv6 FE80::210:1 201 R2(config-if)#frame-relay map ipv6 2001:1:1:210::3 203 broadcast R2(config-if)#frame-relay map ipv6 FE80::210:3 203 |
R3(config)#int s1/0 R3(config-if)#encapsulation frame-relay R3(config-if)#frame-relay map ipv6 2001:1:1:210::1 301 broadcast R3(config-if)#frame-relay map ipv6 FE80::210:1 301 R3(config-if)#frame-relay map ipv6 2001:1:1:210::2 302 broadcast R3(config-if)#frame-relay map ipv6 FE80::210:2 302 |
Before continuing further, it is recommended to check connectivity:
Frame Relay cloud:
unicast:
R1#ping ipv6 2001:1:1:210::2
Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 2001:1:1:210::2, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 64/73/88 ms
R1#ping ipv6 2001:1:1:210::3
Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 2001:1:1:210::3, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 32/73/88 ms R1# |
Link-local:
R1#ping ipv6 FE80::210:2 Output Interface: Serial1/0 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to FE80::210:2, timeout is 2 seconds: Packet sent with a source address of FE80::210:1 !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 36/60/80 ms R1#
R1#ping ipv6 FE80::210:3 Output Interface: Serial1/0 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to FE80::210:3, timeout is 2 seconds: Packet sent with a source address of FE80::210:1 !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 44/54/92 ms R1# |
Ethernet :
Unicast:
R2#ping ipv6 2001:1:1:410::3 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 2001:1:1:410::3, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 64/79/116 ms R2#ping ipv6 2001:1:1:410::4
Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 2001:1:1:410::4, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 48/74/96 ms R2# |
Link-local:
R2#ping ipv6 FE80::410:3 Output Interface: FastEthernet0/0 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to FE80::410:3, timeout is 2 seconds: Packet sent with a source address of FE80::410:2 !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 72/76/92 ms R2#ping ipv6 FE80::410:4 Output Interface: FastEthernet0/0 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to FE80::410:4, timeout is 2 seconds: Packet sent with a source address of FE80::410:2 !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 48/71/96 ms R2# |
Routing Configuration:
Steps:
Now let’s proceed with IPv6 EIGRP:
- Enable unicast IPV6 routing globally.
- enable IPV6 on FR interface.
- enable IPv6 EIGRP per interface-basis.
- manually set IPv6 EIGRP router-id in IPv4 format.
- no shutdown EIGRP process.
R1(config)#ipv6 unicast-routing R1(config)#int s1/0 R1(config-if)#ipv6 enable R1(config-if)#ipv6 eigrp 10 R1(config-if)#exit R1(config)#ipv6 router eigrp 10 R1(config-rtr)#router-id 1.1.1.1 R1(config-rtr)#no sh |
Verify the IPv6 EIGRP protocol:
R1(config)#do sh ipv6 protocols IPv6 Routing Protocol is “connected” IPv6 Routing Protocol is “static” IPv6 Routing Protocol is “eigrp 10” EIGRP metric weight K1=1, K2=0, K3=1, K4=0, K5=0 EIGRP maximum hopcount 100 EIGRP maximum metric variance 1 Interfaces:
Redistribution: None Maximum path: 16 Distance: internal 90 external 170
R1(config)# |
Repeat previous steps for R2 and R3 and make sure that IPV6 eigrp PROCESS id match.
R2(config)#ipv6 unicast-routing R2(config)#int s1/0 R2(config-if)#ipv6 enable R2(config-if)#ipv6 eigrp 10 R2(config-if)#exit R2(config)#ipv6 router eigrp 10 R2(config-rtr)#router-id 2.2.2.2 R2(config-rtr)#no sh
R2(config-rtr)#int fa 0/0 R2(config-if)#ipv6 enable R2(config-if)#ipv6 eigrp 10 R2(config-if)#exit R2(config)# |
R3(config)#ipv6 unicast-routing R3(config-if)#int s1/0 R3(config-if)#ipv6 enable R3(config-if)#ipv6 eigrp 10 R3(config-if)#exit R3(config)#ipv6 router eigrp 10 R3(config-rtr)#router-id 3.3.3.3 R3(config-rtr)#no sh
R3(config-rtr)#int fa 0/0 R3(config-if)#ipv6 enable R3(config-if)#ipv6 eigrp 10 R3(config-if)#exit R3(config)# |
R4(config)#ipv6 unicast-routing R4(config-rtr)#int fa 0/0 R4(config-if)#ipv6 enable R4(config-if)#ipv6 eigrp 10 R4(config-if)#exit R4(config)# |
Let’s check neighbor relationships and IPv6 routing table on R1 for example:
R1(config)#do sh ipv6 eigrp neigh IPv6-EIGRP neighbors for process 10 H Address Interface Hold Uptime SRTT RTO Q Seq (sec) (ms) Cnt Num 1 Link-local address: Se1/0 154 00:01:16 32 200 0 5
0 Link-local address: Se1/0 163 00:04:56 48 288 0 3
R1(config)#sh ipv6 eigrp neighbor IPv6-EIGRP interfaces for process 10
Xmit Queue Mean Pacing Time Multicast Pending Interface Peers Un/Reliable SRTT Un/Reliable Flow Timer Routes Se1/0 2 0/0 40 0/15 175 0 R1(config)# |
You can note that as in OSPFv3, IPv6 EIGRP use link-local addresses to establish neighbor relationships with its neighbors.
R1(config)#do sh ipv6 route eigrp IPv6 Routing Table – 35 entries Codes: C – Connected, L – Local, S – Static, R – RIP, B – BGP U – Per-user Static route 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 D 2001:1:1:410::/60 [90/2172416]
R1(config)# |
R1 has learnt the LAN network 2001:1:1:410::/60 from both R2 and R3 and it is perfectly reachable:
R1(config)#do ping ipv6 2001:1:1:410::4
Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 2001:1:1:410::4, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 116/136/164 ms R1(config)# R1#traceroute ipv6 2001:1:1:410::4 Type escape sequence to abort. Tracing the route to 2001:1:1:410::4
1 2001:1:1:210::2 80 msec
2 2001:1:1:410::4 144 msec 120 msec 144 msec R1# |
R1 load-balanced ICMP packets between the two paths through R2 and R3.
- Route manipulation:
To practice IPv6 route summarization, loopback interfaces are created to simulated local networks for each router (figure1) and ipV6 EIGRP is enabled on each interface.
The result is as follow:
R4:
R4# sh ipv6 route eigrp IPv6 Routing Table – 22 entries Codes: C – Connected, L – Local, S – Static, R – RIP, B – BGP U – Per-user Static route 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 D 2001:1:1:110::/60 [90/2300416] via FE80::410:3, FastEthernet0/0 via FE80::410:2, FastEthernet0/0 D 2001:1:1:120::/60 [90/2300416] via FE80::410:3, FastEthernet0/0 via FE80::410:2, FastEthernet0/0 D 2001:1:1:130::/60 [90/2300416] via FE80::410:3, FastEthernet0/0 via FE80::410:2, FastEthernet0/0 D 2001:1:1:140::/60 [90/2300416] via FE80::410:3, FastEthernet0/0 via FE80::410:2, FastEthernet0/0 D 2001:1:1:150::/60 [90/2300416] via FE80::410:3, FastEthernet0/0 via FE80::410:2, FastEthernet0/0 D 2001:1:1:160::/60 [90/2300416] via FE80::410:3, FastEthernet0/0 via FE80::410:2, FastEthernet0/0 D 2001:1:1:170::/60 [90/2300416] via FE80::410:3, FastEthernet0/0 via FE80::410:2, FastEthernet0/0 D 2001:1:1:180::/60 [90/2300416] via FE80::410:3, FastEthernet0/0 via FE80::410:2, FastEthernet0/0 D 2001:1:1:190::/60 [90/2300416] via FE80::410:3, FastEthernet0/0 via FE80::410:2, FastEthernet0/0 D 2001:1:1:1A0::/60 [90/2300416] via FE80::410:3, FastEthernet0/0 via FE80::410:2, FastEthernet0/0 D 2001:1:1:1B0::/60 [90/2300416] via FE80::410:3, FastEthernet0/0 via FE80::410:2, FastEthernet0/0 D 2001:1:1:1C0::/60 [90/2300416] via FE80::410:3, FastEthernet0/0 via FE80::410:2, FastEthernet0/0 D 2001:1:1:1D0::/60 [90/2300416] via FE80::410:3, FastEthernet0/0 via FE80::410:2, FastEthernet0/0 D 2001:1:1:1E0::/60 [90/2300416] via FE80::410:3, FastEthernet0/0 via FE80::410:2, FastEthernet0/0 D 2001:1:1:1F0::/60 [90/2300416] via FE80::410:3, FastEthernet0/0 via FE80::410:2, FastEthernet0/0 D 2001:1:1:210::/60 [90/2172416] via FE80::410:3, FastEthernet0/0 via FE80::410:2, FastEthernet0/0 R4# |
22 entries, only routes to FR network routes and R1 fifteen local networks, you just imagine if we add R2 and R3 local networks, or even worse in a production network with hundreds of site and thousands of routes!
Here is where summarization comes, to lessen the complexity of handling routes individually.
As in IPv4 EIGRP after configuring the summarization command the router drops IPv6 EIGRP relationships to reestablish them again, this renew input events and make neighbors rebuild their topology tables and perform DUAL algorithm local computation again using the new advertisements from the router who reconfigured summarization.
The summarization command is performed on interface-basis, so make sure than it is executed on all EIGRP interfaces through which you want to spread summary route.
R1:
R1(config-if)#int s1/0 R1(config-if)#ipv6 summary-address eigrp 10 2001:1:1:1::/56 *Jun 13 10:36:44.871: %DUAL-5-NBRCHANGE: IPv6-EIGRP(0) 10: Neighbor FE80::210:3 (Serial1/0) is down: summary configured *Jun 13 10:36:44.927: %DUAL-5-NBRCHANGE: IPv6-EIGRP(0) 10: Neighbor FE80::210:2 (Serial1/0) is down: summary configured R1(config-if)# *Jun 13 10:37:01.919: %DUAL-5-NBRCHANGE: IPv6-EIGRP(0) 10: Neighbor FE80::210:3 (Serial1/0) is up: new adjacency *Jun 13 10:37:02.019: %DUAL-5-NBRCHANGE: IPv6-EIGRP(0) 10: Neighbor FE80::210:2 (Serial1/0) is up: new adjacency R1(config-if)# |
Now let’s take a look at R4 routing table:
R4# sh ipv6 route eigrp IPv6 Routing Table – 10 entries Codes: C – Connected, L – Local, S – Static, R – RIP, B – BGP U – Per-user Static route 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 D 2001:1:1:100::/56 [90/2300416] via FE80::410:2, FastEthernet0/0 via FE80::410:3, FastEthernet0/0 D 2001:1:1:210::/60 [90/2172416] via FE80::410:2, FastEthernet0/0 via FE80::410:3, FastEthernet0/0 D 2001:1:1:300::/56 [90/156160] via FE80::410:3, FastEthernet0/0 D 2001:1:1:600::/56 [90/156160] via FE80::410:2, FastEthernet0/0 R4# |
The routing table is reduced to 10 entries with only summary routes to R1, R2 and R3 local networks.
II) CONCLUSION
As with other IPv6 routing protocols there is practically nothing to do if you grasp the concept of the IPv4 version of the protocol as well as IPV6 addressing.
Wow, kick ass writeup! Great work!
Mike
Good afternoon I made your lab and I have some queries ?
not supposed to realize the direction that the map is the Local Link
adiccional summarization of the network must be 2001:1:1 :: / 56 instead 2001:1:1:1 :: / 56
mapping frame-relay should be something like
example
R3(config)#int s1/0
R3(config-if)#encapsulation frame-relay
R3(config-if)#frame-relay map ipv6 FE80::210:2 302 broadcast
R3(config-if)#frame-relay map ipv6 FE80::210:1 301 broadcast
R3(config-if)#frame-relay map ipv6 2001:1:1:210::2 302
R3(config-if)#frame-relay map ipv6 2001:1:1:210::1 301
thanks
Hi Lord,
The keyword “broadcast” enable pseudo-broadcasting, duplicating traffic at the layer2, for the given PVC, so it doesn’t matter whether it is configured for the link-local or the global address.
Sorry for the delayed reply.
A quick presentation http://isyskernel.blogspot.com/2013/11/ipv6-eigrp-cisco-router-unicast-128-serial.html