Lab Objective:
The focus of this lab is to understand OSPFv3 implementation and configuration in Cisco IOS routers. Additional technologies include Frame Relay, summarization and path control.
Lab Topology:
The lab network topology is illustrated below:
|
IMPORTANT NOTE If you are using the www.howtonetwork.net racks, please bring up the LAN interfaces connected to the routers by issuing the no shutdown command on the connected switches. If you are using a home lab with no interface fastethernet 0/0 Alternately, you can simply connect the interfaces to a hub or switch if you have one available in your own lab. Also, if you are using the www.howtonetwork.net racks, configure R3 as the Frame Relay switch using the following configuration commands: hostname R3-Frame-Relay-Switch |
Task 1
Configure hostnames and IP addressing on all routers as illustrated in the network topology.
Task 2
Configure the Frame Relay network so that all routers can ping each others’ WAN interfaces. This connectivity should be for Link Local addresses only. Verify the configuration.
Task 3
Configure OSPF over the Frame Relay WAN connectivity R1, R2, and R4. Ensure that there is no DR/BDR election held on the WAN segment. Additionally, OSPFv3 should use Unicast packets to send protocol messages. Verify your configuration using the appropriate commands.
Task 4
Redistribute the LAN subnets connected to R1 into OSPF. Configure R1 so that only a single route is advertised to R2 and R4. Verify that these routers can ping the three LAN subnets connected to R1 although they have only a single route for the subnets in their routing tables.
Task 5
Advertise the subnet connected to R2 and R4s LAN interfaces via OSPF. Do NOT redistribute this subnet into OSPF. These routes should be received as inter-area routes on R1. Ensure that no OSPFv3 messages are sent out these interfaces. Verify your configuration.
Task 6
Configure OSPF so that R1 prefers the path via R2 to reach the 3ffe:abcd:1111:5/64 IPv6 subnet connected to R2 and R4. You are NOT allowed to implement any configurations on R1 to complete this task. Additionally, you are NOT allowed to modify interface bandwidth or cost values, or default administrative distance values. Finally, you can NOT use any static routes or redistribution to complete this task. Verify your configuration using the appropriate commands.
Lab Validation
Task 1
| Router(config)#hostname R1 R1(config)#ipv6 unicast-routing R1(config)#ipv6 cef R1(config)#interface fastethernet 0/0 R1(config-if)#no shutdown R1(config-if)#ipv6 address 3ffe:abcd:1111:1000::1/64 R1(config-if)#ipv6 address 3ffe:abcd:1111:2000::1/64 R1(config-if)#ipv6 address 3ffe:abcd:1111:3000::1/64 R1(config-if)#exit R1(config)#interface serial 0/1 R1(config-if)#ipv6 address 2001:abcd:1111:1::1/64 R1(config-if)#no shutdown R1(config-if)#encapsulation frame-relay R1(config-if)#exit |
| Router(config)#hostname R2 R2(config)#ipv6 unicast-routing R2(config)#ipv6 cef R2(config)#interface fastethernet 0/0 R2(config-if)#no shutdown R2(config-if)#ipv6 address 3ffe:abcd:1111:5::2/64 R2(config-if)#exit R2(config)#interface serial 0/1 R2(config-if)# ipv6 address 2001:abcd:1111:1::2/64 R2(config-if)#no shutdown R2(config-if)#encapsulation frame-relay R2(config-if)#exit |
| Router(config)#hostname R4 R4(config)#ipv6 unicast-routing R4(config)#ipv6 cef R4(config)#interface fastethernet 0/0 R4(config-if)#ipv6 address 3ffe:abcd:1111:5::4/64 R4(config-if)#exit R4(config)#interface serial 0/0 R4(config-if)#ipv6 address 2001:abcd:1111:1::4/64 R4(config-if)#no shutdown R4(config-if)#encapsulation frame-relay R4(config-if)#exit |
Task 2
To complete this task, you need to use the frame-relay map ipv6 [address] [dlci] [broadcast] command on all routers. This task is completed as follows:
| R1(config)#interface serial 0/1 R1(config-if)#frame-relay map ipv6 FE80::20D:28FF:FE9E:F940 102 broadcast R1(config-if)#frame-relay map ipv6 FE80::20F:23FF:FE5E:F120 104 broadcast R1(config-if)#exit |
| R2(config)#interface serial 0/1 R2(config-if)#frame-relay map ipv6 FE80::20F:23FF:FE5E:EC80 201 broadcast R2(config-if)#frame-relay map ipv6 FE80::20F:23FF:FE5E:F120 201 R2(config-if)#exit |
| R4(config)#interface serial 0/0 R4(config-if)#frame-relay map ipv6 FE80::20F:23FF:FE5E:EC80 401 broadcast R4(config-if)#frame-relay map ipv6 FE80::20D:28FF:FE9E:F940 401 R4(config-if)#exit |
Verify your configuration using the show frame-relay map command on all routers:
| 1#show frame-relay map Serial0/1 (up): ipv6 FE80::20D:28FF:FE9E:F940 dlci 102(0x66,0x1860), static, broadcast, CISCO, status defined, active Serial0/1 (up): ipv6 FE80::20F:23FF:FE5E:F120 dlci 104(0x68,0x1880), static, broadcast, CISCO, status defined, active |
| R2#show frame-relay map Serial0/1 (up): ipv6 FE80::20F:23FF:FE5E:F120 dlci 201(0xC9,0x3090), static, CISCO, status defined, active Serial0/1 (up): ipv6 FE80::20F:23FF:FE5E:EC80 dlci 201(0xC9,0x3090), static, broadcast, CISCO, status defined, active |
| R4#show frame-relay map Serial0/0 (up): ipv6 FE80::20D:28FF:FE9E:F940 dlci 401(0x191,0x6410), static, CISCO, status defined, active Serial0/0 (up): ipv6 FE80::20F:23FF:FE5E:EC80 dlci 401(0x191,0x6410), static, broadcast, CISCO, status defined, active |
Finally, complete the task by pinging between all three routers across the Frame Relay WAN:
| R1#ping FE80::20D:28FF:FE9E:F940 Output Interface: serial0/1 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to FE80::20D:28FF:FE9E:F940, timeout is 2 seconds: Packet sent with a source address of FE80::20F:23FF:FE5E:EC80 !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 28/29/32 ms R1#ping FE80::20F:23FF:FE5E:F120 |
| R2#ping FE80::20F:23FF:FE5E:F120 Output Interface: serial0/1 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to FE80::20F:23FF:FE5E:F120, timeout is 2 seconds: Packet sent with a source address of FE80::20D:28FF:FE9E:F940 !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 84/84/88 ms R2#ping FE80::20F:23FF:FE5E:EC80 |
| R4#ping FE80::20D:28FF:FE9E:F940 Output Interface: serial0/0 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to FE80::20D:28FF:FE9E:F940, timeout is 2 seconds: Packet sent with a source address of FE80::20F:23FF:FE5E:F120 !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 84/84/88 ms R4#ping FE80::20F:23FF:FE5E:EC80 |
Task 3
To prevent DR/BDR election on the Frame Relay WAN and allow OSPF to use Unicast packets to send protocol messages, you must configure a point-to-multipoint non-broadcast network type, which requires static neighbor configuration. Unlike OSPFv2, OSPFv3 neighbors are configured using the Link Local address and under the interface. Complete this task as follows:
| R1(config)#ipv6 router ospf 1 R1(config-rtr)#router-id 1.1.1.1 R1(config-rtr)#exit R1(config)#interface serial 0/1 R1(config-if)#ipv6 ospf network point-to-multipoint non-broadcast R1(config-if)#ipv6 ospf 1 area 0 R1(config-if)#ipv6 ospf neighbor FE80::20D:28FF:FE9E:F940 R1(config-if)#ipv6 ospf neighbor FE80::20F:23FF:FE5E:F120 R1(config-if)#exit |
| R2(config)#ipv6 router ospf 2 R2(config-rtr)#router-id 2.2.2.2 R2(config-rtr)#exit R2(config)#interface serial 0/0 R2(config-if)#exit R2(config)#interface serial 0/1 R2(config-if)#ipv6 ospf network point-to-multipoint non-broadcast R2(config-if)#ipv6 ospf 2 area 0 R2(config-if)#ipv6 ospf neighbor FE80::20F:23FF:FE5E:EC80 R2(config-if)#exit |
| R4(config)#ipv6 router ospf 4 R4(config-rtr)#router-id 4.4.4.4 R4(config-rtr)#exit R4(config)#interface serial 0/0 R4(config-if)#ipv6 ospf network point-to-multipoint non-broadcast R4(config-if)#ipv6 ospf 4 area 0 R4(config-if)#ipv6 ospf neighbor FE80::20F:23FF:FE5E:EC80 R4(config-if)#exit |
Verify your configuration using the show ipv6 ospf neighbor command on all routers:
| R1#show ipv6 ospf neighbor
Neighbor ID Pri State Dead Time Interface ID Interface |
| R2#show ipv6 ospf neighbor
Neighbor ID Pri State Dead Time Interface ID Interface |
| R4#show ipv6 ospf neighbor
Neighbor ID Pri State Dead Time Interface ID Interface |
Task 4
The first part of this task simply requires that you redistribute the connected prefixes into OSPF. This first part is completed as follows:
| R1(config)#ipv6 router ospf 1 R1(config-rtr)#redistribute connected R1(config-rtr)#exit |
Verify your configuration by looking at the Link State Database entries on R1:
| R1#show ipv6 ospf database external
OSPFv3 Router with ID (1.1.1.1) (Process ID 1) Type-5 AS External Link States LS age: 101 LS age: 101 LS age: 103 |
Additionally, you can also verify the configuration by looking at R2 and R4s routing tables:
| R2#show ipv6 route ospf | include OE2 O – OSPF intra, OI – OSPF inter, OE1 – OSPF ext 1, OE2 – OSPF ext 2 OE2 3FFE:ABCD:1111:1000::/64 [110/20] OE2 3FFE:ABCD:1111:2000::/64 [110/20] OE2 3FFE:ABCD:1111:3000::/64 [110/20] |
| R4#show ipv6 route ospf | include OE2 O – OSPF intra, OI – OSPF inter, OE1 – OSPF ext 1, OE2 – OSPF ext 2 OE2 3FFE:ABCD:1111:1000::/64 [110/20] OE2 3FFE:ABCD:1111:2000::/64 [110/20] OE2 3FFE:ABCD:1111:3000::/64 [110/20] |
The second part of this task requires route summarization, i.e. summarizing the 3 FastEthernet interface addresses and advertise only a single route using OSPFv3. IPv6 summarization is not as complex as one would think. It is also performed in a manner similar to IPv4 route summarization. First, identify and locate the first different 16-bit field. In our example, it is the fourth field, which contains the values 1000, 2000 and 3000. Next, convert these values to binary as illustrated in the following table:
| Hexadecimal Value | Binary Representation | Matching Bit Values |
| 1000 | 0001 0000 0000 0000 | 00 |
| 2000 | 0010 0000 0000 0000 | 00 |
| 3000 | 0011 0000 0000 0000 | 00 |
Referencing the table above, the first two bits match. To complete the address, we simply input zeros for the non-matching bits, resulting in the Binary address: 0000 0000 0000 0000. In Hexadecimal, the same address would be written as 0.
Next, we need to calculate the mask. This is simple and entails just counting the number of matching bits in the address, which would be 50. This task is completed as follows:
| R1(config)#ipv6 router ospf 1 R1(config-rtr)#summary-prefix 3ffe:abcd:1111::/50 R1(config-rtr)#exit |
Following your configuration, verify the summary prefix in the LSDB on R1:
| R1#show ipv6 ospf database external 3ffe:abcd:1111::/50
OSPFv3 Router with ID (1.1.1.1) (Process ID 1) Type-5 AS External Link States LS age: 67 |
The same can also be verified by looking at the LSDBs on R2 and R4. Additionally, you can also just simply check the IPv6 routing tables on these routers. Only a single external prefix should exist following the implemented route summarization on R1:
| R2#show ipv6 route ospf | include OE2 O – OSPF intra, OI – OSPF inter, OE1 – OSPF ext 1, OE2 – OSPF ext 2 OE2 3FFE:ABCD:1111::/50 [110/20] |
| R4#show ipv6 route ospf | include OE2 O – OSPF intra, OI – OSPF inter, OE1 – OSPF ext 1, OE2 – OSPF ext 2 OE2 3FFE:ABCD:1111::/50 [110/20] |
Finally, complete the task by verifying that R2 and R4 can ping all three R1 LAN prefixes:
| R2#ping 3FFE:ABCD:1111:1000::1
Type escape sequence to abort. R2#ping 3FFE:ABCD:1111:2000::1 Type escape sequence to abort. R2#ping 3FFE:ABCD:1111:3000::1 Type escape sequence to abort. |
| R4#ping 3FFE:ABCD:1111:1000::1
Type escape sequence to abort. R4#ping 3FFE:ABCD:1111:2000::1 Type escape sequence to abort. R4#ping 3FFE:ABCD:1111:3000::1 Type escape sequence to abort. |
Task 5
Inter-area routes are routes received from another area. To complete this task, simply assign the LAN subnets connected to R2 and R4 to a different OSPF area. This is completed as follows:
| R2(config)#ipv6 router ospf 2 R2(config-rtr)#passive-interface fastethernet 0/0 R2(config-rtr)#exit R2(config)#interface fastethernet 0/0 R2(config-if)#ipv6 ospf 2 area 2 R2(config-if)#exit |
| R4(config)#ipv6 router ospf 4 R4(config-rtr)#passive-interface fastethernet 0/0 R4(config-rtr)#exit R4(config)#interface fastethernet 0/0 R4(config-if)#ipv6 ospf 4 area 4 R4(config-if)#exit |
Verify your configuration by looking at the IPv6 routing table entries on R1:
| R1#show ipv6 route 3FFE:ABCD:1111:5::/64 IPv6 Routing Table – 17 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 OI 3FFE:ABCD:1111:5::/64 [110/65] |
Task 6
This task requires a little thought based on the imposed restrictions. By default, R1 will load-balance between R2 and R4 for the LAN prefix these routers are connected to as follows:
| R1#show ipv6 route 3FFE:ABCD:1111:5::/64 IPv6 Routing Table – 17 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 OI 3FFE:ABCD:1111:5::/64 [110/65] |
The most simple method of ensuring that R1 prefers the path via R2 would be to use the ipv6 ospf neighbor <address> cost <cost> interface configuration command under the Serial0/1 interface; however, we are NOT allowed to make any modifications to R1. Therefore, consideration must be given to another OSPF feature. The only other feature that allows us to assign costs directly to OSPF prefixes is the area <are> range <prefix> cost <cost> cost command. The task is completed by implementing different summary costs on R2 and R4:
| R2(config)#ipv6 router ospf 2 R2(config-rtr)#area 2 range 3FFE:ABCD:1111:5::/64 cost 2 R2(config-rtr)#exit |
| R4(config)#ipv6 router ospf 4 R4(config-rtr)#area 4 range 3FFE:ABCD:1111:5::/64 cost 4 R4(config-rtr)#exit |
NOTE: You could simply increment the cost on R4 to achieve the same result. As long as that value is higher than 1, the path via R2 will be preferred by R1.
Following this configuration, R1 prefers the path via R2 because of the lower cost value.
| R1#show ipv6 route 3FFE:ABCD:1111:5::/64 IPv6 Routing Table – 17 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 OI 3FFE:ABCD:1111:5::/64 [110/66] via FE80::20D:28FF:FE9E:F940, Serial0/1 |
Finally, verify that R1 can ping both R2 and R4s LAN addresses when complete:
| R1#ping 3FFE:ABCD:1111:5::2
Type escape sequence to abort. |
| R1#ping 3FFE:ABCD:1111:5::4
Type escape sequence to abort. |
Final Router Configurations
R1
|
R1#term len 0 Current configuration : 1428 bytes R1# |
R2
|
R2#term len 0 Current configuration : 1308 bytes R2# |
R3
|
R3-Frame-Relay-Switch#term len 0 Current configuration : 1766 bytes R3-Frame-Relay-Switch# |
R4
|
R4#term len 0 Current configuration : 1377 bytes R4# |
