第九章 IP选路

IP搜索路由表的步骤:

1.   搜索匹配的主机地址;

2.   搜索匹配的网络地址;

3.   搜索默认表项(默认表项一般在路由表中被指定为一个网络表项,其网络号为 0)。 匹配主机地址步骤始终发生在匹配网络地址步骤之前。

对于一个给定的路由器,可以打印出五种不同的标志( flag

1.   U  该路由可以使用。

2.   G  该路由是到一个网关(路由器)。如果没有设置该标志,说明目的地是直接相连的。

3.   H 该路由是到一个主机,也就是说,目的地址是一个完整的主机地址。如果没有设置该 标志,说明该路由是到一个网络,而目的地址是一个网络地址:一个网络号,或者网 络号与子网号的组合。

4.   D  该路由是由重定向报文创建的。

5.   M  该路由已被重定向报文修改。

参考记数 RefcntReference count列给出的是正在使用路由的活动进程个数。面向连接 的协议如 TCP在建立连接时要固定路由。如果在主机 svr4slip之间建立 Telnet连接,可以 看到参考记数值变为 1。建立另一个 Telnet连接时,它的值将增加为 2,依此类推。

下一列(“use”)显示的是通过该路由发送的分组数。如果我们是这个路由的唯一用户,那么运行 ping程序发送 5个分组后,它的值将变为 5。最后一列 interface是本地接口的名字。

9.5     ICMP重定向差错

IP数据报应该被发送到另一个路由器时,收到数据报的路由器就要发送 ICMP重定向差错报文给 IP数据报的发送端。

9.6    ICMP路由器发现报文

在本章前面已提到过一种初始化路由表的方法,即在配置文件中指定静态路由。这种方 法经常用来设置默认路由。另一种新的方法是利用 ICMP路由器通告和请求报文。

一般认为,主机在引导以后要广播或多播传送一份路由器请求报文。一台或更多台路由器响应一份路由器通告报文。另外,路由器定期地广播或多播传送它们的路由器通告报文允许每个正在监听的主机相应地更新它们的路由表。

9.6.1   路由器操作

当路由器启动时,它定期在所有广播或多播传送接口上发送通告报文。准确地说,这些 通告报文不是定期发送的,而是随机传送的,以减小与子网上其他路由器发生冲突的概率。 一般每两次通告间隔 450秒和600秒。一份给定的通告报文默认生命周期是 30分钟。

使用生命周期域的另一个时机是当路由器上的某个接口被关闭时。在这种情况下,路由 器可以在该接口上发送最后一份通告报文,并把生命周期值设为 0

除了定期发送主动提供的通告报文以外,路由器还要监听来自主机的请求报文,并发送 路由器通告报文以响应这些请求报文。

如果子网上有多台路由器,由系统管理员为每个路由器设置优先等级。例如,主默认路 由器就要比备份路由器具有更高的优先级。

9.6.2  主机操作

主机在引导期间一般发送三份路由器请求报文,每三秒钟发送一次。一旦接收到一个有 效的通告报文,就停止发送请求报文。

主机也监听来自相邻路由器的请求报文。这些通告报文可以改变主机的默认路由器。另外,如果没有接收到来自当前默认路由器的通告报文,那么默认路由器会超时。

只要有一般的默认路由器,该路由器就会每隔 10分钟发送通告报文,报文的生命周期是30分钟。这说明主机的默认表项是不会超时的,即使错过一份或两份通告报文。

9.7     小结

IP路由操作对于运行 TCPIP的系统来说是最基本的,不管是主机还是路由器。路由表项 的内容很简单,包括: 5 bit 标志、目的 IP地址(主机、网络或默认)、下一站路由器的 IP地址(间接路由)或者本地接口的 IP地址(直接路由)及指向本地接口的指针。主机表项比网络表项具有更高的优先级,而网络表项比默认项具有更高的优先级。

系统产生的或转发的每份 IP数据报都要搜索路由表,它可以被路由守护程序或 ICMP重定 向报文修改。系统在默认情况下不转发数据报,除非进行特殊的配置。用 route命令可以进 入静态路由,可以利用新 ICMP路由器发现报文来初始化默认表项,并进行动态修改。主机在 启动时只有一个简单的路由表,它可以被来自默认路由器的 ICMP重定向报文动态修改。

你可能感兴趣的:(第九章 IP选路)