一、CentOS Stream 10网卡配置
centos7及其之前版本,网络配置文件存放在:/etc/sysconfig/network-scripts/
centos8之后,使用NetworkManager作为网络工具,配置文件为:/etc/NetworkManager/system-connections/网卡名称.nmconnection。
例如:
[root@localhost ~]# cat /etc/NetworkManager/system-connections/ens160.nmconnection
[connection]
id=ens160 #网卡id
uuid=8d696df9-a929-3000-8748-d248f8242793
type=ethernet #设备类型:ethernet(以太网)、wifi、bridge(网桥)
autoconnect-priority=-999 #设置自动连接的优先级,值越大优先级越。默认设置为-999是一个极低的负值,表示NetworkManager禁用该连接的开机自启功能。即使 autoconnect=true,若优先级为负,连接也不会自动激活 。
interface-name=ens160 #网卡名称
timestamp=1786433719
autoconnect=true #开机自启动,由于上面的autoconnect-priority设为负数,所以不会生效。如要开启启动,autoconnect-priority设为正数,如0或100
[ethernet]
[ipv4]
method=auto #地址分配模式,auto为自动配置ip,manual为手动配置
[ipv6]
addr-gen-mode=eui64 #控制IPv6地址生成算法的核心参数,有4种:0(stable_privacy)、1(eui64)、2(none)、3(random)
method=auto
[proxy]
Linux 内核定义了四种主要的地址生成模式:
0 (stable_privacy):默认模式。基于RFC7217生成稳定的隐私地址。它结合接口标识和加密哈希(通常使用 secret)生成地址,既保证了地址在重启后不变(稳定性),又避免了直接暴露MAC地址(隐私性)。
1 (eui64):传统模式。直接使用EUI-64格式,将MAC地址插入ff:fe并翻转第七位生成IPv6后缀。地址永久固定,但会暴露物理硬件地址,隐私性较差。
2 (none):禁用自动生成。系统不会为接口生成SLAA或链路本地地址,仅保留手动配置的地址。常用于完全静态配置的场景。
3 (random):随机模式。每次生成或超时后重新计算地址,最大化隐私保护,但地址频繁变化,不适合需要固定地址的服务场景。
如要手动配置IPv4,则修改[ipv4]段即可,比如:
[ipv4]
method=manual #manual手动配置,auto为自动配置
addresses=192.168.0.131/24 #ip地址与子网掩码,/24等同于255.255.255.0
gateway=192.168.0.2 #网关
dns=114.114.114.114;8.8.8.8 #DNS
也可以写成:
[ipv4]
method=manual
address=192.168.0.131
prefix=24
gateway=192.168.0.2
dns=114.114.114.114;8.8.8.8
然后,执行systemctl restart NetworkManager命令,重启。发现IP没修改,是因为ens160不生效,还是使用“Wired connection 1”配置:
[root@localhost ~]# nmcli connection show
NAME UUID TYPE DEVICE
Wired connection 1 ad7036c4-1c0a-32c6-bdb7-2cbc29169a02 ethernet ens160
lo 4b615a57-ea5c-4251-8c00-fbeb77a8cb57 loopback lo
ens160 8d696df9-a929-3000-8748-d248f8242793 ethernet --
停用”Wired connection 1″:
nmcli connection down "Wired connection 1"
或者删除:Wired connection 1
[root@localhost ~]# nmcli connection delete "Wired connection 1"
再查看:

