【例4-10】 表4-5是使用无类别域间路由(CIDR)的路由选择表,地址字节是用十六进制表示的。在C4.50.0.0/12中的“/12”表示开头有12个1的网络掩码,也就是FF.F0.0.0。注意,*后3个登录项涵盖每一个地址,因此起到了默认路由的作用。试指出具有下列目标地址的IP分组将被投递到哪个下一站?
解析:
解题思路:将右边的IP地址与左边的网络号进行一一比较,如果可以满足前缀相同的长度大于或等于掩码的长度,则表示可以走此条路由,称为匹配。但是如果有更长掩码的网络与之匹配,则应该优先选择具有更长掩码的网络,即满足*长匹配原则。
解题技巧:既然需要满足*长匹配原则,那么应该从掩码长度*长的开始比较。
1)网络号C4.5E.10.0/20的第三字节可以用二进制表示成0001 0000,目标地址C4.5E.13.87的第三字节可以用二进制表示成0001 0011,前20位相同,恰好匹配了。所以具有该目标地址的IP分组将被投递到B站。
2)目标地址C4.5E.22.09与网络号C4.5E.10.0/20的前20位不一样,所以不能进行匹配。其次,优先考虑的应该是网络号C4.50.0.0/12,恰好匹配,所以具有该目标地址的IP分组将被投递到A站。
3)经过比较,目标地址C3.41.80.02只能与80.0.0.0/1匹配。因为目标地址C3.41.80.02的**字节为1100 0011,而网络80.0.0.0的**字节为1000 0000,**位都为1,匹配。所以具有该目标地址的IP分组将被投递到E站。
4)同上分析,目标地址5E.43.91.12与网络40.0.0.0/2匹配,所以具有该目标地址的IP分组将被投递到F站。
5)同上分析,目标地址C4.6D.31.2E与网络C4.60.0.0/12匹配(目标地址C4.6D.31.2E与网络C4.68.0.0/14只有前13位相同,所以不能匹配),所以具有该目标地址的IP分组将被投递到C站。
6)同上分析,目标地址C4.6B.31.2E与网络C4.68.0.0/14匹配,所以具有该目标地址的IP分组将被投递到D站。
补充:有些同学可能还不是很明白为什么要满足*长匹配原则?下面用一个生活实例来解释。