Linux 中,可通过
ping
命令查看网络延迟,如 `ping www.
Linux 系统中,有多种方法可以查看网络延迟,以下是几种常见的方法和工具:
使用 ping
命令
ping
命令是最常用的网络诊断工具之一,用于测试主机之间连通性和测量网络延迟,基本用法如下:
ping [选项] 目标IP或域名
要测试到 Google 的延迟,可以使用以下命令:
ping www.google.com
输出示例:
PING www.google.com (172.217.26.206) 56(84) bytes of data.
64 bytes from 172.217.26.206: icmp_seq=1 ttl=117 time=10.2 ms
64 bytes from 172.217.26.206: icmp_seq=2 ttl=117 time=10.1 ms
...
time
表示往返时间(RTT),即延迟。
常用选项:
-c count
:发送指定次数的 ICMP 数据包。ping -c 4 www.google.com
只发送 4 个数据包。-i interval
:指定每次请求之间的间隔(秒)。ping -i 0.5 www.google.com
每 0.5 秒发送一次请求。-q
:安静模式,只显示小编总结信息。
使用 traceroute
命令
traceroute
命令用于追踪数据包从源到目的地经过的路由路径,并显示每一跳的延迟,基本用法如下:
traceroute [选项] 目标IP或域名
要追踪到 Google 的路由路径,可以使用以下命令:
traceroute www.google.com
输出示例:
traceroute to www.google.com (172.217.26.206), 30 hops max, 60 byte packets
1 router.local (192.168.1.1) 1.123 ms 0.987 ms 1.056 ms
2 * * *
3 108.174.255.174 (108.174.255.174) 10.234 ms 10.123 ms 10.345 ms
...
每一行的数字表示第几跳,后面的三个时间分别表示三次尝试的延迟,如果某跳没有响应,则显示 。
常用选项:
-n
:不进行域名解析,直接显示 IP 地址。-m max_ttl
:设置最大跳数。traceroute -m 10 www.google.com
最多追踪 10 跳。-w waittime
:设置等待每次回复的时间(秒)。traceroute -w 5 www.google.com
等待 5 秒。
使用 mtr
命令
mtr
是 ping
和 traceroute
的结合体,能够实时显示网络路径和延迟,首先需要安装 mtr
,在 Debian/Ubuntu 系统上可以使用以下命令安装:
sudo apt-get install mtr
基本用法如下:
mtr [选项] 目标IP或域名
要测试到 Google 的网络路径和延迟,可以使用以下命令:
mtr www.google.com
输出示例:
HOST: local-pc Loss% Snt Last Avg Best Wrst StDev
1.|- router.local 0.0% 10 0.3ms 0.2ms 0.1ms 0.4ms
2.|- 108.174.255.174 0.0% 10 10.2ms 10.1ms 10.0ms 10.3ms
3.|- ... (省略)
mtr
会不断更新统计信息,包括丢包率、最后一次延迟、平均延迟、最佳延迟、最差延迟和标准差。
常用选项:
-c count
:发送指定次数的数据包后退出。mtr -c 10 www.google.com
发送 10 次数据包后停止。-r
:报告每个跃点的百分比丢包率。-p
:显示每个跃点的百分比丢包率。
使用 iperf
测试带宽和延迟
iperf
是一个网络性能测试工具,可以测量带宽和延迟,首先需要在服务器和客户端都安装 iperf
,在 Debian/Ubuntu 系统上可以使用以下命令安装:
sudo apt-get install iperf
基本用法如下:
# 在服务器端运行 iperf [选项] # 在客户端运行 iperf [选项] -c 服务器IP
在服务器端运行以下命令:
iperf -s
在客户端运行以下命令:
iperf -c 192.168.1.100
输出示例:
------------------------------------------------------------
Client connecting to 192.168.1.100, TCP port 5001
TCP window size: 85.3 KByte (WARNING: no df flag set in headers)
------------------------------------------------------------
[ 5] local 192.168.1.101 port 52978 connected with 192.168.1.100 port 5001
[ ID] Interval Transfer Bandwidth
[ 5] 0.01.0 sec 11 MB 94.4 MBytes/sec
[ 5] 1.02.0 sec 11 MB 94.4 MBytes/sec
...
其中包含了带宽和延迟的信息。
常用选项:
-u
:使用 UDP 而不是 TCP。-t seconds
:测试持续时间(秒)。iperf -t 10
测试 10 秒。-p port
:指定服务器端口。iperf -p 5005
使用端口 5005。
使用 netstat
查看网络连接状态
虽然 netstat
不能直接测量延迟,但它可以显示当前系统的网络连接状态,帮助你了解网络活动,基本用法如下:
netstat [选项]
要查看所有活动的网络连接,可以使用以下命令:
netstat -a
输出示例:
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 192.168.1.100:22 192.168.1.101:54321 ESTABLISHED
...
State
列显示了连接的状态,如 LISTEN
、ESTABLISHED
等。
常用选项:
-t
:仅显示 TCP 连接。-u
:仅显示 UDP 连接。-n
:以数字形式显示地址和端口号,不进行域名和服务名解析。-p
:显示使用这些连接的进程 PID 和名称。netstat -tulpn
。
小编总结表格
工具 | 功能 | 常用选项 |
---|---|---|
ping |
测量网络延迟 | -c count , -i interval , -q |
traceroute |
追踪数据包路径并显示延迟 | -n , -m max_ttl , -w waittime |
mtr |
实时显示网络路径和延迟 | -c count , -r , -p |
iperf |
测试带宽和延迟 | -u , -t seconds , -p port |
netstat |
查看网络连接状态 | -t , -u , -n , -p |
通过以上工具和方法,你可以全面了解 Linux 系统中的网络延迟情况,并进行相应的网络优化和故障排除。
FAQs
Q1: 如何减少网络延迟?
A1: 减少网络延迟的方法包括优化路由路径、升级硬件设备(如路由器、交换机)、减少网络拥塞、选择更快的网络服务提供商等,确保网络配置正确,避免不必要的转发和处理也能有效降低延迟。
Q2: ping
和 traceroute
有什么区别?
A2: ping
主要用于测试主机之间的连通性和测量往返时间(RTT),而 traceroute
则用于追踪数据包从源到目的地经过的路由路径,并显示每一跳的延迟。
小伙伴们,上文介绍linux如何看延迟的内容,你了解清楚吗?希望对你有所帮助,任何问题可以给我留言,让我们下期再见吧。
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/13453.html