Linux 网络排查入门:ping、curl 与 ss

举报
vanseny 发表于 2026/11/10 09:46:56 2026/11/10
【摘要】 网站打不开,服务连不上,第一反应往往是重启服务器。但重启之前先问一句:到底是哪一段路断了。网络排查就三个动作:ping 看通不通,curl 看服务回不回话,ss 看端口有没有在听。学会这三步,断网先定位,再决定修哪一段。 小节一、ping:先看通不通连不上先确认路通不通,ping 就是干这个的:ping -c 4 8.8.8.8这行命令往目标发 4 个探测包。重点看两点:有没有回复,以及往返...

网站打不开,服务连不上,第一反应往往是重启服务器。
但重启之前先问一句:到底是哪一段路断了。
网络排查就三个动作:ping 看通不通,curl 看服务回不回话,ss 看端口有没有在听。学会这三步,断网先定位,再决定修哪一段。

小节一、ping:先看通不通

连不上先确认路通不通,ping 就是干这个的:

ping -c 4 8.8.8.8

这行命令往目标发 4 个探测包。重点看两点:有没有回复,以及往返用了多少毫秒。4 个全回来了,说明到目标的路是通的;全丢了,先别急着怪服务,可能是这段路本身就不通。

只看通不通还不够,丢包率也很关键:

ping -c 10 8.8.8.8

发 10 个包,看丢了几个。丢一两个可能是网络抖动,丢一半以上,说明链路本身不稳,这时候修服务没用,先解决网络质量问题。

ping 不通域名时,换 IP 再试一次:

ping -c 4 1.1.1.1

IP 通、域名不通,问题多半出在域名解析上,不是服务器挂了。反过来 IP 也不通,再往上查本机网络和路由。

小节二、curl:看服务回不回话

路通了,不等于服务在干活。curl 是直接跟服务对话:

curl -I http://localhost:8080

这行只取响应头,不下载正文。看到 200,说明服务活着并且正常应答;看到 502、503,说明前面的代理或网关到了,但后面的服务没接住;一直超时,说明请求根本没到服务那里。

想看服务返回的正文长什么样,去掉 -I 就行:

curl http://localhost:8080

正文直接打出来,能一眼看出返回的是正常页面,还是报错页。排障时先看状态码,再看正文,比盯着浏览器转圈有用得多。

只关心快慢,不关心内容,可以只计时:

curl -o /dev/null -s -w %{time_total} http://localhost:8080

这行把正文丢掉,只打印总耗时。耗时突然从零点几秒变成几秒,说明服务变慢了,或者中间某段路变堵了,先记下这个数字,再去查是哪一段拖了后腿。

小节三、ss:看端口有没有在听

服务起没起、端口开没开,ss 一眼就能看出来:

ss -tlnp

这行列出所有正在监听的 TCP 端口。重点看两列:Local Address 是监听的地址和端口,Process 是哪个进程在守这个端口。服务明明启动了,端口列表里却没有它,说明它根本没把端口打开,客户端当然连不上。

只关心某一个端口,可以直接点名过滤:

ss -tlnp | grep 8080

这行是在监听列表里只找 8080 端口。找到了,说明服务在听;找不到,服务要么没启动,要么绑错了端口,先对配置再重启。

想看当前有哪些连接正在进行,换一种写法:

ss -tn state established

这样只列出已经建立的连接。连接数突然暴涨,可能是有人在刷请求;连接数是零,说明根本没人连进来,问题在更前面。

小节四、三个新手常踩的坑

第一,ping 不通就断定服务器挂了。很多服务器会禁 ping,ping 不通不等于服务死了,先用 curl 试试服务端口,别被一个禁掉的探测包带偏。

第二,curl 报错就怪服务。先分清报错发生在哪一步:域名解析失败是 DNS 的问题,连接超时是路的问题,502 是网关后面的问题。报错信息里写的是哪一段,就先查哪一段。

第三,端口查到了就以为万事大吉。端口在听,不等于服务能正常应答。ss 只能证明门开着,curl 才能证明门里有人干活,两个都查过才算闭环。

ping 看通不通,curl 看服务回不回话,ss 看端口有没有在听,三步走完,断网先定位到哪一段,再决定修哪一段。服务器下次再连不上,先花一分钟跑这三个命令,再决定是重启、改配置,还是等网络自己恢复。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。