《TCP/IP详解 卷1:协议》第八章 Traceroute程序
2017-03-12 11:30
801 查看
1.引言
Traceroute程序可以让我们看到IP数据报从一台主机传到另一台主机所经过的路由。(尽管不能保证从源端发往目的端的两份连续的IP数据报具有相同的路由,但是大多数情况下是这样的。)
Traceroute程序还可以让我们使用IP源路由选项。
2.Traceroute程序的操作
traceroute程序使用ICMP报文和IP首部的TTL字段来实现。运行原理:
(1)首先发送TTL为1的IP数据报给目标地址,处理这个IP数据报的第一个路由器把TTL减1为0,丢弃该数据报,并返回一份超时ICMP报文,由此得到第一个路由器的IP(入口IP).
(2)再次发送TTL为2的IP数据报给目标地址,第二个路由器把TTL减1为0,步骤同上,通过返回的超时ICMP报文,得到了第二个路由器的IP地址.
(3)然后依次发送TTL为3,4…n的数据报,分别记录返回的超时ICMP报文的IP,即对应跳的路由IP.
(4)最终达到目标地址.判断依据:发送的IP数据报封装的为UDP数据报,【选择的是一个不可能使用的UDP端口】,当到达目标地址时,目标地址将返回’端口不可达’的ICMP报文,而不是路由返回的超时ICMP报文.
有两种不同的ICMP“超时”报文,它们的code字段不同。一种是在TTL值等于0时产生的,其code字段为0,另一种是主机在组装分片时发生超时而发送的“组装报文超时”报文,其code字段为1.
3.IP源站选路选项
源站选路的思想是由发送者指定路由,它有两种形式:严格的源路由选择,发送端指明IP数据报所必须采用的确切路由,如果发现下一个指定的路由器不在其直接连接的网络上,就返回一个“源站路由失败”的ICMP差错报文。
宽松的源站选路,可以指明一个数据报经过的IP地址清单。
相关文章推荐
- 《TCP/IP详解 卷1:协议》读书笔记 第八章 Traceroute程序
- 《TCP/IP详解 卷1:协议》读书笔记 第八章 Traceroute程序
- TCP/IP详解,卷1:协议,第八章:Traceroute程序
- 《TCP/IP详解-协议》(7、8)Ping、Traceroute程序
- 《TCP/IP详解 卷一:协议》读书笔记--Traceroute程序
- 《TCP/IP详解 卷1:协议》读书笔记 第8章 Traceroute程序
- TCP/IP详解卷1:协议(第七章:Ping程序) || (第八章:Traceroute程序)
- 【TCP/IP详解】第16章 BOOTP:引导程序协议
- 《TCP/IP详解》学习笔记(四):ICMP 协议、ping 和 Traceroute
- TCP/IP详解 卷I:协议 のping和traceroute
- 《TCP/IP详解 卷1:协议》 读书笔记 第七章 Ping程序
- 【TCP/IP详解】第8章 Traceroute程序
- 《TCP/IP详解 卷1:协议》 读书笔记 第七章 Ping程序
- 《TCP/IP详解 卷一:协议》读书笔记--Ping程序
- TCP/IP详解,卷1:协议,第七章:Ping程序
- TCP/IP之ICMP(Internet控制报文协议),Ping程序和Traceroute程序
- TCP/IP详解卷1 读书笔记:第八章 Traceroute程序
- 《TCP/IP详解 卷1:协议》第七章 Ping程序
- 《TCP/IP详解 卷1:协议》 读书笔记 第7章 Ping程序
- 使用IP选项实现Traceroute程序