ICMP 理解相当多的消息,其中许多消息处理错误情况。但是,有一种非常有趣的消息称为重定向消息(Redirect message)。当路由模块检测到另一个主机将其用作网关,但实际上存在更短的路由时,就会生成此消息。例如,启动后,sophus 的路由表可能不完整,仅包含到数学网络、FDDI 主干网以及指向 Groucho 计算中心网关 (gcc1) 的默认路由的路由。因此,任何发往 quark 的数据包都将发送到 gcc1,而不是物理系网关 niels。当收到这样的数据报时,gcc1 会注意到这是一个糟糕的路由选择,并将数据包转发到 niels,同时向 sophus 返回一条 ICMP 重定向消息,告知它更优的路由。
现在,这似乎是一种非常聪明的方法,可以避免手动设置除最基本路由之外的任何路由。但是请注意,依赖动态路由方案(无论是 RIP 还是 ICMP 重定向消息)并不总是一个好主意。ICMP 重定向和 RIP 在验证某些路由信息是否真实方面几乎没有或根本没有给您选择。这使得恶意的不法之徒能够扰乱您的整个网络流量,甚至做更糟糕的事情。因此,某些版本的网络代码将影响网络路由的重定向消息视为仅针对主机路由的重定向消息。