最长匹配前缀

定义

在使用 CIDR 时,路由表的每个项目的组成 ,<网络前缀,下一跳地址>。在查找路由的时候可能会得到不止一个匹配的结果。此时应当从匹配结果中选择具有最长网络前缀的路由。因为网络前缀越长,其地址块就越小,路由就越具体

实例

已知:
收到的分组的目的地址 D = 206.0.71.128
路由表中的项目:206.0.68.0/22        206.0.71.128/25 

问:分组发往哪个地址?

求解思路
子网掩码目的地址相与,确定该目的地址是否属于该子网内部。如果两者都属于,则选择网络前缀(掩码)最长的。

求解过程
1.先用 D 和第一个下一跳地址的子网掩码相与

206.0.71.128 AND 11111111.11111111.11111100.00000000206.0.71.128\ AND\ 11111111.11111111.11111100.00000000

结果

206.0.01000100.0  206.0.68.0206. 0. 01000100. 0\ 也就是\ 206.0.68.0

说明匹配。

2.再用 D 和第二个下一跳地址的子网掩码相与

206.0.71.128 AND 11111111.11111111.11111111.10000000206.0.71.128\ AND\ 11111111.11111111.11111111.10000000

结果是

 206.0.71.128也是\ 206.0.71.128

也匹配。

这个时候由于两个子网都匹配,选择最长的网络前缀匹配,也就是 206.0.71.128\ 206.0.71.128

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章