天天看点

环路的产生及RIP防环机制

首先简单说一下什么是环路

环路的产生及RIP防环机制

首先有R1 R2 两台路由器,并且R1 R2之间是RIP路由协议 正常情况下R2有pc 的路由条目,如果PC与R1之间突然断掉那么R1就没有了到PC的路由 但是由于路由的更新机制,30s后R2会洪泛一个应答包里面包含这条到PC的路由条目迎面来了它带着路由条目来的,R1一看 你带东西过来啦 并且很高兴的收下 又30S后R1也要发出应答包来告诉大家它所拥有的路由(里面还是包含到PC的路由,虽然它和PC之间的连接已经断掉了), 这个时候,R2又收到了R1的数据包 一看 嗯你那里有到PC的路由 我接着保存 然后30S又过去了 R2又开始。。。。。。直到R2右边收到了一条要访问“192.168.1.1/24”这台PC的请求,R2肯定会直接丢给R1,而R1一看,不是PC不是在你R2那里嘛?于是又果断地丢给R2。R2一看,以为R1开了个玩笑,于是又丢给R1。于是,两个人就这样一直互丢着,而且速度越来越快。这还只是一个包,要是刚好是传一部电影呢?那成千上万给数据包,就直接给让R1和R2丢到崩溃了!这个时候,又因为网线上面跑得基本是都是互丢的数据包,其他正常的程序也不能正常收发包了,要么卡顿,要么崩溃。这样一个大家一起崩溃的情景,则美其名曰“环路”。不过好在,IP包本身有一个叫做“TTL”(Time to live)值的东西,在丢了255次之后,这个包终于被丢弃了

1.水平分割

R1给了R2一条 PC路由,R2就不会再把PC路由给R1,等了240S之后(刷新计时器),A路由就从R1和R2的路由表上面都消失了

2.最大16跳

RIP的最大跳数为16跳,也就是当metric为16时候,说明该网络不可达互相踢皮球16次之后,路由不可达

3.路由中毒

R1一旦发现A不见了,于是马上把A的metric值变成16(RIP最多允许15跳,也就是说,当metric值为16的时候,则说明该路由不可达) 。R2一看,原来A中毒了,于是果断地把A抛弃了。就这样,A被R1放弃,然后被R2抛弃,环路也就没有了。

4.毒性逆转

在R2得知R1发过来的A路由是一条“中毒路由”的时候,它便把自己化作跳板,在把“路由A已经中毒了,大家快远离它”这条信息,发给它的小伙伴们。让大家都知道A是不可达的。这样,大家就很都能很速度的做出反映,及时的把A路由丢出自己的路由表了。

5.抑制计时器

这个算是对路由中毒的“缓刑”。因为它怕A是由于不小心碰了一下接口,松了一下或者其他什么意外而导致对R1的失去连接。要是快刀斩乱麻地处理掉的话,万一几秒钟后它又恢复 了,那岂不是又要通告一次,麻烦。所以,就干脆给你180S(抑制计时器)的时间给你等待一下,A要是能够及时回到R1的怀抱,R1就不会发中毒信息。则大家的都不知道,也就不会引起整个网络的动荡了

继续阅读