Nginx配置 history 微信商家收款 SQLMAP bash awk routes jvm jquery获取dom对象 java算法培训 matlab定义空矩阵 matlab对数函数 ubuntu查看python版本 matlab生成对角矩阵 bootstrap单选按钮 mysql分区表优劣分析 mysql 导入数据 python安装配置 python语言入门 java语法基础 java运行环境配置 java教材 java格式化字符串 java异常 adobe清理工具 咪咕客户端下载 风火云 millenium 美国地址生成器 pdf安装包官方下载 怎么设置迅雷为默认下载器 js分页 ansys安装教程 js发送http请求 directx卸载 appsync补丁 cad2008汉化包 php完全自学手册 淘宝退货怎么上门取件 谷歌浏览器升级
当前位置: 首页 > 学习教程  > 编程语言

traceroute命令

2021/2/13 20:13:33 文章标签: 测试文章如有侵权请发送至邮箱809451989@qq.com投诉后文章立即删除

traceroute命令 traceroute命令尝试跟踪IP数据包到某个Internet主机的路由,方法是使用一个小ttl(生存时间)启动探测数据包,然后侦听来自网关的ICMP超时回复,它以ttl为1开始探测,并将其增加1,直到获得ICMP port unreac…

traceroute命令

traceroute命令尝试跟踪IP数据包到某个Internet主机的路由,方法是使用一个小ttl(生存时间)启动探测数据包,然后侦听来自网关的ICMP超时回复,它以ttl1开始探测,并将其增加1,直到获得ICMP port unreachableTCP reset,这意味着我们到达了host,或达到了最大值(默认为30跳),在每个ttl设置处发送三个探测(默认),并打印一行,显示ttl、网关地址和每个探测的往返时间,在请求时,地址后面可以有附加信息,如果探测结果来自不同的网关,则会打印每个响应系统的地址,如果在5.0秒内(默认值)没有响应,则会为该探测器打印一个*

语法

traceroute [-46dFITUnreAV] [-f first_ttl] [-g gate,...] [-i device] 
           [-m max_ttl] [-p port] [-s src_addr] [-q nqueries] 
           [-N squeries] [-t tos] [-l flow_label] [-w waittime] 
           [-z sendwait] [-UL] [-D] [-P proto] [--sport=port] [-M method] 
           [-O mod_options] [--mtu] [--back] host [packet_len]

