做后端开发的朋友遇到下图中的情况是很常见的,导致整个问题的可能性非常多,在排查问题的时候我们首先可以通过 ping
命令查看服务器时候还活着,作为第一步检查。
既然要使用 ping
命令,自然也要熟悉这个命令相关的一些知识点,才能加以分析。
ping
命令最简单的用法就是后面跟一个 ip 地址
> ping 8.8.8.8
正在 Ping 8.8.8.8 具有 32 字节的数据:
来自 8.8.8.8 的回复: 字节=32 时间=34ms TTL=114
来自 8.8.8.8 的回复: 字节=32 时间=35ms TTL=114
来自 8.8.8.8 的回复: 字节=32 时间=34ms TTL=114
来自 8.8.8.8 的回复: 字节=32 时间=33ms TTL=114
8.8.8.8 的 Ping 统计信息:
数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 33ms,最长 = 35ms,平均 = 34ms
注意在Window
环境下使用ping
命令会发送四次报文之后就结束,但是Linux
下会一直持续不断的发送报文,需要终止的,请使用快捷键ctrl + c
,Mac 同理 。
ping
的运作原理是向目标主机传出一个 ICMP 的请求回显数据包,并等待接收回显回应数据包。程序会按时间和成功响应的次数估算丢失数据包率(丢包率)和数据包往返时间(网络时延,Round-trip delay time)。
ICMP 报文工作在 OSI 七层网络模型中的网络层。
这一层是由操作系统负责的,也就是只要服务器开机且正常运行着,就可以被 ping
通,说明服务器还活着,这个时候你就需要通过其他方式来排查问题了。
OSI 七层模型是计算机网络的内容
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。