当 Debian 系统网络不通时,可以按从物理到系统、从简单到复杂的顺序排查。下面给你一套常用排查流程,基本能解决 90% 的问题。
先明确是哪种“不通”:
ip a
看网卡是否存在(如 eth0、ens33)。
✅ 正常:有 state UP
❌ 异常:没有网卡或 state DOWN
如果是虚拟机:
ip addr
✅ 正常:有 inet 192.168.x.x
❌ 异常:没有 IP(可能是 DHCP 失败)
sudo dhclient -v
ip route
✅ 正常:有 default via 192.168.x.1
❌ 异常:没有默认路由
临时添加网关:
sudo ip route add default via 192.168.1.1
ping 192.168.1.1
ping 8.8.8.8
ping www.baidu.com
| 情况 | 可能原因 |
|---|---|
| ping IP 通,域名不通 | DNS 问题 |
| IP 都不通 | 路由 / 防火墙 / 网卡 |
cat /etc/resolv.conf
✅ 应有:
nameserver 8.8.8.8
nameserver 114.114.114.114
❌ 空白或错误 → 手动修改:
sudo nano /etc/resolv.conf
⚠ 注意:如果你用 systemd-resolved 或 NetworkManager,这个文件可能被覆盖。
systemctl status NetworkManager
sudo systemctl restart NetworkManager
sudo systemctl restart networking
cat /etc/network/interfaces
示例(DHCP):
auto eth0
iface eth0 inet dhcp
或静态 IP:
auto eth0
iface eth0 inet static
address 192.168.1.100
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 8.8.8.8
重启网络:
sudo systemctl restart networking
sudo iptables -L
临时关闭测试:
sudo iptables -F
ip link
启用网卡:
sudo ip link set eth0 up
iwconfig
连接 Wi-Fi(nmcli):
nmcli device wifi list
nmcli device wifi connect "SSID" password "密码"
ip a / ip route 输出你可以直接把以下命令的输出贴出来:
ip a
ip route
cat /etc/resolv.conf