我们要为 Linux(CentOS Stream 9) 系统配置静态 IP,只需要对 Linux 系统使用的网卡对应的配置文件进行相应的修改即可
Linux 的配置文件一般放在 /etc 目录(etc 为 Linux 存放配置文件的目录)下,所以先进入 etc 目录
bash
cd /etc
进入 etc 目录后,可以发现,在该目录下,存在 NetworkManager 目录(网络管理目录),在该目录中存放了网络管理相关的配置文件,所以我们接下来进入 NetworkManager 目录
bash
cd NetworkManager
进入 NetworkManager 目录后,在该目录中,存在 system-connections 目录,该目录是 Linux(CentOS Stream 9) 与网络连接相关的配置文件存放的目录,所以接下来进入 system-connections 目录
bash
cd system-connections
进入 system-connections 目录后,会发现有一个文件名和 Linux 系统网卡名相同的文件,该文件就是相应网卡的配置文件,所以我们要为网卡配置静态 IP,只需在该文件中进行相应的修改即可
接下来为网卡配置静态 IP,我们只需要在网卡对应的配置文件中把原本自动获取 IP 的方式修改为手动配置 IP,然后手动为网卡配置 IP、IP 的掩码长度、网关以及 DNS 域名解析服务器
我们先查询虚拟机的 IP 掩码长度和网关
我 VMware 虚拟机使用的网络模式为 NAT,因此要看 NAT 模式下的 IP 掩码长度和网关

注意,后面手动为虚拟机网卡分配的 IP 应该在 DHCP 设置的 IP 范围内

接下来,对 Linux 虚拟机网卡的配置文件进行编辑,在其中配置静态 IP
shell
vim ./ens160.nmconnection
shell
# ipv4 网络配置
[ipv4]
# IP 获取的方法为自动获取,这个注释掉
# method=auto
# 手动进行 IP 的分配
method=manual
# 为该网卡分配 IPv4 静态 IP,注意该 IP 需要没有被使用,且应该在 DHCP 设置的范围内
# 同时指定掩码长度和网关
address1=192.168.42.130/24,192.168.42.2
# 指定 DNS 域名解析服务器,多个 dns 之间使用 , 分隔
# 我这里直接使用公共域名的解析服务 DNS
# 114.114.114.114 国内移动、电信和联通通用的 DNS
# 8.8.8.8 GOOGLE 公司提供的 DNS
dns=114.114.114.114,8.8.8.8

配置修改完成后,按下 esc
退出编辑模式,然后输入 :wq
,按下 enter
保存并退出
然后重启网络管理服务,让网卡重新读取加载配置文件
bash
systemctl restart NetworkManager.service

现在我们再查看网卡的 IP 地址
bash
ip addr
此时,会发现该虚拟机的网卡存在两个 IP 地址,是由于启用了电脑本地的 DHCP 服务,将 IP 分配了虚拟机的网卡
为了避免冲突,我们可以将其关闭,在 VMware 的虚拟网络编辑器中,选择你使用的网络模式,然后使用管理员权限进行设置的修改,将"使用本地 DHCP 服务将 IP 地址分配给虚拟机"取消勾选,然后点击"应用""确定"即可
再次查看虚拟机网卡的 IP 就只剩一个,我们手动分配的 IP 地址了
bash
ip addr

然后我们 ping 外网进行测试
bash
ping www.baidu.com

至此,为 Linux(CentOS Stream 9) 虚拟机配置静态 IP 完成