📖 知识点
1. Windows ping → Linux ping
| Windows | Linux | 说明 |
|---|---|---|
|
| 测到目标的网络连通 |
| 自动停止 | 按 Ctrl+C 停止 | Linux 默认不停,需手动停 |
好消息:命令名完全一样,都是
ping!用来测试 "我这台电脑能不能到达某个目标(网址或 IP)"。
💡 生活比喻
ping像 "敲门试探":你对目标喊一声 "喂,你在吗?",对方回一声 "在呢"(返回数据),就说明这条路(网络)是通的;一直没人应,就是不通。
2. 基本用法
ping www.baidu.com # 测到百度的连通
ping 192.168.1.1 # 测到网关的连通
运行示例:
PING www.baidu.com (110.242.68.66) 56(84) bytes of data.
64 bytes from 110.242.68.66: icmp_seq=1 ttl=50 time=10.5 ms
64 bytes from 110.242.68.66: icmp_seq=2 ttl=50 time=9.8 ms
...
每一行
64 bytes ... time=10.5 ms表示一次成功应答;time是往返耗时,越小越快。
3. Linux 的 ping 默认不停
和 Windows 不同,Linux 的 ping 会一直 ping 下去,要停止得手动按:
Ctrl + C # 停止ping,回到命令行
按 Ctrl+C 后,会显示统计:发了几个包、丢了几个、平均耗时。
4. 限制次数:ping -c
不想一直跑,用 -c 指定次数,ping 完自动停:
ping -c 4 www.baidu.com # 只ping 4次就自动停
-c 4= count 4,ping 4 次自动结束,不用手动 Ctrl+C。
⚠️ 易错提醒
Linux 的 ping 默认无限循环,用
-c 次数或Ctrl+C停止一直没回应可能是不通,也可能是对方禁了 ping
看
time=值判断快慢:几十毫秒算快,几百毫秒算慢,timeout/unreachable表示不通
⚔️ Kata 实战任务
任务需求:
用
ping -c 4 www.baidu.com测到百度的连通(只测 4 次,自动停)观察每一行的
time=耗时用
ping -c 3 127.0.0.1测本机(回环),应该秒通体验一次无限 ping,然后按 Ctrl+C 停止(体会手动停)
从统计里看 "丢了几个包"
参考代码(在终端依次敲)
# 1. 测到百度,只ping 4次(自动停)
ping -c 4 www.baidu.com
# 2. 测本机(回环,127.0.0.1)
ping -c 3 127.0.0.1
# 3. 体验无限ping,然后 Ctrl+C 停止
ping 8.8.8.8
(按 Ctrl + C 停止)
运行示例:
user@linux:~$ ping -c 4 www.baidu.com
PING www.baidu.com (110.242.68.66) 56(84) bytes of data.
64 bytes from 110.242.68.66: icmp_seq=1 ttl=50 time=10.5 ms
64 bytes from 110.242.68.66: icmp_seq=2 ttl=50 time=9.8 ms
64 bytes from 110.242.68.66: icmp_seq=3 ttl=50 time=9.6 ms
64 bytes from 110.242.68.66: icmp_seq=4 ttl=50 time=10.1 ms
--- www.baidu.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3005ms
🧠 思考题
ping的每一行返回的time=10.5 ms代表什么?这个值越大说明什么?Linux 的
ping默认会一直跑,怎么让它 "ping 几次就自动停"?无限跑的时候怎么手动停?