路由信息协议
维基百科,自由的百科全书
本篇文章主要是关于IPv4和IPv6上所使用的路由信息协议的介绍.
路由信息协议(RIP)是一种使用最广泛的内部网关协议(IGP).IGP是在内部网络上使用的路由协议(在少数情形下,也可以用于连接到因特网的网络),它可以通过不断的交换信息让路由器动态的适应网络连接的变化,这些信息包括每个路由器可以到达哪些网络,这些网络有多远等.
虽然RIP仍然经常的被使用,但大多数人认为它将会而且正在被诸如OSPF和IS-IS这样的路由协议所取代.当然,我们也看到EIGRP, 一种和RIP属于同一基本协议类(目的向量路由协议)但更具适应性的路由协议,也得到了一些使用.
目录 |
[编辑] 历史
RIP所使用的路由算法是Bellman-Ford算法.这种算法最早被用于一个计算机网络是在1969年,当时是作为ARPANET的初始路由算法.
RIP是由网关信息协议(Xerox Parc的用于互联网工作的PARC通用数据包协议簇的一部分)发展过来的,可以说网关信息协议是RIP的最早的版本.后来的一个版本才被命名为路由信息协议,是Xerox网络服务协议簇的一部分.
[编辑] 運作原理
[编辑] RIP封包格式
0 1 2 3 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | command (1) | version (1) | must be zero (2) | +---------------+---------------+-------------------------------+ | address family identifier (2) | must be zero (2) | +-------------------------------+-------------------------------+ | IP address (4) | +---------------------------------------------------------------+ | must be zero (4) | +---------------------------------------------------------------+ | must be zero (4) | +---------------------------------------------------------------+ | metric (4) | +---------------------------------------------------------------+
[编辑] 版本
目前RIP共有三個版本,RIPv1, RIPv2, RIPng。
RIPv1使用classful路由,定義在[RFC 1508]中。在它的路由更新(Routing Updates)中並不帶有子網路的資訊,因此它無法支援可變長度的子網路遮罩。這個限制造成在RIPv1的網路中,在同級網路下無法使用不同的子網路遮罩。換句話說,在同一個網路下所有的子網路數目都是相同的。另外,它也不支援對路由過程時的認證,使得RIPv1有一些輕微的弱點,有機會遭受到可能的攻擊。
為了修正RIPv1的缺陷,RIPv2在1994年被提出,將子網路的資訊包含在內,透過這樣的方式提供Classless Inter-Domain Routing,不過對於最大節點數15的這個限制仍然被保留著。另外針對安全性的問題,RIPv2也提供一套方法,未透過加密來達到認證的效果。而之後[RFC 2082]也定義了利用MD5來達到認證的方法。
RIPv2的相關規定在[RFC 2453] or STD56。
RIPng則被定義在[RFC 2080],主要是針對IPv6做一些延伸的規範。