0

0

如何排查Linux网络故障 常见网络问题诊断流程

P粉602998670

P粉602998670

发布时间:2025-08-05 13:28:01

|

1251人浏览过

|

来源于php中文网

原创

先判断是本机还是网络环境问题,询问他人、测试不同服务或更换网络环境;2. 使用ip addr show检查网卡状态和ip分配,启用网卡或重新获取dhcp地址;3. 依次ping 127.0.0.1、网关、8.8.8.8、域名,确认协议栈、局域网、公网连通性和dns解析;4. 查看ip route show确认默认路由和目标路由,缺失则手动添加;5. 检查iptables、firewalld或ufw防火墙规则,必要时临时关闭测试;6. 用telnet或nc测试端口连通性,服务端用ss -tulnp检查服务监听状态;7. 使用tcpdump抓包分析请求与响应,定位故障环节;常见问题包括无ip(dhcp失败)、能上内网不能上外网(路由缺失)、能ping ip不能访问网站(dns问题)、所有ping超时(网络中断或防火墙拦截)、特定端口不通(服务未启动或防火墙限制),排查应由近及远,结合ping、ip、nslookup、ss和tcpdump工具完成诊断,最终精准定位并解决问题。

如何排查Linux网络故障 常见网络问题诊断流程

排查Linux网络故障需要系统性地检查各个网络层次,从本地配置到远程连接,逐步缩小问题范围。以下是常见的网络问题诊断流程,适用于大多数Linux发行版。


一、确认问题范围:是本机问题还是网络环境问题?

首先判断问题是出在本机,还是整个网络环境或远程服务。

  • 询问其他用户:同一局域网内的其他设备是否也出现网络异常?
  • 尝试访问不同服务:比如能否访问公司内网?能否访问公网(如 google.com)?
  • 更换网络环境测试:比如切换到手机热点,看是否恢复正常。

如果只有本机出问题,继续排查本机配置;如果所有设备都异常,可能是路由器或ISP问题。


二、检查本机网络接口状态

使用基础命令查看网卡是否启用、IP是否正确分配。

ip addr show
# 或使用旧命令
ifconfig -a

关注点:

  • 网卡(如 eth0、ens33、wlan0)是否处于
    UP
    状态。
  • 是否有正确的IP地址(非 169.254.x.x,那是链路本地地址,说明DHCP失败)。
  • 是否有丢包或错误计数(
    RX/TX errors
    )。

若网卡未启用:

sudo ip link set eth0 up

若使用DHCP,可尝试重新获取IP:

sudo dhclient eth0

三、测试网络连通性

1. 测试本地协议栈是否正常

ping 127.0.0.1

如果失败,说明TCP/IP协议栈或内核网络模块有问题(极少见)。

2. 测试局域网连通性

ping 192.168.1.1   # 替换为你的网关
  • 能通:说明本机到路由器链路正常。
  • 不通:检查网线、Wi-Fi连接、网关IP是否正确(可通过
    ip route | grep default
    查看默认网关)。

3. 测试公网连通性(IP层面)

ping 8.8.8.8
  • 能通:说明网络出站正常,可能是DNS问题。
  • 不通:说明路由或NAT有问题,检查默认路由和防火墙。

4. 测试域名解析(DNS)

ping google.com
  • 若能ping通IP但不能解析域名,说明DNS异常。

检查DNS配置:

cat /etc/resolv.conf

确保有有效的DNS服务器,如:

nameserver 8.8.8.8
nameserver 114.114.114.114

测试DNS解析:

nslookup google.com
# 或
dig google.com

若解析失败,可临时更换DNS服务器测试。


四、检查路由表

查看数据包是否知道如何到达目标网络:

ip route show

route -n

关键点:

无线网络修复工具(电脑wifi修复工具) 3.8.5官方版
无线网络修复工具(电脑wifi修复工具) 3.8.5官方版

无线网络修复工具是一款联想出品的小工具,旨在诊断并修复计算机的无线网络问题。它全面检查硬件故障、驱动程序错误、无线开关设置、连接设置和路由器配置。 该工具支持 Windows XP、Win7 和 Win10 系统。请注意,在运行该工具之前,应拔出电脑的网线,以确保准确诊断和修复。 使用此工具,用户可以轻松找出并解决 WiFi 问题,无需手动排查故障。它提供了一键式解决方案,即使对于非技术用户也易于使用。

下载
  • 是否有默认路由(
    default via 192.168.1.1 dev eth0
    )?
  • 目标网络是否有对应路由?

若缺失默认路由,手动添加:

sudo ip route add default via 192.168.1.1 dev eth0

五、检查防火墙设置

