现代网络广泛使用防火墙,导致传统路由跟踪工具发出的(ICMP应答(ICMP echo)或UDP)数据包都被过滤掉了,所以无法进行完整的路由跟踪。尽管如此,许多情况下,防火墙会准许反向(inbound)TCP数据包通过防火墙到达指定端口,这些端口是主机内防火墙背后的一些程序和外界连接用的。通过发送TCP SYN数据包来代替UDP或者ICMP应答数据包,tcptraceroute可以穿透大多数防火墙。
首先tcptraceroute 依赖另外一个包 libpcap
[root@localhost ~]# yum install -y libpcap //yum安装libpcap
安装完成后
上传tcptraceroute 的rpm包,和tcpping 工具
[root@localhost ~]# rpm -ivh tcptraceroute-1.5-0.beta7.el6.rf.x86_64.rpm //rpm安装tcptraceroute
不出意外的话应该不会报错
下面来说说 该命令的用法
-i 指定接口
-f 设置开始TTL值(第一条显示的路径)
-l 包长度
-q 每一跳延时查询的次数(default 3)
-t 设置TOS(服务类型)可用于传出数据包。默认 未设置
-m 设置最大TTL值
-p 指定使用本机的特定端口作为源端口(默认随机)
-s 如果本机有多个IP,可指定使用一个IP进行追踪
-w 等待超时时间
host 必跟参数,可以使用主机名或者IP地址
des port 可选选项,默认使用目的地址的80端口
example: tcptraceroute www.google.com 443 -n -q 1
tcpping 使用tcp协议查网络延时
注意tcpping 的权限,推荐权限设置为655
-d
打印本机每发出一个tcp包的当前时间戳 -c 打印一版纯数字的信息,可以用它来粘贴到excel表格 并制成延时抖动表
-C 另一种格式的纯数字制表信息
-w 设置等待时间(秒) 默认为3秒
-r 设置不管有无tcp包回复,本机间隔多少时间重复发送tcp握手包
这个那啥,可以用作ddos哦?!
-x 设置本机发送多少次tcp包,默认为空 即无限制重复发送
另外,还发现个比较有用的功能
延时默认精确到毫秒小数点后三位,还不错
看出猫腻了吗? 如果host为主机名,那么会每次检查DNS,所以可以把一个主机名下的所有IPv4地址的延时都检查出来
----------------------------------------------------------- --------------------------- ------------
欢迎关注我的微博 http://weibo.com/pco18
您的顶帖是我发帖的动力↘