第一部分:VMware 网络模式选择与基础设置
在配置 CentOS 系统内部的网络之前,必须先正确配置 VMware 虚拟机的网络连接模式,这决定了你的虚拟机如何与外部网络(包括你的主机和互联网)通信。

VMware 主要提供三种网络连接模式:
-
NAT (网络地址转换)
- 工作原理:这是最常用的模式,VMware 会创建一个私有网络(如 192.168.x.0),虚拟机通过虚拟的 NAT 服务访问外部网络,从外部看,所有虚拟机的网络请求都来自于你的主机 IP。
- 优点:配置简单,虚拟机可以自动获取 IP 地址,无需额外设置即可访问互联网。
- 适用场景:个人开发、测试,快速搭建环境。
-
桥接
- 工作原理:虚拟机的虚拟网卡直接连接到你主机的物理网卡,相当于在局域网中增加了一台独立的物理计算机。
- 优点:虚拟机在局域网中拥有独立的 IP,和你的主机地位平等,可以被其他设备直接访问。
- 适用场景:需要将虚拟机作为局域网中的一台独立服务器,例如搭建 Web 服务器、文件服务器等,需要被局域网内其他机器访问。
-
仅主机模式
(图片来源网络,侵删)- 工作原理:创建一个完全隔离的私有网络,只有你的主机和虚拟机可以互相通信,无法访问外部网络。
- 优点:安全性高,网络环境隔离。
- 适用场景:进行安全测试、模拟隔离的网络环境。
VMware 端口组设置(以 NAT 模式为例)
- 在 VMware Workstation/Fusion 中,点击顶部菜单栏的“编辑” -> “虚拟网络编辑器”。
- 选择你正在使用的 VMnet(
VMnet8,通常是 NAT 模式的默认选择),确保其模式为“NAT 模式”。 - 记下下方的“子网 IP”(
168.10.0)和“NAT 设置”中的“网关”(168.10.2),这些信息在后续配置静态 IP 时会用到。 - 点击“NAT 设置”,可以检查或修改 DHCP 服务器的地址池范围,虚拟机默认会从这个池中获取 IP。
- 点击“确定”保存设置。
第二部分:CentOS 系统内部网络配置
我们进入 CentOS 系统内部进行配置,这里主要介绍两种方法:命令行(推荐) 和 图形界面。
命令行配置(推荐,更稳定、可控)
在 CentOS 7 及更高版本中,网络配置主要通过 NetworkManager 和 nmcli 命令行工具来完成。
查看当前网络连接状态
查看系统中有哪些网络连接。
nmcli connection show
你会看到一个名为 ens33(或 ens160 等,取决于你的虚拟机硬件版本)的连接,这就是你的虚拟网卡。
配置为静态 IP 地址
这是服务器环境最常用的配置方式,确保 IP 地址固定不变。
步骤:
-
编辑连接配置 使用
nmcli命令来修改ens33的配置,这里我们假设:- IP 地址:
168.10.100 - 子网掩码:
255.255.0 - 网关:
168.10.2(这个网关是你在 VMware NAT 设置中看到的) - DNS 服务器:
8.8.8(Google DNS) 和114.114.114(国内 DNS)
# 连接到 ens33,并设置 IP、网关、DNS sudo nmcli connection modify 'ens33' \ ipv4.method manual \ ipv4.addresses 192.168.10.100/24 \ ipv4.gateway 192.168.10.2 \ ipv4.dns "8.8.8.8 114.114.114.114"ipv4.method manual: 指定使用静态 IP 配置。ipv4.addresses 192.168.10.100/24: 设置 IP 地址和子网掩码(/24等同于255.255.0)。ipv4.gateway: 设置网关。ipv4.dns: 设置 DNS 服务器,多个 DNS 用空格隔开。
- IP 地址:
-
重启网络连接使配置生效
sudo nmcli connection down 'ens33' && sudo nmcli connection up 'ens33'
或者更简单的命令:
sudo nmcli connection reload sudo nmcli connection up 'ens33'
-
验证配置
-
检查 IP 信息
ip a show ens33 # 或者使用 ifconfig ens33
你应该能看到
inet 192.168.10.100/24等信息。 -
检查网关和路由
ip route
你应该能看到
default via 192.168.10.2 dev ens33这条默认路由。 -
检查 DNS 和测试网络连通性
# 查看 DNS 解析配置 cat /etc/resolv.conf # 测试是否能解析域名 nslookup www.baidu.com # 测试是否能访问外网 ping www.baidu.com
-
配置为 DHCP (自动获取 IP)
如果你想让虚拟机自动获取 IP,比如在 NAT 模式下,可以执行以下命令:
# 设置为自动获取 IP sudo nmcli connection modify 'ens33' ipv4.method auto # 重启网络连接 sudo nmcli connection down 'ens33' && sudo nmcli connection up 'ens33'
图形界面配置
如果你安装了 CentOS 的图形桌面环境(GNOME),可以通过图形界面进行配置。
-
打开设置 点击桌面右上角的网络图标,选择“有线设置” (Wired Settings)。
-
进入网络详情 在打开的设置窗口中,点击你当前的连接(
Wired 1或ens33),然后点击齿轮图标“齿轮”进入“网络详情”。 -
配置 IPv4 在“网络详情”页面,找到“IPv4”选项卡,将其设置为“手动”。
- 地址:输入你想要的静态 IP,
168.10.100。 - 前缀长度:输入
24(代表子网掩码255.255.0)。 - 网关:输入 VMware NAT 的网关,
168.10.2。 - DNS:点击右侧的“+”号,添加 DNS 服务器,
8.8.8和114.114.114。
- 地址:输入你想要的静态 IP,
-
应用并关闭 点击右上角的“应用”按钮,系统会提示你需要一个根密码来应用这些更改,输入密码后,网络连接会短暂中断,然后应用新配置。
-
验证 同样可以通过在终端运行
ip a和ping www.baidu.com来验证配置是否成功。
第三部分:常见问题排查
如果配置后无法上网,请按以下步骤排查:
-
确认 VMware 网络模式
- 确保虚拟机的网络连接设置是
NAT或桥接,VMware NAT 服务(VMware Workstation) 或VMnetDHCP服务正在运行。 - 在 Windows 主机上,可以打开“服务”,找到
VMware DHCP Service和VMware NAT Service,确保它们的状态是“正在运行”。
- 确保虚拟机的网络连接设置是
-
检查防火墙 CentOS 自带的
firewalld防火墙可能会阻止网络连接。- 临时关闭防火墙(用于测试)
sudo systemctl stop firewalld
- 永久关闭(不推荐生产环境使用)
sudo systemctl disable firewalld
- 开放必要的端口(推荐做法)
如果只是外部无法访问虚拟机提供的服务(如 HTTP),可以开放相应端口。
sudo firewall-cmd --permanent --
- 临时关闭防火墙(用于测试)
