Linux/Unix:通过SSH命令测试Internet连接速度
时间:2020-01-09 10:42:25 来源:igfitidea点击:
如何在不使用基于HTML5或者Adobe Flash/Java applet的网站的情况下,通过ssh会话从控制台测试Internet连接下载速度?
如何从控制台测试上传速度?
答:
我建议您使用lftp命令从控制台测试Internet上传和下载速度。
您可以使用ssh客户端运行lftp:
wget命令
从Web检索文件(下载速度测试)。wput command
一个类似wget的小型ftp客户端,用于上传文件(上传速度测试)。axel
另一个轻量下载加速器。iperf命令
执行网络吞吐量测试。speedtest-cli
使用基于Python的CLI工具Speedtest-cli检查互联网速度。
如何在Linux或者Unix上通过SSH命令测试Internet连接速度
您可以使用以下yum命令在RHEL/CentOS/Fedora Linux下安装lftp和iperf:
# yum install lftp iperf
或者在Debian或者Ubuntu Linux/Mint Linux下使用以下apt命令/apt-get命令:
$ sudo apt-get install lftp iperf
步骤1.找出下载网址
您需要一个大文件来测试下载速度。
例如,您可以访问Linux内核的主页来获取Centos Linux ISO文件。
步骤2.使用lftp命令测试下载速度
语法为:
lftp -e 'pget http://example.com/file.iso; exit; ' lftp -e 'pget http://speedtest.example.com/500M.bin; exit; ' lftp -e 'pget https://mirrors.edge.kernel.org/centos/7.5.1804/isos/x86_64/CentOS-7-x86_64-DVD-1804.iso; exit; '
您还将获得以下报告:
725617504 bytes transferred in 65 seconds (10.63M/s)
关于wget命令的注释
您可以按以下方式使用wget命令来测试下载速度:
$ wget -O /dev/null https://mirrors.edge.kernel.org/centos/7.5.1804/isos/x86_64/CentOS-7-x86_64-DVD-1804.iso
步骤3.使用lftp命令测试上传速度
语法如下:
lftp -u userName ftp.example.com -e 'put largecd1.avi; bye' lftp -u userName,passWord ftp.example.com -e 'put largecd1.avi; bye' lftp -u userName,passWord ftp.example.com -e 'put /path/to/large.iso; bye'
在此示例中,我将文件上传到专用ftp服务器:
lftp -u admin homeserver -e 'cd video; put /home/Hyman/Downloads/debian-testing-amd64-CD-1.iso; bye'
或者
lftp -u admin homeserver.public.ip.here -e 'cd video; put /home/Hyman/Downloads/debian-testing-amd64-CD-1.iso; bye'
如何测试两个Linux或者Unix服务器之间的网络吞吐率?
请考虑以下设置:
+------------------+ +----------------+ | Linux server A +--------- ISP Internet-----------+ Linux server B + +------------------+ +----------------+ IP:192.54.1.1 IP:203.54.1.1 iperf server iperf client
Iperf是一种用于测量最大TCP带宽的工具,可以调整各种参数和UDP特性。
Iperf报告带宽,延迟抖动,数据报丢失。
在服务器A上,启动iperf,如下所示:
# iperf -s -B 192.54.1.1
在服务器B上,执行相同的命令,如下所示:
# iperf -c 192.54.1.1 -d -t 60 -i 10
其中:
- -s:在服务器模式下运行。
- -B IP:绑定到IP,接口或者多播地址。
- -c IP:在客户端模式下运行,连接到IP。
-d
:同时进行双向测试。- -t 60:以秒为单位的传输时间(默认为10)。
- -i 10:在定期带宽报告之间暂停n秒。