在 Linux 中,ifconfig 是传统的网络接口配置与诊断工具(在新发行版中常被 ip 命令取代,但思路类似)。下面从常见故障场景出发,说明如何用 ifconfig 进行诊断。
ifconfig
# 或
ifconfig -a
重点关注:
eth0、ens33、wlan0)UPinet 地址RX/TX 数据包| 现象 | 可能问题 |
|---|---|
| 网卡未显示 | 驱动未加载 / 网卡未识别 |
无 inet 地址 |
未获取 IP(DHCP 失败) |
无 UP |
接口被关闭 |
| RX/TX 为 0 | 物理连接或交换机问题 |
ifconfig eth0
若没有 UP:
sudo ifconfig eth0 up
⚠️ 注意:仅 up 不会自动获取 IP。
ifconfig eth0
示例正常输出:
inet 192.168.1.10 netmask 255.255.255.0
问题判断:
169.254.x.x → DHCP 失败(APIPA)route -n
# 或
ip route
确认:
0.0.0.0测试:
ping 网关IP
ifconfig eth0
关注:
RX packets:1000 errors:0 dropped:0
TX packets:800 errors:0 dropped:0
异常说明:
errors 高 → 网卡/驱动/链路问题dropped 高 → 内核或缓冲区问题overruns → 接收队列溢出ifconfig 看不到 DNS,但网络“通 IP 不通域名”时常被误认为网卡问题。
cat /etc/resolv.conf
ping 8.8.8.8
ping www.baidu.com
ifconfig -a → 网卡是否存在ifconfig eth0 → 是否 UP、有 IProute -n → 是否有网关ping 网关 → 链路是否通ping 8.8.8.8 → 外网是否通ping 域名 → DNS 是否正常ip addr
ip link
ip route
功能更强,推荐新系统使用。
如果你愿意,可以贴出 ifconfig 输出内容,我可以帮你具体分析是哪一种故障。