路由器查找过程你真的清楚了吗-应用技巧

王朝数码·作者佚名  2011-03-11
宽屏版  字体: |||超大  

拓扑说明: R1——R2 均是思科路由器

R1配置:lo1:172.16.1.1/24; lo2:172.16.2.1/24;lo3:172.17.1.1/24;lo4:172.17.2.1/26;S1/ 1:12.1.1.1/24 与R2 :S1/0 12.1.1.2/24相连

R2配置:S1/0:12.1.1.2/24;lo0:192.168.2.1/24;lo2:172.16.3.1/24

以下是R1路由表:

以下是R2路由表

我现在R1上pingR2的lo2地址172.16.3.1,结果怎么样?我认为一定会通,我相信绝大多数人都认为会通,可实际的情况呢?却不通。

其实这里面不通是有道理的!经过排查,原来R1上执行的是有类路由查找。我们现在可以回忆下路由查找过程:

当一个路由器收到一个IP报文后,检查目的IP地址,查找路由表,执行路由转发,具体过程如下:

1,路由器根据数据包中的目的IP地址,查找级别1路由:网络路由(包括父路由)、超网路由、默认路由;

2,如果最佳匹配(指的是最长子网掩码)是级别1的最终路由,这条路由被用来转发数据包;

3,如果最佳匹配是级别1中的父路由,继续下一步查找;

4,如果在父路由中找到了匹配,继续查找该父路由下的子路由。

5,如果有一条子路由匹配,这条路由用来转发数据包;

6,如果没有子路由匹配,则看下一条分析:

7,如果路由器执行的是有类路由查找,则执行第八步;如果执行的是无类路由查找,则执行第九步;

8,有类路由查找:终止查询,丢弃数据包;

9,无类路由行为:继续查找级别1的超网路由和默认路由,有匹配就使用超网和默认路由转发数据包

10,没找到超网路由也没配置默认路由,则终止查找丢弃数据包。

熟悉以上过程,我们大致可以猜测路由器R1在查找路由时,第七步出了问题,执行的是有类路由查找。找到原因,修改路由器R1的配置,特权模式下执行命令:ip classless 。再次在R1上ping172.16.3.1 发现成功P通。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有