CentOS Stream 9作为CentOS Stream发行版的下一个主要版本,已经发布有一段时间,但与目前广泛使用的CentOS7有较大区别。安装试用Stream 9的过程中,就发现设置静态IP的方式和CentOS7/8差别较大,在此记录一下配置过程。
具体步骤如下🏅
# cat /etc/redhat-release
CentOS Stream release 9
# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: ens192: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:50:56:a0:9c:d9 brd ff:ff:ff:ff:ff:ff
altname enp11s0
inet 10.10.214.254/24 brd 10.10.214.255 scope global noprefixroute ens192
valid_lft forever preferred_lft forever
inet6 fe80::250:56ff:fea0:9cd9/64 scope link noprefixroute
valid_lft forever preferred_lft forever
从上面命令可以看出网卡名称是ens192
# grep -rn /etc -e ens192
/etc/NetworkManager/system-connections/ens192.nmconnection:2:id=ens192
/etc/NetworkManager/system-connections/ens192.nmconnection:6:interface-name=ens192
可以看出,/etc/NetworkManager/system-connections/ens33.nmconnection即是网卡的配置文件
[connection]
id=ens33
uuid=0050f214-01a7-395e-ab19-b6e95412995a
type=ethernet
autoconnect-priority=-999
interface-name=ens33
[ipv4]
address1=192.168.64.170/24,192.168.64.2
dns=114.114.114.114
method=manual
nmcli c reload # 重新加载配置文件
nmcli c up ens33 # 重启ens33网卡
# 查看所有网络连接
# 长格式
nmcli connection show
# 短格式,缩写
nmcli con show
# 查看活动的网络连接
nmcli con show -active
# 查看指定网卡的详细信息
nmcli con show eth0
# 显示设备的连接状态
nmcli status
# 显示所有设备网络设备详情信息
nmcli device show
# 显示指定网络设备的详细信息
nmcli device show eth0
# 启用网络连接
nmcli con up eth0
# 停用网络连接(可以被自动激活)
nmcli con down eth0
# 禁用网卡,防止自动被激活
nmcli device disconnect eth0
# 删除网络连接的配置文件
nmcli con delete eth0
# 重新加载网络配置文件
nmcli con reload
# 使用 add 命令会在 /etc/sysconfig/network-scripts中生成以为 ifcfg开头加add指定的 con-name 名称命名,此文件皆由 nmcli命令进行动态配置
# 如果手动修改 ifcfg文件,重启NetworkManager是无法生效,还需要在执行 nmcli con up才行
# 因此不建议手动修改配置文件,一切修改都使用nmcli命令,修改后执行 nmcli con up 立即生效
# 动态获取IP方式的网络连接配置:
nmcli con add con-name dynamic ifname ens36 type ethernet
#启用动态配置文件
nmcli con up dynamic
# 指定静态IP方式的网络连接配置:
nmcli con add con-name static ifname ens36 autoconnect yes type ethernet ip4 10.10.10.10/24 gw4 10.10.10.1
#启动静态配置文件
nmcli con up static
# 设置网卡自启动,实际修改的是网卡配置文件 ONBOOT=yes
nmcli con mod CON-NAME connection.autoconnect yes
# 修改IP地址是静态(manual)还是dhcp动态(auto)
# 实际修改的是网卡配置文件BOOTPROTO,BOOTPROTO=none 表示静态;BOOTPROTO=dhcp 表示动态
nmcli con mod CON-NAME ipv4.method manual(static) | auto
# 修改IP配置及网关
nmcli con mod CON-NAME ipv4.addresses “10.10.10.10/24 10.10.10.1”
# 修改默认网关
nmcli con mod CON-NAME ipv4.gateway 10.10.10.1
# 添加第二个IP地址
nmcli con mod CON-NAME +ipv4.addresses 10.10.10.10/16
# 删除第二个IP地址
nmcli con mod CON-NAME -ipv4.addresses 10.10.10.10/16
# 添加dns1
nmcli con mod CON-NAME ipv4.dns 114.114.114.114
# 添加dns2
nmcli con mod CON-NAME +ipv4.dns 8.8.8.8
#修改配置文件
nmcli con mod # ifcfg-* 文件
# IP获取方式
ipv4.method manual|static # BOOTPROTO=none
ipv4.method auto # BOOTPROTO=dhcp
# 连接名称
connection.id eth0 # NAME=eth0
#IP地址信息
ipv4.addresses
“192.0.2.1/24 # IPADDR0=192.0.2.1 PREFIX0=24
192.0.2.254” # GATEWAY0=192.0.2.254
# dns
ipv4.dns 8.8.8.8 # DNS0=8.8.8.8
# dns搜索域
ipv4.dns-search example.com # DOMAIN=example.com
ipv4.ignore-auto-dns true # PEERDNS=no
connection.autoconnect yes # ONBOOT=yes
connection.interface-name eth0 # DEVICE=eth0
802-3-ethernet.mac-address... # HWADDR=...