I am trying to understand a concept regarding RPF checks. According to http://cisco.com/en/US/tech/tk828/technologies_tech_note09186a0080094b55.shtml
Cisco IOS? calculates the RPF interface in this way. Possible sources of RPF information are Unicast Routing Table, MBGP routing table, DVMRP routing table and Static Mroute table. When you calculate the RPF interface, primarily administrative distance is used to determine exactly which source of information the RPF calculation is based on. The specific rules are:
All preceding sources of RPF data are searched for a match on the source IP address. When using Shared Trees, the RP address is used instead of the source address.
If more than one matching route is found, the route with the lowest administrative distance is used.
If the admin distances are equal, then this order of preference is used:
If multiple entries for a route occur within the same route table, the longest match route is used.
I went to my lab and tried some different scenarios to check if what I am reading is true. This is what I get from one of my attempts to prove myself wrong:
R1#sh ip route
Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2
i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
ia - IS-IS inter area, * - candidate default, U - per-user static route
o - ODR, P - periodic downloaded static route
Gateway of last resort is not set
O 188.8.131.52/8 [110/30] via 184.108.40.206, 00:11:19, FastEthernet0/0
O 220.127.116.11/8 [110/20] via 18.104.22.168, 00:13:55, FastEthernet0/0
22.214.171.124/8 is variably subnetted, 2 subnets, 2 masks
O 126.96.36.199/16 [110/21] via 188.8.131.52, 00:08:41, FastEthernet0/0
S 184.108.40.206/8 [1/0] via 220.127.116.11
C 18.104.22.168/8 is directly connected, FastEthernet0/0
C 22.214.171.124/8 is directly connected, FastEthernet0/1
R1#sh ip rpf 126.96.36.199
RPF information for ? (188.8.131.52)
RPF interface: FastEthernet0/0
RPF neighbor: ? (184.108.40.206)
RPF route/mask: 220.127.116.11/16
RPF type: unicast (ospf 1)
RPF recursion count: 0
Doing distance-preferred lookups across tables
From what I understand first all routes that match the source are taken and then their administrative distance is compared , thus I should use the route to 18.104.22.168 with next-hop 22.214.171.124. Unfortunately, as you can see from the sh ip rpf command, this is not happening.
I would really appreciate some help! Thank you in advance!