traceroute命令(网络命令traceroute的作用是( ))
本文目录
- 网络命令traceroute的作用是( )
- Linux系统中traceroute命令使用详解
- 高分悬赏--请网络高手来解读这个命令traceroute
- traceroute和tracert的区别是什么
- 【traceroute】关于traceroute(路由追踪)的原理分析
网络命令traceroute的作用是( )
【答案】:C该诊断实用程序通过向目的地发送具有不同生存时间(TTL)的 Internet 控制信息协议 ICMP回应报文,以确定至目的地的路由。
Linux系统中traceroute命令使用详解
Linux系统中traceroute命令可以追踪到网络数据包的路由途径。下面由我为大家整理了linux系统中traceroute命令使用详解,希望对大家有帮助!
Linux系统中traceroute命令使用详解
1.命令格式:
traceroute
2.命令功能:
traceroute 指令让你追踪网络数据包的路由途径,预设数据包大小是40 Bytes, 用户可另行设置。
具体参数格式:traceroute
3.命令参数
-d 使用socket 层级的排错功能
-f 设置第一个检测数据包的存活数值TTL的大小
-F 设置勿离段位 ----我也不知道啥是勿离段位,查了下没查到什么信息^^
-g 设置来源路由网关,最多可设置8个
-i 使用指定的网络界面送出数据包
-I 使用ICMP回应取代UDP资料信息
-m 设置检测数据包的最大存活数值TTL 的大小
-n 直接使用IP地址而非主机名称
-p 设置UDP传输协议的通信端口
-r 忽略普通的routing table ,直接将数据包送到远端主机上
-s 设置本地主机送出数据包的IP地址
-t 设置检测数据包的TOS数值
-v 详细显示指令的执行过程
-w 设置等待远端主机回报的时间
-x 开启或关闭数据包的正确性检验
linux系统中traceroute命令实例
实例1:traceroute 用法简单,最常用的用法
命令:traceroute www.google.com
说明:
记录按序列号从1开始,每个记录就是一跳,每跳表示一个网关,我们看到每行有三个时间,单位是 ms,其实就是 -q 的默认参数。探测数据包向每个网关发送三个数据包后,网关响应后返回的时间;如果您用 traceroute -q 4 www.google.com, 表示向每个网关发送4个数据包
有时我们 traceroute 一台主机时,会看到有一些行是以星号表示的。出现这种情况,可能是防火墙封掉了 ICMP的返回信息,所以我们得不到什么相关的数据包返回数据。
有时我们在某一网关处延时比较长,有可能是某台网关比较阻塞,也可能是物理设备本身的原因,当然如果某台DNS出现问题时,不能解析主机名、域名时,也会有延时长的现象;您可以加 -n 参数来避免DNS 解析,以 IP格式 输出数据。
如果在局域网中的不同网段之间,我们可以通过 traceroute 来排查问题所在,是主机的问题还是网关的问题。如果我们通过远程来访问某台服务器遇到问题时,我们用到 traceroute 追踪数据包所经过的网关,提交 IDC 服务商,也有助于解决问题;但目前看来国内解决这样的问题是比较困难的,就是我们发现问题所在,IDC服务商也不可能帮助我们解决。
实例2:跳数设置
命令:
traceroute -m 10 www.baidu.com
实例3:只显示IP 地址,不查主机名DNS
命令: traceroute -n www.baidu.com
实例4:探测包使用的基本UDP端口设置6888
命令: traceroute -p 6888 www.baidu.com
实例5:把探测包的个数设置为4个
命令:traceroute -q 4 www.baidu.com
实例6:绕过正常的路由表,直接发送到网络相连的主机
命令:traceroute -r www.baidu.com
实例7:把对外发探测包的等待响应时间设置为3秒
命令:traceroute -w 3 www.baidu.com
补充:linux系统中traceroute 的工作原理
traceroute 程序的设计是利用 ICMP 及IP header 的TTL(time to live)栏位(field)。首先,traceroute 送出一个 TTL 是1 的IP datagram(每次送的的是3个 40字节的包,包括源地址,目的地址和包发出的时间标签)到目的地,当路径上的第一个路由器(router)收到这个 datagram 时,它将TTL减少 1,此时,TTL变为0了,所以该路径会将次 datagram 丢掉,并送回一个 【ICMP time exceeded】消息,traceroute 收到这个消息后,便知道这个路由器存在于这个路径上,接着traceroute 再送出另一个 TTL为 2 的 datagram ,发现第二个路由器,然后一直重复执行这种操作,直到某个datagram 抵达目的地。
在traceroute 送出 UDP datagram 到目的地时,它所选择送达的 port number 是一个一般应用程序都不会用的号码,所以当此UDP datagram到达目的地后该主机会送回一个 ICMP port unreachable 的消息,而当traceroute 收到这个消息时,便知道目的地已经到达,所以 traceroute 在 server 端也就没有所谓的 daemon 程式。
traceroute 通过计算 ICMP TTL 到期消息设备的IP 地址并做域名解析。每次,traceroute 都打印出一系列数据,包括所经过的路由设备的域名及 IP 地址,三个包每次来回所花时间。
高分悬赏--请网络高手来解读这个命令traceroute
分类: 电脑/网络 》》 互联网 问题描述: D:\》tracert -d 60.28.193.70 Tracing route to 60.28.193.70 over a maximum of 30 hops 1 《1 ms 《1 ms 《1 ms 211.68.120.1 2 《1 ms 《1 ms 《1 ms 202.112.5.177 3 1 ms 1 ms 《1 ms 202.112.53.73 4 《1 ms 《1 ms 《1 ms 202.112.53.178 5 41 ms 41 ms 41 ms 202.38.123.22 6 41 ms 41 ms 41 ms 211.94.55.2 此跳已经出了教育网了,教育网要封其地址,根本就出不去教育网的。 7 1 ms 1 ms 《1 ms 211.94.95.206 8 1 ms 《1 ms 1 ms 211.151.224.85 9 3 ms 3 ms 3 ms 211.151.224.174 10 * * * Request timed out. 11 * * * Request timed out. 12 * * * Request timed out. 具体连接bbs.vip.edu/viewtopic.php?t=2721请问这能说明教育网没有封NETPAS的IP吗?如果不是他们封的话,那为什么用非教育网IP可以登陆NETPAS呢 解析: 看来这个事情闹的真实沸沸扬扬。从各种渠道汇总的结果应该是这样的。 教育网针对这个地址段做的是源地址路由方面的封锁,所以在TRACE记录中,只要这一跳返回的IP地址不是被封杀的就可以正常返回。 那我又是如何知道是源地址路由封杀呢?是因为,我通过这个代理进入不了教育网内部。下面是TRACE的结果。 C:\\》tracert -d vip.edu Tracing route to vip.edu over a maximum of 30 hops: 1 13 ms 12 ms 13 ms 10.101.160.1 2 * 14 ms 14 ms 60.28.193.66 3 * 16 ms 15 ms 211.151.224.177 4 15 ms 15 ms 15 ms 211.151.224.86 5 16 ms 15 ms 15 ms 211.151.224.158 6 * * * Request timed out. 7 * * * Request timed out. 8 * * * Request timed out. 9 * 从我的TRACE的结果和你的结果一对比,就说明是标准的源地址封杀,封杀位置在:211.94.95.206 这个路由地址上面。
traceroute和tracert的区别是什么
您好,很高兴为您解答。\x0d\x0a\x0d\x0a一、应用环境不同\x0d\x0a\x0d\x0atracert是应用在windows下。\x0d\x0a\x0d\x0atraceroute则是应用在linux/BSD/router/UNIX下。 \x0d\x0a\x0d\x0atracert是Windows下常用的命令行工具,UNIX下的是traceroute。都是基于UDP协议的路由探测。\x0d\x0aTracert(跟踪路由)是路由跟踪实用程序,用于确定 \x0d\x0aIP 数据报访问目标所采取的路径。Tracert 命令用 IP 生存时间 (TTL) 字段和 ICMP 错误消息来确定从一个主机到网络上其他主机的路由。\x0d\x0a工作原理和过程:\x0d\x0a通过向目标发送不同 \x0d\x0aIP 生存时间 (TTL) 值的“Internet 控制消息协议 (ICMP)”回应数据包,Tracert \x0d\x0a诊断程序确定到目标所采取的路由。要求路径上的每个路由器在转发数据包之前至少将数据包上的 TTL 递减 1。数据包上的 TTL 减为 0 \x0d\x0a时,路由器应该将“ICMP 已超时”的消息发回源系统。 \x0d\x0a Tracert \x0d\x0a先发送 TTL 为 1 的回应数据包,并在随后的每次发送过程将 TTL 递增 1,直到目标响应或 TTL \x0d\x0a达到最大值,从而确定路由。通过检查中间路由器发回的“ICMP 已超时”的消息确定路由。某些路由器不经询问直接丢弃 TTL 过期的数据包,这在 Tracert \x0d\x0a实用程序中看不到。 \x0d\x0a Tracert \x0d\x0a命令按顺序打印出返回“ICMP 已超时”消息的路径中的近端路由器接口列表。如果使用 -d 选项,则 Tracert 实用程序不在每个 IP 地址上查询 \x0d\x0aDNS。 \x0d\x0a \x0d\x0a\x0d\x0aTraceroute程序的设计是利用ICMP及IP \x0d\x0aheader的TTL(Time To Live)栏位(field)。首先,traceroute送出一个TTL是1的IP \x0d\x0adatagram(其实,每次送出的为3个40字节的包,包括源地址,目的地址和包发出的时间标签)到目的地,当路径上的第一个路由器(router)收到这个datagram时,它将TTL减1。此时,TTL变为0了,所以该路由器会将此datagram丢掉,并送回一个「ICMP \x0d\x0atime exceeded」消息(包括发IP包的源地址,IP包的所有内容及路由器的IP地址),traceroute \x0d\x0a收到这个消息后,便知道这个路由器存在于这个路径上,接着traceroute 再送出另一个TTL是2 的datagram,发现第2 个路由器...... \x0d\x0atraceroute 每次将送出的datagram的TTL 加1来发现另一个路由器,这个重复的动作一直持续到某个datagram \x0d\x0a抵达目的地。当datagram到达目的地后,该主机并不会送回ICMP time \x0d\x0aexceeded消息,因为它已是目的地了,那么traceroute如何得知目的地到达了呢?\x0d\x0aTraceroute在送出UDP \x0d\x0adatagrams到目的地时,它所选择送达的port number 是一个一般应用程序都不会用的号码(30000 以上),所以当此UDP datagram \x0d\x0a到达目的地后该主机会送回一个「ICMP port unreachable」的消息,而当traceroute \x0d\x0a收到这个消息时,便知道目的地已经到达了。所以traceroute 在Server端也是没有所谓的Daemon 程式。\x0d\x0aTraceroute提取发 \x0d\x0aICMP TTL到期消息设备的IP地址并作域名解析。每次,Traceroute都打印出一系列数据,包括所经过的路由设备的域名及 \x0d\x0aIP地址,三个包每次来回所花时间。\x0d\x0aTraceroute \x0d\x0a有一个固定的时间等待响应(ICMP TTL到期消息)。如果这个时间过了,它将打印出一系列的*号表明:在这个路径上,这个设备不能在给定的时间内发出ICMP \x0d\x0aTTL到期消息的响应。然后,Traceroute给TTL记数器加1,继续进行。\x0d\x0a\x0d\x0a二、探测方法及探测的数据类型不同\x0d\x0a\x0d\x0a默认情况下,tracert是向目的地址发出ICMP请求回显数据包,而traceroute是向目的地址的某个端口(大于30000)发送UDP数据报。\x0d\x0a\x0d\x0a如若满意,请点击右侧【采纳答案】,如若还有问题,请点击【追问】\x0d\x0a\x0d\x0a希望我的回答对您有所帮助,望采纳!\x0d\x0a\x0d\x0a ~ O(∩_∩)O~
【traceroute】关于traceroute(路由追踪)的原理分析
traceroute 主要利用 IP 数据包的 TTL 字段值 + ICMP 来实现,它发送的用于探测网络路径的数据包的 IP 之上的协议可以是 UDP、TCP或ICMP。 协议表示该数据报文所携带的数据所使用的协议类型,占 8 位。 该字段可以方便目的主机的 IP 层知道按照什么协议来处理数据部分。不同的协议有专门不同的协议号。 例如,TCP 的协议号为 6,UDP 的协议号为 17,ICMP 的协议号为 1。 不同模式下,探测过程中设计的数据包如下: UDP 探测数据包(目标端口大于 30000) + 中间网关发回 ICMP TTL 超时数据包 + 目标主机发回 ICMP Destination Unreachable 数据包 TCP 数据包 ICMP Echo (ping) Request 探测数据包 + 中间网关发回 ICMP TTL 超时数据包 + 目标主机发回 ICMP Echo (ping) reply 数据包 UDP 端口扫描比较麻烦,它同TCP不一样,因为它不需要建立连接。 我们向 目标主机 的固定端口发送UDP数据包,可以得到 两种结果: 在运营商的路由器上,UDP 与 ICMP 的待遇大不相同。 为了利于 troubleshooting,ICMP ECHO Request/Reply 是不会封的,而 UDP 则不同。 UDP 常被用来做网络攻击,因为 UDP 无需连接,因而没有任何状态约束它,比较方便攻击者伪造源 IP、伪造目的端口发送任意多的 UDP 包,长度自定义。 所以运营商为安全考虑,对于 UDP 端口常常采用白名单 ACL,就是只有 ACL 允许的端口才可以通过,没有明确允许的则统统丢弃。比如允许 DNS/DHCP/SNMP 等。 当网络工程师用Ping时,Ping在偷摸做啥事儿? ping命令是依托于 ICMP协议的, ICMP协议的存在就是为了更高效的转发 IP数据报和提高交付成功的机会。 ping命令除了依托于 ICMP,在局域网下还要借助于 ARP协议, ARP协议能根据 IP地址反查出计算机的 MAC地址。 另外 ARP是有缓存的,为了保证 ARP的准确性,计算机会更新ARP缓存。 有时我们traceroute 一台主机时,会看到有一些行是以星号表示的。 出现这样的情况,可能是防火墙封掉了ICMP的返回信息,所以我们得不到什么相关的数据包返回数据。 有些路由器会隐藏的自己的位置,不让ICMP Timeout的消息通过,结果就是在那一跳上始终会显示星号。此外服务器也可以伪造traceroute路径的,不过一般应用服务器也没有理由这么做,所以Traceroute的结果还是能够为网络分析提供一些参考的。 Linux下traceroute程序默认发送的探测包为UDP协议,windows下tracert、mtr,以及Linux下mtr默认都发送的是icmp的数据包,并不是所有网关都会如实返回 ICMP 超时报文。处于安全性考虑,大多数防火墙以及启用了防火墙功能的路由器缺省配置为不返回各种 ICMP 报文,其余路由器或交换机也可能被管理员主动修改配置变为不返回 ICMP 报文。因此 Traceroute 程序不一定能拿到所有的沿途网关地址。所以,当某个 TTL 值的数据包得不到响应时,并不能停止这一追踪过程,程序仍然会把 TTL 递增而发出下一个数据包。这个过程将一直持续到数据包发送到目标主机,或者达到默认或用参数指定的追踪限制(maximum_hops 默认最大为30)才结束追踪 如果在局域网中的不同网段之间,我们可以通过traceroute 来排查问题所在,是主机的问题还是网关的问题。 如果我们通过远程来访问某台服务器遇到问题时,我们用到traceroute 追踪数据包所经过的网关,提交IDC服务商,也有助于解决问题;但目前看来在国内解决这样的问题是比较困难的,就是我们发现问题所在,IDC服务商也不可能帮助我们解决。 动态图解traceroute(路由追踪)的原理与实现***隐藏网址*** IP数据报格式详解***隐藏网址*** 解析为何traceroute探测的时候中间有些节点探测不到?***隐藏网址*** traceroute使用与实现原理分析***隐藏网址*** traceroute(路由追踪)的原理及实现***隐藏网址*** 为什么目标地址ping能通,但是tracetoute不通?***隐藏网址*** 只会用ping测试网络通不通?高级网工还会这么用***隐藏网址*** 当网络工程师用Ping时,Ping在偷摸做啥事儿?***隐藏网址*** traceroute原理***隐藏网址*** TCP/UDP/ICMP Traceroute的原理及区别***隐藏网址***
更多文章:
app测试和web测试区别(WEB测试与APP测试有哪些异同)
2024年7月21日 14:18
textbooks是什么意思(textbook prounce是什么意思)
2024年7月4日 17:16
易语言破解版编译几次就不能用了(易语言 点击静态编译就停止工作怎么办)
2024年9月27日 20:50
winform第三方控件(winform 怎么使用 第三方控件)
2024年7月22日 02:57
format函数头文件(c++怎样格式化输出数字,求教如题 谢谢了)
2024年8月7日 16:20
cpu编程语言(计算机里的CPU可以直接运行人类编写的程序吗为什么说编程语言不是和计算机交)
2024年7月22日 04:24
contexts(修复selinux contexts是什么意思)
2024年7月30日 07:26
数据库工程师和软件工程师哪个好(软件设计师,数据库系统工程师 和网络工程师哪个更好)
2024年7月31日 08:25
brochure是什么意思(印刷中 24pp 4/4 brochure 是什么意思)
2024年7月24日 03:32
assertequals java(请问Java中有两个String,如何从其中一个String删除另一个String中包含的内容)
2024年7月24日 07:07
json集合格式(一个java对象内包含一个对象集合 用json-lib框架怎么转换成JSON数据格式)
2024年9月27日 09:45
html弹窗广告制作(网页出现付费预测彩票的弹窗广告,应当怎样做)
2024年7月11日 16:22