此时,正常了。
一般情况下,修改配置文件后,执行以下命令,以便生效。
[root@localhost ~]# nmcli connection reload && nmcli connection down ens160 && nmcli connection up ens160
二、Ubuntu 26.04网卡配置
对于服务器环境或 Ubuntu 18.04 及之后的版本,推荐使用 Netplan 配置静态 ip。 对于桌面系统或使用 NetworkManager 管理网络的环境,可以使用 nmcli 工具(执行命令安装:apt install network-manager)。
Ubuntu有两种网络配置文件方式:netplan(18.04及之后版本)或者传统的/etc/network/interfaces文件。
Netplan是Ubuntu 18.04及更高版本中推荐的配置网络的方式。它使用YAML格式的配置文件,位于/etc/netplan目录下。
Netplan官网:https://netplan.io/
默认路径:/etc/netplan/
- 文件名示例:
01-netcfg.yaml(基础环境)或50-cloud-init.yaml(云环境) - 格式要求:YAML语法,严格遵循缩进规则(通常2个空格)
Netplan 的 YAML 格式要求:
缩进必须使用空格,不可使用Tab
键值对使用 : 分隔
数组使用 - 标识
YAML文件对缩进和冒号后空格敏感
yaml文件关键配置项:
version:Netplan版本,默认2
renderer:网络后端,networkd(服务器版)、NetworkManager(桌面版)
ethernets:网卡配置块,根据实际修改接口名,如ens33
dhcp4:true(yes),表示启用动态ipv4,false(no)表示需要手动配置
dhcp6:true(yes),表示启用动态ipv6,false(no)表示需要手动配置
addresses:配置静态ip与子网掩码,比如:192.168.0.132/24
routes:默认网关配置,比如:via:192.168.0.2
nameservers:DNS配置,比如:addresses: [114.114.114.114,8.8.8.8]
默认配置如下:

这是自动获取ip。默认配置中,并没写renderer。
# This is the network config written by 'subiquity'
network:
ethernets:
ens33:
dhcp4: true #这是ipv4,true或yes表示自动获取
dhcp6: true ##这是ipv6,true或yes表示自动获取
match:
macaddress: 00:0c:29:ad:95:2c
set-name: ens33
version: 2
手动配置ip如下:
# This is the network config written by 'subiquity'
network:
ethernets: #以太网配置块
ens33: #网卡名称
dhcp4: false #false,启用静态ip
dhcp6: false
addresses: #设置ip和子网掩码
- 192.168.0.132/24 #设置静态ip,ip/子网掩码(24:255.255.255.0)
routes: #网关设置,gateway4,Ubuntu26.04的netplan已经弃用gateway4字段
- to: default #默认路由
via: 192.168.0.2 #网关ip
nameservers: #DNS配置
addresses:
- 114.114.114.114 #主dns
- 8.8.8.8 #备用dns
match:
macaddress: 00:0c:29:ad:95:2c
set-name: ens33
version: 2 #Netplan版本
子网掩码对照表:
/24:255.255.255.0,可用ip数254
/25:255.255.255.128,可用ip数126
/26:255.255.255.192,可用ip数62
/16:255.255.0.0,可用ip数65534
修改保存配置文件后:
执行netplan try命令,测试配置是否有错。也可以执行执行netplan apply命令让配置生效。
注意:为什么使用 netplan try:如果配置错误(比如 IP 和网关不在同一网段),系统会在 60 秒后自动回滚,避免因配置错误导致无法连接服务器。因此,建议使用netplan try测试。
netplan try特征:
配置生效后会进入确认倒计时
如果网络断开,自动回滚
非常适合远程修改ip
确认网络正常后,按提示回车即可。
所以,如果是通过 SSH 连接服务器,不要直接 netplan apply。

对于ip、路由、dns的设置也可以使用以下格式:
# This is the network config written by 'subiquity'
network:
ethernets:
ens33:
dhcp4: false
dhcp6: false
addresses: [192.168.0.132/24] #设置静态ip,ip/子网掩码(24:255.255.255.0)
routes: #网关设置,gateway4,Ubuntu26.04的netplan已经弃用gateway4字段
- to: 0.0.0.0/0 #默认路由,也可以写成default或者具体的某个网段,如192.168.0.0/24
via: 192.168.0.2 #网关ip
nameservers: #DNS配置
addresses: [114.114.114.114,8.8.8.8]
match:
macaddress: 00:0c:29:ad:95:2c #网卡mac地址
set-name: ens33
version: 2
其他命令:
netplan --debug apply: 查看netplan文件语法
ip route: 查看路由网关
nslookup 域名: 测试DNS解析
ip a: 查看完整的网络信息。
ifconfig: 同样可以查看完整的网络信息
ip addr show: 同样可以查看完整的网络信息
ip addr 网卡: 查看某个网卡的网络信息
DNS配置文件:/etc/resolv.conf
netplan命令:直接执行netplan命令,可以查看其用法