Linux本地防火墙可能阻止出站或入站流量。

  • 对于

    iptables

    sudo iptables -L -n -v

    查看是否有DROP规则影响网络。

  • 对于

    firewalld
    (CentOS/RHEL):

    sudo firewall-cmd --state
    sudo firewall-cmd --list-all
  • 对于

    ufw
    (Ubuntu):

    sudo ufw status

可临时关闭防火墙测试:

sudo systemctl stop firewalld
# 或
sudo ufw disable
测试后记得恢复。

六、检查服务和端口连通性

若特定服务无法访问(如无法SSH、无法访问网页):

  • 使用
    telnet
    nc
    测试端口:
    telnet 192.168.1.100 22
    # 或
    nc -zv 192.168.1.100 80
  • 若连接超时或拒绝,可能是服务未运行或被防火墙拦截。

在服务端检查:

ss -tulnp | grep :22
# 或
netstat -tulnp | grep :22

确认服务是否监听正确IP和端口。


七、抓包分析(高级诊断)

当上述方法无法定位问题时,使用

tcpdump
抓包分析:

sudo tcpdump -i eth0 host 8.8.8.8

或抓ICMP包:

sudo tcpdump -i eth0 icmp

观察是否有请求发出、是否有响应返回,判断是发不出去还是收不到回应。


常见问题快速对照表

现象 可能原因 检查命令
无IP地址 DHCP失败或网卡未启用 @@######@@、@@######@@
能上内网不能上外网 默认路由缺失 @@######@@
能ping IP不能访问网站 DNS问题 @@######@@、@@######@@
所有ping都超时 网络不通或防火墙拦截 @@######@@、@@######@@
特定端口不通 服务未启动或防火墙限制 @@######@@、@@######@@

基本上就这些步骤。网络故障排查讲究由近及远:先本地配置,再网关,再DNS,最后外部因素。掌握

ip addr
dhclient
ip route
cat /etc/resolv.conf
dig
这几个工具,90%的常见问题都能定位。不复杂,但容易忽略细节。

ping 网关
tcpdump
ss -tuln
firewall-cmd
ping
ip
nslookup
ss
tcpdump

相关专题

更多
硬盘接口类型介绍
硬盘接口类型介绍

硬盘接口类型有IDE、SATA、SCSI、Fibre Channel、USB、eSATA、mSATA、PCIe等等。详细介绍:1、IDE接口是一种并行接口,主要用于连接硬盘和光驱等设备,它主要有两种类型:ATA和ATAPI,IDE接口已经逐渐被SATA接口;2、SATA接口是一种串行接口,相较于IDE接口,它具有更高的传输速度、更低的功耗和更小的体积;3、SCSI接口等等。

1022

2023.10.19

PHP接口编写教程
PHP接口编写教程

本专题整合了PHP接口编写教程,阅读专题下面的文章了解更多详细内容。

65

2025.10.17

php8.4实现接口限流的教程
php8.4实现接口限流的教程

PHP8.4本身不内置限流功能,需借助Redis(令牌桶)或Swoole(漏桶)实现;文件锁因I/O瓶颈、无跨机共享、秒级精度等缺陷不适用高并发场景。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

415

2025.12.29

堆和栈的区别
堆和栈的区别

堆和栈的区别:1、内存分配方式不同;2、大小不同;3、数据访问方式不同;4、数据的生命周期。本专题为大家提供堆和栈的区别的相关的文章、下载、课程内容,供大家免费下载体验。

390

2023.07.18

堆和栈区别
堆和栈区别

堆(Heap)和栈(Stack)是计算机中两种常见的内存分配机制。它们在内存管理的方式、分配方式以及使用场景上有很大的区别。本文将详细介绍堆和栈的特点、区别以及各自的使用场景。php中文网给大家带来了相关的教程以及文章欢迎大家前来学习阅读。

572

2023.08.10

default gateway怎么配置
default gateway怎么配置

配置default gateway的步骤:1、了解网络环境;2、获取路由器IP地址;3、登录路由器管理界面;4、找到并配置WAN口设置;5、配置默认网关;6、保存设置并退出;7、检查网络连接是否正常。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

220

2023.12.07

磁盘配额是什么
磁盘配额是什么

磁盘配额是计算机中指定磁盘的储存限制,就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。php中文网为大家提供各种磁盘配额相关的内容,教程,供大家免费下载安装。

1349

2023.06.21

如何安装LINUX
如何安装LINUX

本站专题提供如何安装LINUX的相关教程文章,还有相关的下载、课程,大家可以免费体验。

701

2023.06.29

高德地图升级方法汇总
高德地图升级方法汇总

本专题整合了高德地图升级相关教程,阅读专题下面的文章了解更多详细内容。

42

2026.01.16

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 7.3万人学习

Git 教程
Git 教程

共21课时 | 2.7万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号