🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
下面的例子是作者观察到的,把它作为第9章讨论ICMP间接报文的起点。在子网140.252.1上ping主机aix(在主机sun上通过拨号SLIP连接可以访问),并带有记录路由选项。 在slip主机上运行有如下输出结果: ![](https://box.kancloud.cn/2016-04-13_570de3570c7ee.png) 我们已经在主机bsdi上运行过这个例子。现在选择slip来运行它,观察RR清单中所有的9个IP地址。 在输出中令人感到疑惑的是,为什么传出的数据报(ICMP回显请求)直接从netb传到aix,而返回的数据报(ICMP回显应答)却从aix开始经路由器gateway再到netb?这里看到的正是下面将要描述的IP选路的一个特点。数据报经过的路由如图7 - 6所示。 问题是aix不知道要把目的地为子网140.252.13的IP数据报发到主机netb上。相反,aix在它的路由表中有一个默认项,它指明当没有明确某个目的主机的路由时,就把所有的数据报发往默认项指定的路由器gateway。路由器gateway比子网140.252.1上的任何主机都具备更强的选路能力(在这个以太网上有超过150台主机,每台主机的路由表中都有一个默认项指向路由器gateway,这样就不用在每台主机上都运行一个选路守护程序)。 这里没有应答的一个问题是为什么gateway不直接发送ICMP报文重定向到aix(9.5节),以更新它的路由表?由于某种原因(很可能是由于数据报产生的重定向是一份ICMP回显请求报文),重定向并没有产生。但是如果我们用Telnet登录到aix上的daytime服务器,ICMP就会产生重定向,因而它在aix上的路由表也随之更新。如果接着执行ping程序并带有记录路由选项,其路由显示表明数据报从netb到aix,然后返回netb,而不再经过路由器gateway。 在9.5节中将更详细地讨论ICMP重定向的问题。 ![](https://box.kancloud.cn/2016-04-13_570de357277d0.png)