1、这里主要描述常规的路由表更新过程及原理,而不仅限于考试。首先路由器本身就具备网络转发的功能,也就是说路由器本身知道跟自己直接连接的网络,如果客户机以它为网关,数据目标是投递到路由器直连的网络它能自动的进行路由转发。自路由原则:举例:如下的路由器A的路由表路由器有两个直接连接的网段分别为192.168.1.0/24 192.168.2.0/24对应的接口网卡地址为192.168.1.1 及 192.168.2.1路由表的前面部分有一个ADC 表示该网段是A活动的,D动态的,C直接连接的路由表说明到 192.168.1.0/24 网段的数据包,将以192.168.1.1为源地址,从ether1这个接口出去;192.168.2.0/24的数据包将以192.168.2.1为源地址,从ether2接口出去。所以如果192.168.1.0/24网段的机器,如果以192.168.1.1为网关,发送到192.168.2.0/24 经过路由器A时是可以被自动转发的。
2、同理,下面是路由器B的路由表路由器B连接了192.168.2.0/24 及 192.168.3.0/24两个网段。到192.168.2.0/24网段将以源地址为192.168.2.254 从ehter1接口出去到192.168.3.0/24网段将以源地址为192.168.3.1/24从ether2接口出去
3、其他网络不可达原则:此时在没有配置任何动态路由协议的情况下网段192.168.1.0/24的主机是无法访问192.168.3.0/24网段的主机的。因为在路由器A上没有到达192.168.3.0网段的路由信息。同样对于路由器B来说它也无法知道192.168.1.0网段的路由信息,所以路由也是不可达的。但是如果路由器配置了默认网关,对于不可达的数据包都会往默认网关上去传送。
4、动态路由学习:为了进行1.0 根3.0网段的互通,需要在两个路由器上启用动态路由协议,比如RIP协议。如下图所示,配置了RIP邻居及发布的网络后,在路由器A中可以看到新增了一条路由记录ADr 192.168.3.0/24 网关为192.168.2.254 距离为120 这里没有说源地址是多少。其中r表示rip协议,表明这个项目是从RIP协议学到的,目标网络为192.168.3.0/24然后投递到192.168.2.254,路由器在投递的时候会查找192.168.2.254 发现属于2.0/24网段,将从ether2接口出去,并且源地址为192.168.2.1数据包到达路由B的192.168.2.254接口上,发现数据包是给192.168.3.0的,将从ether2出口发出,并且表明源地址是3.1 这就是整个传递的过程。以及路由器项目的过程。
5、最短路径原则:路由器A,路由器B互为路由学习的邻居,路由器表更新的过程取决于邻居对于路由表项的通告。比如:上面的例子是路由器B通告了192.168.3.0/24的网络给路由器A,当然也可以配置通告192.168.4.0/24 192.168.5.0/24等网络给A那么这个时候可能会出现以下的情况,假定一个路由器C,三个路由器互为邻居,如果这时候路由器B和路由器C都 通告192.168.4.0/24 那么路由器A将如何进行路由表更新呢?也就是选择哪个路由器作为到达192.168.4.0网段的下一条路由器。这个时候路由算法会对比到达192.168.4.0网段所需要经过的跳数(距离)如果经过路由器B的距离到达192.168.4.0网段花销比较小,那么就算法B作为下一跳的出口(网关);如果通过C的距离到达192.168.4.0花销比较少,那么就会选择C作为下一跳出口(网关)
6、逆反信息、过期信息及毒化:路由器维护路由表可能还会遇到下面情况:1、远处的路由器坏了,或者网络断了,那么如何发现并更新路由表(删除)2、如果远处的路由器传输自己维护的网段信息,那么如何处理(逆反信息)3、如果从远处的两个路由器传来信息,一个传来可达,一个传来不可达如何处理(毒化)为了处理上面的情况,路由器对于每个表项目都设置了生命周期,如果该路由项目达到生命周期没有刷新,就会从路由表去掉。为了防止别的路由器通告自身维护的路由信息,那么可以设置路由器对于逆反的路由表像不做处理,不学习。为了防止出现两个网络的可达冲突或者路径冲突,一旦出现某个网络冲突,那么就停止这个网络的所有学习(更新),并发毒化通告,通告邻居这个不可达信息。每个接收到通知的都不学习这个路由表。根据设置可能会自动的把路由项目过期处理。等隔一个时间断后,再重新开始学习。以上就是RIP路由表更新的过程。根据路由算法不一样,更新的方式可能不一样,大部分初级、中级的考试都是以RIP协议作为考试。