【发布时间】:2012-05-05 22:36:02
【问题描述】:
根据 Stevens (TCP/IP Illustrated),traceroute 程序使用增量 TTL(1、2、3 等)向目标主机发送 UDP 数据包,以从中获取中间跃点信息ICMP TTL EXPIRED 消息。
“destination reached”条件是一个 ICMP PORT UNREACHABLE 消息,因为 traceroute 寻址一个具有高数字的随机端口(即:不太可能有人在那里监听)
所以我的问题是:是否有技术原因(缺点、RFC 等)使用 UDP 数据包而不是使用例如 ICMP echo request 消息(增加 TTL)并使用 echo reply回答作为结束条件?
我知道 ICMP 回显回复可能会被中间的防火墙或其他网络设备过滤掉,但我想这也可能发生在 UDP 数据包上;)
非常感谢
塞尔吉奥
【问题讨论】:
标签: networking udp icmp traceroute