在Linux系统中,网卡的配置与管理是系统管理员日常工作中不可或缺的一部分,无论是为服务器配置静态IP地址,还是调整网络参数以适应不同的网络环境,熟练掌握Linux网卡设置命令都至关重要,本文将详细介绍Linux系统中常用的网卡配置命令,涵盖从基础查看到高级配置的各个方面,帮助读者全面掌握网卡管理的技能。

查看网卡信息与状态
在配置网卡之前,首先需要了解当前网卡的基本信息和状态,Linux提供了多种命令用于查看网卡详情,其中最常用的是ip命令和ifconfig命令(较旧系统)。
使用ip命令查看网卡信息
ip命令是Linux系统中功能强大的网络配置工具,取代了传统的ifconfig命令,通过ip a或ip addr show可以查看所有网卡的IP地址、MAC地址、子网掩码等信息:
ip a
输出结果中,inet字段表示IPv4地址,inet6表示IPv6地址,link/ether则是网卡的MAC地址,若需查看特定网卡(如eth0)的信息,可使用:
ip a show eth0
使用ifconfig命令(传统工具)
在较旧的Linux发行版中,ifconfig命令仍然可用,通过ifconfig可以查看网卡的IP地址、MAC地址及运行状态:
ifconfig
若需查看特定网卡,直接指定网卡名称即可,如ifconfig eth0。
查看网卡连接状态
通过ip link或ethtool命令可以查看网卡的物理连接状态,使用ip link show eth0查看网卡是否启用(UP/DOWN状态),或使用ethtool eth0查看网速、双工模式等详细信息:
ethtool eth0
启用/禁用网卡
在配置网络时,可能需要临时启用或禁用网卡。ip命令提供了简单的方法来实现这一操作。
启用网卡
使用ip link set命令将网卡状态设置为UP:
sudo ip link set eth0 up
禁用网卡
同理,将网卡状态设置为DOWN即可禁用:
sudo ip link set eth0 down
使用ifup/ifdown命令
部分Linux发行版支持ifup和ifdown命令,这两个命令会根据网卡配置文件自动启用或禁用网卡:
sudo ifup eth0 # 启用网卡 sudo ifdown eth0 # 禁用网卡
配置静态IP地址
为服务器配置静态IP地址是常见需求,尤其是在需要固定服务端口或内部网络通信的场景中。

临时配置静态IP(重启失效)
使用ip addr命令可以临时为网卡配置IP地址,但配置不会在重启后保存:
sudo ip addr add 192.168.1.100/24 dev eth0 # 添加IP地址和子网掩码 sudo ip link set eth0 up # 启用网卡 sudo ip route add default via 192.168.1.1 # 设置默认网关
永久配置静态IP(方法一:NetworkManager图形化工具)
对于使用NetworkManager的发行版(如Ubuntu、CentOS 7+),可通过nmtui(文本界面)或nm-connection-editor(图形界面)配置静态IP,以nmtui为例:
sudo nmtui
进入“编辑连接”->“添加”->“以太网”,选择网卡名称,手动配置IP地址、子网掩码、网关和DNS服务器,保存后重启网络服务。
永久配置静态IP(方法二:修改网卡配置文件)
在基于Debian/Ubuntu的系统(如使用netplan)中,配置文件通常位于/etc/netplan/目录下,编辑01-netcfg.yaml:
network:
version: 2
ethernets:
eth0:
dhcp4: no
addresses:
- 192.168.1.100/24
gateway4: 192.168.1.1
nameservers:
addresses: [8.8.8.8, 8.8.4.4]
保存后执行sudo netplan apply使配置生效。
在基于RHEL/CentOS的系统(如使用NetworkScripts)中,配置文件为/etc/sysconfig/network-scripts/ifcfg-eth0:
TYPE=Ethernet BOOTPROTO=static IPADDR=192.168.1.100 NETMASK=255.255.255.0 GATEWAY=192.168.1.1 DNS1=8.8.8.8 ONBOOT=yes
保存后执行sudo systemctl restart network重启网络服务。
配置动态IP地址(DHCP)
在客户端设备或需要自动获取IP地址的场景中,可配置网卡通过DHCP获取IP。
临时配置DHCP
使用dhclient命令(需安装dhclient包)动态获取IP:
sudo dhclient eth0
永久配置DHCP
在网卡配置文件中,将BOOTPROTO设置为dhcp(对于RHEL/CentOS系统),或在netplan配置中将dhcp4: yes。netplan配置示例:
network:
version: 2
ethernets:
eth0:
dhcp4: yes
保存后应用配置即可。

配置DNS与路由
除了IP地址,DNS服务器和路由配置也是网络管理的重要部分。
配置DNS服务器
在netplan或NetworkScripts配置文件中,通过nameservers字段指定DNS服务器(如上文静态IP配置所示),临时修改DNS可通过resolv.conf文件:
sudo echo "nameserver 8.8.8.8" > /etc/resolv.conf
配置静态路由
若需添加静态路由(如访问特定网段),可使用ip route add命令:
sudo ip route add 192.168.2.0/24 via 192.168.1.254 dev eth0
永久保存路由需在/etc/sysconfig/network-scripts/route-eth0(RHEL/CentOS)或netplan配置中添加。
高级网络配置
配置 bonding(网卡绑定)
通过网卡绑定技术可将多个物理网卡虚拟为一个逻辑网卡,提高带宽和冗余性,以mode=1(主备模式)为例,编辑/etc/network/interfaces(Debian/Ubuntu):
auto bond0
iface bond0 inet static
address 192.168.1.100
netmask 255.255.255.0
gateway 192.168.1.1
bond-slaves eth0 eth1
bond-mode 1
bond-miimon 100
配置VLAN(虚拟局域网)
使用ip命令创建VLAN接口:
sudo ip link add link eth0 name eth0.100 type vlan id 100 sudo ip addr add 192.168.100.1/24 dev eth0.100 sudo ip link set eth0.100 up
常见问题排查
检查网络连通性
使用ping测试网络连通性:
ping 8.8.8.8
查看网络连接状态
通过netstat或ss命令查看端口监听状态:
ss -tulnp | grep :80
查看网络日志
通过journalctl -u NetworkManager或/var/log/syslog查看网络服务日志,排查配置错误。
Linux网卡配置命令功能强大且灵活,从基础的查看状态到高级的 bonding 和 VLAN 配置,都需要系统管理员熟练掌握,本文介绍的ip、ifconfig、netplan、NetworkScripts等工具和配置方法,涵盖了大多数日常网络管理场景,在实际操作中,建议根据具体Linux发行版选择合适的配置方式,并通过日志和测试命令确保配置正确性,以保障网络的稳定运行。



















