摘要:网络故障排查就像找失联的朋友——得一层层问,从最近的路由器问到远在美国的DNS服务器。本文提供一套完整的6步诊断法,帮你快速定位并解决Linux网络问题。引言:当服务器"失联"时凌晨3点,监控告警突然炸响——“服务器无法访问”。你揉揉眼睛,打开终端,面对黑乎乎的命令行,大脑一片空白。别慌。网络故障排查是有套路的。就像找失联的朋友,你不会直接飞到美国去问,而是先从最近的共同好友开始打听。网络诊断也一样——从近到远,逐层排查。本文将带你走完6步标准诊断流程,从基础连通性到DNS解析,从防火墙到SSH服务,手把手教你把"失联"的服务器找回来。第1步:检查基础网络连通性1.1 先看"家底"——IP地址对不对# 查看所有网络接口的IP地址 ip addr show # 或者使用传统命令(部分系统仍支持) ifconfig关键检查点:IP地址是否存在:确认网卡已获得有效IP(不是127.0.0.1)网卡状态是否为UP:state UP表示网卡已启用是否有多个IP冲突:检查是否存在重复的IP配置# 示例输出解读 2: eth0: BROADCAST,MULTICAST,UP,LOWER_UP mtu 1500 qdisc fq_codel state UP group default qlen 1000 inet 192.168.1.100/24 brd 192.168.1.255 scope global dynamic eth0如果IP地址缺失,可能是DHCP获取失败,尝试:# 重新获取DHCP地址(Ubuntu/Debian) sudo dhclient -r eth0 sudo dhclient eth0 # 或者重启网络服务 sudo systemctl restart networking1.2 检查路由表——"出门"的路通不通# 查看路由表 ip route show # 或者 route -n关键检查点:默认网关是否存在:应该有default via xxx.xxx.xxx.xxx一行网关IP是否正确:确认与网络规划一致# 示例输出 default via 192.168.1.1 dev eth0 proto dhcp metric 100 192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.1001.3 Ping测试——最基础的"喊话"# 先Ping网关(最近的路由器) ping -c 4 192.168.1.1 # 再Ping外网IP(测试能否出网) ping -c 4 8.8.8.8 # 最后Ping域名(测试DNS解析) ping -c 4 www.baidu.com诊断逻辑:测试目标成功失败结论Ping网关✓✗本地网络或网卡故障Ping 8.8.8.8✓✗网关或外网路由故障Ping域名✓✗DNS解析故障幽默一刻:Ping命令就像对着山谷喊话——“喂~有人吗~”,有回声(回复)就是通的,没回声就是断了。只不过网络世界里,回声是64 bytes from...。第2步:DNS配置排查与修复2.1 检查DNS配置文件# 查看DNS服务器配置 cat /etc/resolv.conf标准配置示例:nameserver 8.8.8.8 nameserver 114.114.114.114 nameserver 223.5.5.5常见问题:nameserver缺失或错误:配置文件中nameserver行被注释或指向无效IP配置被覆盖:某些服务(如NetworkManager)会自动重写resolv.conf2.2 使用nslookup测试DNS解析# 测试DNS解析 nslookup www.baidu.com # 指定DNS服务器测试 nslookup www.baidu.com 8.8.8.8正常输出:Server: 8.8.8.8 Address: 8.8.8.8#53 Non-authoritative answer: Name: www.baidu.com Address: 14.215.177.382.3 使用dig进行深度DNS诊断# 基础查询 dig www.baidu.com # 指定DNS服务器 dig @8.8.8.8 www.baidu.com # 追踪解析路径(看经过了哪些DNS服务器) dig +trace www.baidu.com # 只显示IP地址 dig +short www.baidu.com关键输出字段解读:
Linux网络与DNS故障排查——从“连不上网“到“网络畅通“的6步诊断法
发布时间:2026/5/19 8:45:22
摘要:网络故障排查就像找失联的朋友——得一层层问,从最近的路由器问到远在美国的DNS服务器。本文提供一套完整的6步诊断法,帮你快速定位并解决Linux网络问题。引言:当服务器"失联"时凌晨3点,监控告警突然炸响——“服务器无法访问”。你揉揉眼睛,打开终端,面对黑乎乎的命令行,大脑一片空白。别慌。网络故障排查是有套路的。就像找失联的朋友,你不会直接飞到美国去问,而是先从最近的共同好友开始打听。网络诊断也一样——从近到远,逐层排查。本文将带你走完6步标准诊断流程,从基础连通性到DNS解析,从防火墙到SSH服务,手把手教你把"失联"的服务器找回来。第1步:检查基础网络连通性1.1 先看"家底"——IP地址对不对# 查看所有网络接口的IP地址 ip addr show # 或者使用传统命令(部分系统仍支持) ifconfig关键检查点:IP地址是否存在:确认网卡已获得有效IP(不是127.0.0.1)网卡状态是否为UP:state UP表示网卡已启用是否有多个IP冲突:检查是否存在重复的IP配置# 示例输出解读 2: eth0: BROADCAST,MULTICAST,UP,LOWER_UP mtu 1500 qdisc fq_codel state UP group default qlen 1000 inet 192.168.1.100/24 brd 192.168.1.255 scope global dynamic eth0如果IP地址缺失,可能是DHCP获取失败,尝试:# 重新获取DHCP地址(Ubuntu/Debian) sudo dhclient -r eth0 sudo dhclient eth0 # 或者重启网络服务 sudo systemctl restart networking1.2 检查路由表——"出门"的路通不通# 查看路由表 ip route show # 或者 route -n关键检查点:默认网关是否存在:应该有default via xxx.xxx.xxx.xxx一行网关IP是否正确:确认与网络规划一致# 示例输出 default via 192.168.1.1 dev eth0 proto dhcp metric 100 192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.1001.3 Ping测试——最基础的"喊话"# 先Ping网关(最近的路由器) ping -c 4 192.168.1.1 # 再Ping外网IP(测试能否出网) ping -c 4 8.8.8.8 # 最后Ping域名(测试DNS解析) ping -c 4 www.baidu.com诊断逻辑:测试目标成功失败结论Ping网关✓✗本地网络或网卡故障Ping 8.8.8.8✓✗网关或外网路由故障Ping域名✓✗DNS解析故障幽默一刻:Ping命令就像对着山谷喊话——“喂~有人吗~”,有回声(回复)就是通的,没回声就是断了。只不过网络世界里,回声是64 bytes from...。第2步:DNS配置排查与修复2.1 检查DNS配置文件# 查看DNS服务器配置 cat /etc/resolv.conf标准配置示例:nameserver 8.8.8.8 nameserver 114.114.114.114 nameserver 223.5.5.5常见问题:nameserver缺失或错误:配置文件中nameserver行被注释或指向无效IP配置被覆盖:某些服务(如NetworkManager)会自动重写resolv.conf2.2 使用nslookup测试DNS解析# 测试DNS解析 nslookup www.baidu.com # 指定DNS服务器测试 nslookup www.baidu.com 8.8.8.8正常输出:Server: 8.8.8.8 Address: 8.8.8.8#53 Non-authoritative answer: Name: www.baidu.com Address: 14.215.177.382.3 使用dig进行深度DNS诊断# 基础查询 dig www.baidu.com # 指定DNS服务器 dig @8.8.8.8 www.baidu.com # 追踪解析路径(看经过了哪些DNS服务器) dig +trace www.baidu.com # 只显示IP地址 dig +short www.baidu.com关键输出字段解读: