CentOS 系统中 ping, traceroute, nslookup,iperf3,netperf,speedtest-cli 这几种网络测速工具的使用方法及其使用命令的详细说明和举例:
ping
ping
命令用于测试网络连通性和测量目标主机的响应时间。其基本用法为:
ping [options] destination
其中 destination
可以是域名或 IP 地址。
例如,ping www.baidu.com
给出的结果为:
PING www.a.shifen.com (14.215.177.38) 56(84) bytes of data.
64 bytes from 14.215.177.38: icmp_seq=1 ttl=55 time=20.9 ms
64 bytes from 14.215.177.38: icmp_seq=2 ttl=55 time=22.9 ms
64 bytes from 14.215.177.38: icmp_seq=3 ttl=55 time=21.5 ms
64 bytes from 14.215.177.38: icmp_seq=4 ttl=55 time=22.9 ms
其中,14.215.177.38
是目标主机的 IP 地址,icmp_seq
表示发送的第几个数据包,ttl
表示数据包经过的路由器个数,time
表示数据包往返时间。
traceroute
traceroute
命令用于追踪数据包在网络中的路径,并测量每个跃点的延迟时间。其基本用法为:
traceroute [options] destination
其中 destination
可以是域名或 IP 地址。
例如,traceroute www.baidu.com
给出的结果为:
traceroute to www.a.shifen.com (14.215.177.38), 30 hops max, 60 byte packets
1 192.168.1.1 (192.168.1.1) 0.534 ms 0.529 ms 0.515 ms
2 10.63.64.1 (10.63.64.1) 3.508 ms 3.357 ms 3.316 ms
3 112.65.20.1 (112.65.20.1) 16.238 ms 15.667 ms 15.591 ms
4 183.221.255.13 (183.221.255.13) 25.030 ms 25.270 ms 25.920 ms
5 202.97.52.1 (202.97.52.1) 24.811 ms 24.788 ms 24.968 ms
其中,前面的数字表示数据包经过的路由器个数,括号内的数字表示该路由器的 IP 地址,后面的数字表示该地点的平均延迟时间。
nslookup
nslookup
命令用于查询 DNS 服务器上的域名解析信息。其基本用法为:
nslookup [options] domain
其中,domain
表示要查询的域名。
例如,nslookup www.baidu.com
的输出结果为:
Server: 127.0.0.53
Address: 127.0.0.53#53
Non-authoritative answer:
Name: www.baidu.com
Address: 220.181.38.148
Name: www.baidu.com
Address: 39.156.69.79
Name: www.baidu.com
Address: 180.101.49.12
其中,Server
表示使用的 DNS 服务器的 IP 地址,Address
表示解析出的域名对应的 IP 地址。
在 CentOS 系统中,有以下几种常用的网络测速工具:
iperf3
iperf3 是一款开源的网络性能测量工具,可用于评估 TCP 和 UDP 的带宽能力。它可以提供多种测试方式,包括客户端-服务器、单双向、并行等模式。
- 安装命令:
sudo yum install iperf3
- 使用命令:
- 在服务器端启动iperf3:
iperf3 -s
- 在客户端发起测试:
iperf3 -c
- 示例说明: 在服务器端启动iperf3:
$ iperf3 -s
-----------------------------------------------------------
Server listening on 5201
-----------------------------------------------------------
在客户端发起测试:
代码语言:javascript复制 $ iperf3 -c 192.168.0.100
Connecting to host 192.168.0.100, port 5201
[ ID] Interval Transfer Bitrate
[ 5] 0.00-1.00 sec 138 MBytes 1.16 Gbits/sec
[ 5] 1.00-2.00 sec 157 MBytes 1.32 Gbits/sec
...
[ 5] 98.00-99.00 sec 157 MBytes 1.32 Gbits/sec
[ 5] 99.00-100.00 sec 157 MBytes 1.32 Gbits/sec
[SUM] 0.00-100.00 sec 14.2 GBytes 1.22 Gbits/sec
这表明客户端与服务器之间的带宽能力为1.22 Gbit/s。
netperf
netperf 是另一个开源的网络性能测量工具,可用于评估网络传输的吞吐量、延迟和 CPU 使用率等。它支持多种测试模式和协议。
- 安装命令:
sudo yum install netperf
- 使用命令:
- 在服务器端启动 netserver:
netserver
- 在客户端发起测试:
netperf -H
- 示例说明: 在服务器端启动 netserver:
$ netserver
Starting netserver with host 'localhost' and port '12865'.
Starting netserver at 2023-05-07 04:29:23 UTC
在客户端发起测试:
代码语言:javascript复制 $ netperf -H 192.168.0.100
MIGRATED TCP STREAM TEST from 0.0.0.0 () port 0 AF_INET to 192.168.0.100 () port 0 AF_INET : demo
Recv Send Send
Socket Socket Message Elapsed
Size Size Size Time Throughput
bytes bytes bytes secs. 10^6bits/sec
87380 87380 10000000 10.00 984.19
这表明客户端和服务器之间的吞吐量约为 984.19 Mbits/sec。
speedtest-cli
speedtest-cli 是一个 Python 编写的命令行测速工具,用于测试本地计算机的网络连接速度。它使用 Speedtest.net 的服务器进行测试。
- 安装命令:
sudo yum install python3-speedtest-cli
- 使用命令:
speedtest-cli
- 示例说明: 运行测速命令:
$ speedtest-cli
Retrieving speedtest.net configuration...
Retrieving speedtest.net server list...
Testing from example.com (203.0.113.1)...
Selecting best server based on ping...
Hosted by Example ISP (Anytown, XX) [1.23 km]: 5.0 ms
Testing download speed................................................................................
Download: 67.77 Mbit/s
Testing upload speed......................................................................................................
Upload: 92.69 Mbit/s
这表明本地计算机的下载速度为 67.77 Mbit/s,上传速度为 92.69 Mbit/s。
注意:netperf 和 iperf3 都需要在服务器和客户端之间启动,以便进行测试。<server_ip>
是服务器的 IP 地址。