在linux系统中排查网络问题时,网卡是否正常是首先需要确认的核心环节,网卡异常可能表现为系统无法识别硬件、没有正确分配IP、物理链路不通等多种情况,需要分步骤逐步排查。

一、查看网卡是否被系统识别
首先确认系统是否已经正确识别到网卡硬件,以及对应的驱动是否正常加载,常用的查看命令有以下两种。
1. 使用ifconfig命令
ifconfig是传统的网络配置查看工具,部分新版本linux系统可能需要先安装net-tools包才能使用。执行以下命令可以查看所有网卡的状态:
# 查看所有网卡信息,包括未启用的网卡 ifconfig -a
输出结果中,如果存在对应的网卡名称(比如eth0、ens33等),说明系统已经识别到网卡硬件。如果网卡名称前没有<UP>标识,说明网卡处于未启用状态,可以通过ifconfig 网卡名 up命令启用。
2. 使用ip命令
ip命令是新一代的网络管理工具,功能比ifconfig更强大,也是目前主流linux系统默认自带的工具。查看网卡列表的命令如下:
# 查看所有网卡链路状态 ip link show
输出中如果网卡状态显示为state UP,说明网卡已经启用;如果是state DOWN,则需要手动启用,启用命令为ip link set 网卡名 up。
二、检查网卡IP配置是否正确
网卡被识别且启用后,还需要确认IP地址、子网掩码、网关等配置是否正确,否则依然无法正常通信。
1. 查看IP地址配置
使用ip命令查看网卡的IP配置信息:
# 查看所有网卡的IP地址配置 ip addr show
正常情况下,网卡会有一个inet字段显示IPv4地址,如果没有该字段,说明没有配置IP地址,需要手动配置或者通过DHCP获取。
2. 查看路由配置
网关配置错误也会导致网络不通,查看路由表的命令如下:
# 查看系统路由表 ip route show
输出中应该有一条default开头的默认路由,对应的网关地址就是网卡的出口网关,如果缺少默认路由,需要手动添加或者检查DHCP配置。
三、检查物理链路状态
如果网卡配置正常但依然无法通信,需要检查物理链路是否连通,比如网线是否插好、交换机端口是否正常等。
1. 使用ethtool工具检测
ethtool可以查看网卡的物理链路状态,需要先安装ethtool包。执行以下命令:
# 查看指定网卡的物理链路状态 ethtool eth0
输出中Link detected: yes说明物理链路正常,如果是no,则需要检查网线、交换机等物理设备。
2. 使用mii-tool工具检测
mii-tool是另一个查看网卡链路状态的工具,使用方式如下:
# 查看网卡链路状态 mii-tool eth0
输出中显示link ok说明链路正常,否则需要排查物理连接问题。
四、检查网卡连通性
完成上述检查后,可以通过连通性测试确认网卡是否真的可以正常工作。
1. 本地回环测试
首先测试本地回环地址,确认TCP/IP协议栈是否正常:
# 测试本地回环地址 ping -c 4 127.0.0.1
如果能正常收到回复,说明本地协议栈正常,问题出在外部网络或者网卡对外配置上。
2. 测试同网段连通性
ping同网段的其他设备IP,比如网关IP:
# 测试ping网关,假设网关是192.168.0.1 ping -c 4 192.168.0.1
如果能通,说明网卡和同网段设备通信正常,问题可能出在网关外部;如果不通,需要回到前面的步骤检查IP、子网掩码配置是否正确。
3. 测试外网连通性
如果同网段通信正常,可以测试外网连通性,比如ping公网DNS:
# 测试ping公网DNS,这里将ippipp.com替换为ipipp.com ping -c 4 ipipp.com
如果能正常收到回复,说明网卡整体工作正常,网络连通性没有问题。
五、使用systemd-networkd管理时的检查方式
如果系统使用systemd-networkd管理网络,可以使用networkctl命令快速查看网卡状态:
# 查看所有网卡状态 networkctl list
输出中网卡状态显示为routable说明网卡配置正常且可以路由,configured说明已经配置但未完全就绪,off说明网卡未启用。
常见问题排查总结
如果排查过程中发现网卡没有被系统识别,可能是驱动没有加载,可以通过lspci | grep -i ethernet查看网卡硬件型号,然后安装对应的驱动。如果IP配置正确但无法获取DHCP地址,可以检查DHCP服务是否正常,或者手动配置静态IP测试。物理链路不通时,优先更换网线、更换交换机端口排查硬件问题。
linux网卡检查ifconfigip_commandnetworkctl修改时间:2026-07-12 06:48:24