当我使用boost asio icmp示例http://www.boost.org/doc/libs/1_40_0/doc/html/boost_asio/example/icmp/ping.cpp来ping一些ip地址时,我设置了一个小ttl。I set ttl to 1 in boost icmp example当我收到回复icmp数据包时,我在标题中找到了标识符不匹配PID(我在icmp请求包中将标识符设置为PID),标识符为零(icmp标头中的类型为11)。但是当我设置一个如128的ttl时,icmp标题中的标识符匹配PID。有谁知道为什么? 我将非常感谢你的帮助。
答案 0 :(得分:0)
我在http://www.zytrax.com/tech/protocols/tcp.html找到了答案。 当icmp标头中的类型设置为11时,这意味着time_exceeded。ICMP TIME EXCEEDED。 4-7的必须为零。