一、openEuler 网卡基础查询指令(必掌握)
**
openEuler 基于 Linux 内核,继承了传统 Linux 网卡管理工具(如 ip、nmcli),同时兼容部分 ifconfig 指令(需安装 net-tools 工具包),以下是最常用的查询指令:
- 查看网卡列表与状态(核心指令)
方法1:ip 指令(推荐,openEuler 默认自带)
ip addr show # 缩写:ip a
输出说明:
inet 192.168.1.100/24:IPv4 地址与子网掩码
inet6 fe80::20c:29ff:fe12:3456/64:IPv6 地址
link/ether 00:0c:29:12:34:56:MAC 地址
UP BROADCAST RUNNING MULTICAST:网卡状态(UP 表示启用)
方法2:nmcli 指令(NetworkManager 管理工具,默认启用)
nmcli connection show # 查看所有网络连接(含网卡关联关系)
nmcli device status # 查看网卡设备状态(DEVICE 列是网卡名,STATE 列是状态)
方法3:ifconfig 指令(需安装 net-tools,兼容老习惯)
yum install -y net-tools # 安装依赖
ifconfig # 查看所有激活网卡信息
ifconfig -a # 查看所有网卡(含未激活)
- 查看网卡流量与统计信息
方法1:ip -s 指令(查看收发数据包统计)
ip -s link show eth0 # eth0 为网卡名,替换为实际名称
输出说明:
RX: bytes packets errors dropped:接收字节、数据包、错误数、丢弃数
TX: bytes packets errors dropped:发送字节、数据包、错误数、丢弃数
方法2:sar 指令(实时监控流量,需安装 sysstat)
yum install -y sysstat
sar -n DEV 1 5 # 每1秒采集1次,共5次(DEV 表示网卡设备)
- 查看网卡硬件信息
查看网卡型号与驱动
lspci | grep -i ethernet # 输出网卡硬件型号(如 Intel I219-LM)
ethtool eth0 | grep -i driver # 查看网卡驱动(如 e1000e)
查看网卡速率与双工模式
ethtool eth0 # 输出速率(Speed)、双工(Duplex)、唤醒模式等
二、网卡配置修改指令(临时 / 永久生效)
- 临时配置(重启网卡 / 系统后失效,适合测试)
1. 启用/禁用网卡
ip link set eth0 up # 启用 eth0 网卡
ip link set eth0 down # 禁用 eth0 网卡
nmcli device connect eth0 # 用 nmcli 启用网卡
nmcli device disconnect eth0 # 用 nmcli 禁用网卡
2. 临时设置 IPv4 地址
ip addr add 192.168.1.100/24 dev eth0 # 添加 IPv4 地址
ip addr del 192.168.1.100/24 dev eth0 # 删除 IPv4 地址
3. 临时设置网关
ip route add default via 192.168.1.1 dev eth0 # 设置默认网关
ip route del default via 192.168.1.1 # 删除默认网关
4. 临时设置 DNS(修改 /etc/resolv.conf,重启后失效)
echo "nameserver 8.8.8.8" > /etc/resolv.conf # 设置谷歌 DNS
echo "nameserver 114.114.114.114" >> /etc/resolv.conf # 添加国内 DNS
- 永久配置(重启后生效,生产环境推荐)
openEuler 推荐通过 nmcli 或修改网络配置文件实现永久配置,以下是两种主流方式:
(1)通过 nmcli 指令配置(图形化工具兼容,推荐)
1. 创建新的网络连接(绑定 eth0 网卡)
nmcli connection add type ethernet con-name eth0-static ifname eth0
con-name:连接名称(自定义,如 eth0-static)
ifname:绑定的网卡名(如 eth0)
2. 配置静态 IPv4 地址、网关、DNS
nmcli connection modify eth0-static
ipv4.method manual \ # 手动配置 IPv4(auto 为 DHCP)
ipv4.addresses 192.168.1.100/24 \ # IPv4 地址+子网掩码
ipv4.gateway 192.168.1.1 \ # 网关
ipv4.dns 8.8.8.8,114.114.114.114 # DNS(多个用逗号分隔)
3. 激活配置并生效
nmcli connection up eth0-static # 激活连接
nmcli connection reload # 重新加载配置(若修改后未生效)
(2)修改配置文件(传统方式,/etc/sysconfig/network-scripts/)
1. 编辑网卡配置文件(文件名格式:ifcfg-网卡名)
vi /etc/sysconfig/network-scripts/ifcfg-eth0
2. 配置静态 IP(关键参数)
TYPE=Ethernet
BOOTPROTO=static # 静态 IP(dhcp 为自动获取)
NAME=eth0 # 网卡名称
DEVICE=eth0 # 设备名(需与网卡名一致)
ONBOOT=yes # 开机自动激活
IPADDR=192.168.1.100 # IPv4 地址
NETMASK=255.255.255.0 # 子网掩码(或 PREFIX=24)
GATEWAY=192.168.1.1 # 网关
DNS1=8.8.8.8 # 首选 DNS
DNS2=114.114.114.114 # 备用 DNS
3. 重启网卡生效
systemctl restart NetworkManager # 重启 NetworkManager 服务
或 重启单个网卡
nmcli connection down eth0 && nmcli connection up eth0
- 配置网卡别名(多 IP 场景)
方法1:临时添加别名(eth0:0 为别名,重启失效)
ip addr add 192.168.1.101/24 dev eth0 label eth0:0
方法2:永久添加别名(修改配置文件)
cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth0:0
vi /etc/sysconfig/network-scripts/ifcfg-eth0:0
修改关键参数:
NAME=eth0:0
DEVICE=eth0:0
IPADDR=192.168.1.101 # 新的 IP 地址
其他参数(如 NETMASK、GATEWAY)可复用或修改
激活别名
nmcli connection up eth0:0
三、网卡故障排查指令(高频问题解决)
- 网卡无法激活 / 启动失败
1. 查看网卡状态与错误日志
nmcli device status # 确认网卡 STATE 是否为 disconnected
journalctl -u NetworkManager | grep -i eth0 # 查看 NetworkManager 日志,找错误原因(如配置文件语法错误)
2. 检查网卡是否被禁用(硬件层面)
rfkill list # 查看是否有无线网卡被软禁用(有线网卡一般不涉及)
ethtool eth0 | grep -i link # 查看 Link detected: yes/no(no 表示硬件故障或未插网线)
3. 重置网卡配置(解决配置冲突)
nmcli connection delete eth0-static # 删除原有连接
nmcli connection add type ethernet con-name eth0-static ifname eth0 # 重新创建
- 网卡无法获取 IP 地址(DHCP 场景)
1. 手动触发 DHCP 获取
dhclient eth0 # 向 DHCP 服务器请求 IP
ip addr show eth0 # 查看是否获取到 IP
2. 查看 DHCP 日志(排查服务器问题)
journalctl -u dhclient | grep -i eth0
3. 检查网关与 DNS 连通性
ping 192.168.1.1 # ping 网关(测试链路)
ping 8.8.8.8 # ping DNS(测试外网连通性)
- 网卡速率异常 / 丢包
1. 查看丢包与错误统计
ip -s link show eth0 # 重点关注 errors、dropped 数值是否持续增长
2. 重新协商网卡速率(强制千兆全双工)
ethtool -s eth0 speed 1000 duplex full autoneg off
speed:速率(10/100/1000),duplex:双工(half/full),autoneg:自动协商(on/off)
3. 检查网线与交换机端口(硬件层面)
更换网线(推荐 Cat5e 及以上),确认交换机端口速率配置与网卡一致
四、网卡高级配置指令(优化与特殊场景)
- 网卡绑定(Bonding,高可用 / 负载均衡)
1. 安装 bonding 模块(openEuler 默认内置)
modprobe bonding # 加载模块
lsmod | grep bonding # 验证模块加载
2. 创建 Bond 接口(通过 nmcli)
nmcli connection add type bond con-name bond0 ifname bond0 mode 1
mode 1:主备模式(active-backup),mode 0:负载均衡(round-robin)
3. 添加从网卡到 Bond 接口
nmcli connection add type ethernet con-name bond0-slave1 ifname eth0 master bond0
nmcli connection add type ethernet con-name bond0-slave2 ifname eth1 master bond0
4. 配置 Bond 接口 IP 并激活
nmcli connection modify bond0 ipv4.method manual ipv4.addresses 192.168.1.200/24 ipv4.gateway 192.168.1.1
nmcli connection up bond0
nmcli connection up bond0-slave1
nmcli connection up bond0-slave2
5. 验证 Bond 状态
cat /proc/net/bonding/bond0 # 查看主备状态、从网卡信息
- 网卡流量限速(tc 指令)
限制 eth0 网卡出站速率为 100Mbit/s
tc qdisc add dev eth0 root tbf rate 100mbit burst 100k latency 50ms
rate:限制速率(10mbit/100mbit/1gbit),burst:突发流量,latency:延迟阈值
查看限速配置
tc qdisc show dev eth0
删除限速配置
tc qdisc del dev eth0 root
- 关闭网卡节能模式(避免速率波动)
临时关闭(重启失效)
ethtool -C eth0 rx-usecs 0 tx-usecs 0 # 关闭接收/发送节能延迟
ethtool --set-eee eth0 eee off # 关闭 EEE 节能(部分网卡支持)
永久关闭(添加到开机脚本)
echo 'ethtool -C eth0 rx-usecs 0 tx-usecs 0' >> /etc/rc.d/rc.local
chmod +x /etc/rc.d/rc.local # 赋予执行权限
五、核心指令速查表(快速参考)
操作场景
推荐指令
查看网卡列表
ip a / nmcli device status
启用 / 禁用网卡
ip link set eth0 up/down
临时设置静态 IP
ip addr add 192.168.1.100/24 dev eth0
永久设置静态 IP
nmcli connection modify 或修改 ifcfg 文件
查看网卡流量统计
ip -s link show eth0 / sar -n DEV 1 5
排查网卡启动失败
`journalctl -u NetworkManager
创建 Bond 绑定
nmcli connection add type bond
查看网卡驱动与速率
ethtool eth0
六、总结
openEuler 网卡管理以 ip 和 nmcli 为核心指令,覆盖查询、配置、故障排查全场景,相比传统 ifconfig 更强大、更兼容现代 Linux 系统。日常运维中,建议优先使用 nmcli 进行永久配置(避免配置文件冲突),用 ip 指令进行临时测试与查询,结合 ethtool、journalctl 等工具快速定位故障。掌握本文核心指令,可高效处理网卡配置、速率优化、高可用绑定等常见需求,保障 openEuler 系统网络稳定运行。