参数

  • -4, -6: 显式强制IPv4IPv6跟踪路由,默认情况下,程序将尝试解析给定的名称,并自动选择适当的协议,如果解析主机名同时返回IPv4IPv6地址,则traceroute将使用IPv4
  • -I, --icmp: 使用ICMP ECHO进行探测。
  • -T, --tcp: 使用TCP SYN进行探测。
  • -d, --debug: 启用套接字级调试,如果内核支持的话。
  • -F, --dont-fragment: 不要对探测数据包进行分段,对于IPv4它还会设置DF位,该位告诉中间路由器也不要进行远程分段。通过packet_len命令参数更改探测数据包的大小,可以手动获取有关单个网络跃点的MTU的信息。从Linux内核2.6.22开始,非碎片化功能(例如-F--mtu)才能正常工作,在该版本之前,IPv6始终是零散的,IPv4只能使用一次(从路由缓存中)发现的最终mtu,它可能小于设备的实际mtu
  • -f first_ttl, --first=first_ttl: 指定要启动的TTL,默认为1
  • -g gate,..., --gateway=gate,...: 告诉traceroute向传出数据包添加IP源路由选项,该选项告诉网络通过指定网关路由数据包(出于安全原因,大多数路由器已禁用源路由),通常允许指定多个网关(以逗号分隔的列表)。对于IPv6允许使用numaddraddr...的形式,其中num是路由报头类型(默认为类型2),注意,根据rfc 5095,现在不赞成使用0型路由头。
  • -i device, --interface=device: 指定traceroute应该通过其发送数据包的接口,缺省情况下,接口是根据路由表选择的。
  • -m max_ttl, --max-hops=max_ttl: 指定traceroute探测的最大跳数(最大生存时间值),默认值为30
  • -N squeries, --sim-queries=squeries: 指定同时发送的探测报文数,同时发送多个探针可以大大提高跟踪路由的速度,默认值为16,注意某些路由器和主机可以使用ICMP速率限制,在这种情况下,指定太大的数字可能会导致某些响应丢失。
  • -n: 在显示IP地址时不要尝试将它们映射到主机名。
  • -p port, --port=port: 对于UDP跟踪,指定traceroute将使用的目的端口号,目标端口号将随每个探针递增,对于ICMP跟踪,指定初始ICMP序列值(每个探针也增加),对于TCP和其他协议,仅指定要连接的(恒定)目标端口,使用tcptraceroute包装程序时,-p指定源端口。
  • -t tos, --tos=tos: 对于IPv4,设置服务类型TOS和优先级值,有用的值是16低延迟和8高吞吐量,要使用某些TOS优先级值,必须是超级用户,对于IPv6,设置流量控制值。
  • -l flow_label, --flowlabel=flow_label: 对IPv6数据包使用指定的flow_label
  • -w MAX,HERE,NEAR, --wait=MAX,HERE,NEAR: 设置等待探测响应的时间,以秒为单位,默认为5.0
  • -q nqueries, --queries=nqueries: 设置每个跃点的探测数据包数,默认值为3
  • -r: 绕过常规路由表,并直接发送到连接的网络上的主机,如果主机不在直接连接的网络上,则返回错误,此选项可用于通过没有路由的接口对本地主机执行ping操作。
  • -s src_addr, --source=src_addr: 选择一个备用源地址,请注意必须选择一个接口的地址,默认情况下使用传出接口的地址。
  • -z sendwait, --sendwait=sendwait: 探测之间的最小时间间隔,默认值为0,如果该值大于10,则以毫秒为单位指定一个数字,否则为秒数,也允许使用浮点值,当某些路由器对ICMP消息使用速率限制时非常有用。
  • -e, --extensions: 显示ICMP扩展名,通用格式为CLASS / TYPE即后跟十六进制转储,所示的MPLS多协议标签交换数据已解析,格式为MPLS:L=label,E=exp_use,S=stack_bottom,T=TTL (with any further objects separated by a slash ("/"))
  • -A, --as-path-lookups: 在路由注册表中执行AS路径查找,并在相应地址后直接打印结果。
  • -M name --module=name: 使用指定的模块(内置或外部)用于traceroute操作,大多数方法都有其快捷方式,例如-I表示-M icmp等。
  • -O OPTS,..., --options=OPTS,...: 将特定于模块的选项OPTS用于traceroute模块,允许几个OPTS,以逗号分隔,例如如果OPTShelp,则打印帮助信息。
  • --sport=num: 将源端口号用于传出数据包,表示为-N 1
  • --fwmark=num: 为传出数据包设置防火墙标记。
  • -U --udp: 使用UDP到特定端口进行路由,而不是每个探针增加端口,默认端口为53
  • -UL: 使用UDP LITE进行路由,默认目标端口为53
  • -D --dccp: 使用DCCP请求进行路由,默认端口为33434
  • -P prot --protocol=prot: 使用协议保护的原始数据包进行路由。
  • --mtu: 沿着被追踪的路径发现MTU,表示为-F-N 1
  • --back: 推断后向路径中的跳数,如果不同则打印。
  • -V: 输出版本信息。
  • --help: 输出帮助信息。

示例

使用traceroute查看路由信息。

traceroute www.google.com

指定IPv4查看路由信息。

traceroute -4 www.google.com

指定要启动的TTL,默认为1

traceroute -f 3 www.google.com

不将IP地址解析为其域名。

traceroute -n www.google.com

设置每个跃点的探测数,默认为3

traceroute -q 1 www.google.com

指定完整的数据包长度,默认是60字节的数据包。

traceroute www.google.com 100

设置要使用的目标端口,默认为33434

traceroute -p 20292 www.google.com

每日一题

https://github.com/WindrunnerMax/EveryDay

参考

https://www.computerhope.com/unix/utracero.htm
https://www.runoob.com/linux/linux-comm-traceroute.html
https://www.geeksforgeeks.org/traceroute-command-in-linux-with-examples/

本文链接: http://www.dtmao.cc/news_show_700416.shtml

附件下载

相关教程

    暂无相关的数据...

共有条评论 网友评论

验证码: 看不清楚?