常用网络测试工具
参考
https://www.cnblogs.com/nmap/p/6148306.html
http://www.cnblogs.com/kerrycode/p/8092942.html
NC
Nc全称netcat,作用:
- 实现任意TCP/UDP端口的侦听,nc可以作为server以TCP或UDP方式侦听指定端口
- 端口的扫描,nc可以作为client发起TCP或UDP连接
- 机器之间传输文件
- 机器之间网络测速
- 伪造包发送给client,例如伪造sip信令
nc的控制参数不少,常用的几个参数如下所列:
- -l
用于指定nc将处于侦听模式。指定该参数,则意味着nc被当作server,侦听并接受连接,而非向其它地址发起连接。 - -p
暂未用到(老版本的nc可能需要在端口号前加-p参数,下面测试环境是centos6.6,nc版本是nc-1.84,未用到-p参数) - -s
指定发送数据的源IP地址,适用于多网卡机 - -u
指定nc使用UDP协议,默认为TCP - -v
输出交互或出错信息,新手调试时尤为有用
6.-w
超时秒数,后面跟数字 - -z
表示zero,表示扫描时不发送任何数据
nc用法1,网络连通性测试和端口扫描
方法1
服务器上输入” nc -l 9999” 代表 启用端口监听9999
客户端输入”telnet 服务器ip:9999”
或客户端输入” nc -vz -w 2 10.0.1.161 9999“
(-v可视化,-z扫描时不发送数据,-w超时几秒,后面跟数字)
方法2
nc可以可以扫描连续端口,这个作用非常重要。常常可以用来扫描服务器端口,然后给服务器安全加固
在A机器上监听2个端口,一个9999,一个9998,使用&符号丢入后台
nc -l 9999 &
nc -l 9998 &
在客户端上输入
nc -vzw 2 ipaddress 9998-999
nc用法2,使用nc传输文件和目录
方法1 传送文件
nc -l port >file //监听port端口接收的文件,把接收到的数据都写到file中
nc ipadress port < file
例:nc -l 9995 >zabbix.txt
nc 10.0.1.162 9995 < zabbix-release.txt
方法2 传送目录
步骤1,B机器先启动监听,如下
A机器给B机器发送多个文件
传输目录需要结合其它的命令,比如tar
经过我的测试管道后面最后必须是 - ,不能是其余自定义的文件名
nc -l 9995 | tar xfvz -
步骤2,A机器打包文件并连接B机器的端口
管道前面表示把当前目录的所有文件打包为 - ,然后使用nc发送给B机器
tar cfz - * | nc 10.0.1.162 9995
原理还是打包之后传输
方法3 测试网速 (这个方法有点烦 没psping好用)
测试网速其实利用了传输文件的原理,就是把来自一台机器的/dev/zero 发送给另一台机器的/dev/null
就是把一台机器的无限个0,传输给另一个机器的空设备上,然后新开一个窗口使用dstat命令监测网速
在这之前需要保证机器先安装dstat工具
yum install -y dstat
然后一个接收一个送出就ok了
nc -l 9991 >/dev/null
nc 10.0.1.161 9991 </dev/zero
使用dstat命令查看当前网速,dstat命令比较直观,它可以查看当前cpu,磁盘,网络,内存页和系统的一些当前状态指标。
我们只需要看下面我选中的这2列即可,recv是receive的缩写,表示接收的意思,send是发送数据,另外注意数字后面的单位B,KB,MB
recv就是每秒接收到的 send就是每秒发送的
PsPing–windows专属
PSTool工具包可以从微软官方网址下载:https://docs.microsoft.com/zh-cn/sysinternals/downloads/psping 。 解压PSTools.zip包后,将psping.exe拷贝到C:\Windows\System32下
psping有四大功能:ICMP Ping、TCP Ping、延迟测试、带宽测试
可以输入psping -? i|t|l|b 来近一步获取参数应用
使用实例
默认情况下:
- psping -n 6 192.168.142.149:80 走TCP
- psping -n 6 192.168.142.149 走ICMP
测试网络延迟
psping -n 6 -w 2 -h wwww.baidu.com:80
-n 6就是6次
-w Warmup with the specified number of iterations (default is 5).预热次数
-h 打印直方图
网络带宽测试
psping -b -l 1000 -n 2000 192.168.142.149:80
- -b 带宽测试模式
- -l 请求的大小。附加’k’表示千字节,'m’表示兆字节。
- -n 发送/接收的数量。附加’s’以指定秒
Hping介绍
Hping是一个命令行下使用的TCP/IP数据包组装/分析工具,其命令模式很像Unix下的ping命令,但是它不仅能发送ICMP回应请求,它还可以支持TCP、UDP、ICMP和RAW-IP协议,它有一个路由跟踪模式,能够在两个相互包含的通道之间传送文件。Hping常被用于检测网络和主机,其功能非常强大,可在多种操作系统下运行,如Linux,FreeBSD,NetBSD,OpenBSD,Solaris,MacOs X,Windows。 目前最新的版本为hping3
Hping的主要功能有:
1、防火墙测试
2、高级端口扫描
3、网络检测,可以用不同的协议、服务类型(TOS)、IP分片
4、手工探测MTU( 最大传输单元) 路径
5、先进的路由跟踪,支持所有的协议
6、远程操作系统探测
7、远程的运行时间探测
8、TCP/IP堆栈审计