By changing the admin dinstance for ospf external routes to 171, R2 is no longer routing 192.10.1.0/24 (rip subnet between BB2 and R5) via OSPF area0 to R5, it is choosing the external EIGRP route via R3. R2 can't ping 192.10.1.5 anymore. Therefore the solution provided is not 100% correct in my opinion.
The same problem would also apply on all the routes announced by BB2, but since R5 are forwarding the EBGP networks learned from AS254 to R2 AS300, R2 has AS254 EBGP routes with admin distance 20 back to R5.
So the problem only applies to 192.10.1.0/24 since it is not propagated by EBGP. The workaround in my opinion could be to confgure a network statement for 192.10.1.0/24 under the bgp process of R5, announcing it via EBGP to R2 AS300, the same as the other AS254 routes from BB2.
I do understand that EBGP does next-hop self by default, and in a real scenario, reachability to 192.10.1.0/24 might not be an issue, but since the question is stating that reachability to all networks has to be ensured, the solution is not correct in my opinion.
Feedback and other solutions welcome.
cheers Thomas
Problem:
---
Rack1R2#sh ip route 222.22.2.0
Routing entry for 222.22.2.0/24
Known via "bgp 300", distance 20, metric 0
Tag 200, type external
Last update from 136.1.245.5 00:04:33 ago
Routing Descriptor Blocks:
* 136.1.245.5, from 136.1.245.5, 00:04:33 ago
Route metric is 0, traffic share count is 1
AS Hops 2
Route tag 200
Rack1R2#sh ip route 192.10.1.5
Routing entry for 192.10.1.0/24
Known via "eigrp 100", distance 170, metric 2560512512, type external
Redistributing via ospf 1, eigrp 100
Last update from 136.1.23.3 on Serial0/0/1, 00:34:53 ago
Routing Descriptor Blocks:
* 136.1.23.3, from 136.1.23.3, 00:34:53 ago, via Serial0/0/1
Route metric is 2560512512, traffic share count is 1
Total delay is 20020 microseconds, minimum bandwidth is 1 Kbit
Reliability 255/255, minimum MTU 1500 bytes
Loading 2/255, Hops 2
Rack1R2#ping 192.10.1.5 repeat 1
Type escape sequence to abort.
Sending 1, 100-byte ICMP Echos to 192.10.1.5, timeout is 2 seconds:
.
Success rate is 0 percent (0/1)
Rack1R2#traceroute 192.10.1.5
Type escape sequence to abort.
Tracing the route to 192.10.1.5
1 136.1.23.3 12 msec 16 msec 12 msec
2 136.1.136.1 12 msec 16 msec 16 msec
3 * * *
4 * * *
5 * * *
6 * * *
Solution:
---
Rack1R5#conf t
Enter configuration commands, one per line. End with CNTL/Z.
Rack1R5(config)#router bgp 200
Rack1R5(config-router)#network 192.10.1.0 mask 255.255.255.0
Rack1R5(config-router)#end
Rack1R5#wr
Rack1R2#ping 192.10.1.5 repeat 1
Type escape sequence to abort.
Sending 1, 100-byte ICMP Echos to 192.10.1.5, timeout is 2 seconds:
!
Success rate is 100 percent (1/1), round-trip min/avg/max = 56/56/56 ms
Rack1R2#traceroute 192.10.1.5
Type escape sequence to abort.
Tracing the route to 192.10.1.5
1 136.1.245.5 24 msec * 28 msec
Rack1R2#sh ip route 192.10.1.0
Routing entry for 192.10.1.0/24
Known via "bgp 300", distance 20, metric 0
Tag 200, type external
Last update from 136.1.245.5 00:00:36 ago
Routing Descriptor Blocks:
* 136.1.245.5, from 136.1.245.5, 00:00:36 ago
Route metric is 0, traffic share count is 1
AS Hops 1
Route tag 200