1. traceroute首先向目标地址发送TTL为1的IP包, 经过的第一个路由器将TTL减1, 丢弃该包并向源地址发送ICMP time exceeded消息, 这样就检索出来路径里的第一个路由. traceroute再向目标地址发送TTL为2的IP包, 这样就依次检索出路径里的每一个路由. 最后目标地址发送port unreachable消息标识路径已经检索完成.
2. traceroute也可以在IP头的IP option里指定严格路径和松散路径. 严格路径规定了IP包精确通过的路径; 松散路径规定了IP包必须通过的路由器. 指定的数目也受到IP option大小的限制, 只能指定9个.
3. 如果主机或路由器不知道如何发送IP包(没有默认路由项), 就会产生ICMP error, 如果该IP包是由自己产生, 则发送”network unreachable” ICMP消息; 如果不是就发送”host unreachable” ICMP消息.
4. route命令, Route守护进程(通常是一个用户进程, 用来和其他路由器通过路由协议交换路由信息) 和ICMP redirect消息都会改变路由表. 还有一个ICMP route discovery消息, 可以通过advertisement和新boot起来的机器solicited消息更新默认路由项. 这个route discovery功能通常也是由一个用户守护进程来实现的.
5. 广泛使用的IGP包括RIP(使用UDP端口520)和OSFP; 广泛使用的EGP包括EGP和BGP.
网络接口初始化的时候广播RIP request. Route守护进程周期性地发送到不同网络的metrics,从而更新网络中其他路由器的路由.