(20分还可酌情加分) ....IP问题,高手给详解一下
来源:百度知道 编辑:UC知道 时间:2024/05/25 10:59:56
有两种可能
一种是路由做了备份,是个虚拟的ip
第二是因为路由选择这为最短路径值 又返回了数据包
--------------------------------------------------------------------------------
如下是我汇总和整理后的资料
TraceRoute的工作原理:
知识基础:当路由器接收到一个TTL为0或者1的IP数据报的时候,路由器就不再转发这个数据了,而直接丢弃,并且发送一个ICMP“超时”信息给源主机。Tracert程序的关键就是这个回显的ICMP报文的IP报头的信源地址就是这个路由器的IP地址。
源首先给目的主机发送一个TTL=1的数据包,而经过的第一个路由器收到这个数据包以后,就自动把TTL减1,而TTL变为0以后,路由器就把这个包给抛弃了,并同时产生 一个ICMP TTL-expired ( ICMP type 11)超时数据报给主机。主机收到这个数据报以后再发一个TTL=2的UDP数据报给目的主机,然后刺激第二个路由器给主机发ICMP数据 报。如此往复直到到达目的主机。这样,traceroute就拿到了所有的路由器ip。Traceroute提取发 ICMP TTL到期消息设备的IP地址并作域名解析
有人要问,我怎么知道UDP到没到达目的主机呢?这就涉及一个技巧的问题,TCP和UDP协议有一个端口号定义,而普通的网络程序只监控少数的几个号码较 小的端口,比如说80,比如说23,等等。而traceroute发送的是端口号>32768的UDP报,所以到达目的主机的时候,目的 主机只能发送一个端口不可达的ICMP数据报给主机。主机接到这个报告以后就知道,主机到了,所以,说Traceroute是一个骗子一点也不为过
traceroute 打印出返回 ICMPTimeExceeded 消息路径中路由器的排序列表。 windows下如果使用tracert - d 开关(告诉 TRACERT 不要每 IP 地址上执行 DNS 查找), 报告的近侧接口的路由器 IP 地址。
注:Ping记录路由器的出接口,而traceroute通常记录进入