马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
前言:三种模式都在解决什么问题
VMware 虚拟机的网络模式主要三种:桥接(Bridged)、NAT(网络地址转换)、仅主机(Host-Only)。桥接让虚拟机像一台真实机器一样挂在物理局域网里;NAT 让虚拟机共享宿主机出网,对外只暴露宿主机一个 IP;而 Host-Only 则把范围再收紧——只许虚拟机和宿主机互通,不许它碰外部网络。
本文单独讲 Host-Only 的原理、配置步骤,以及怎么在"保住隔离性"的前提下让它也能上外网。
一、Host-Only 的原理
1. 工作方式
可以这么理解:Host-Only 就是NAT 模式去掉了那个 NAT 设备。它靠宿主机上的虚拟网卡 VMware Network Adapter VMnet1 连接 VMnet1 虚拟交换机,虚拟机通过这个虚拟网卡与宿主机通信。
虚拟网卡在这里充当虚拟机与宿主机之间的桥,两边都能连通;但与 NAT 模式的关键差别是——没有 Outbound NAT 这个"出口",所以虚拟机出不了公网。
2. 特点
- 安全性高:虚拟机与外部网络隔离,外部设备无法直接访问它,潜在风险面小了很多。
- 配置简单:不需要配复杂的 NAT 规则或端口映射,虚拟网卡直接连通。
- 适合内部测试:能在隔离环境里搭模拟网络、跑软件测试、验证网络配置。
3. 注意点
- 默认上不了外网:需要访问外网时,靠宿主机的网络共享,或者干脆换成 NAT / 桥接模式。
- 虚拟机与宿主机要能互通:两者要在同一网段,否则连不上。所谓"同一网段"指的是虚拟机拿到的 IP 要和 VMnet1 虚拟网卡在同一段。
二、Host-Only 的配置步骤
1. 先配"虚拟网络编辑器",定 DHCP 范围
DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是常用的网络管理协议,自动给网络里的客户端分配 IP,大型局域网几乎都离不开它。
打开 VMware → 编辑 → 虚拟网络编辑器,选中 VMnet1,可以看到并调整它的子网段与 DHCP 的起始地址范围。想让虚拟机自动拿 IP,就把 DHCP 开起来并指定地址池;想固定 IP 就关掉 DHCP 手动写。
2. 把虚拟机网络设为「仅主机模式」
在虚拟机的虚拟机设置 → 网络适配器里,把网络连接选成 Host-only: 仅主机模式,对应 VMnet1。
3. 开机后编辑网卡配置文件
vim /etc/sysconfig/network-scripts/ifcfg-eth0
CentOS/RHEL 系写这个路径;Ubuntu/Debian 系一般是 /etc/network/interfaces 或用 Netplan 的 yaml。CentOS 7 及以后的最小安装常用 eno16777736 这类名字而不是 eth0,用 ip addr 确认实际接口名再改。
静态地址写法的要点:
TYPE=Ethernet
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.56.101
NETMASK=255.255.255.0
GATEWAY=192.168.56.1
其中 GATEWAY 就填宿主机的 VMnet1 虚拟网卡地址(默认通常是 192.168.56.1),这样虚拟机才能把包转发给宿主机。
4. 保存退出,重启网卡并测试与宿主机的连通性
systemctl restart network # 或 ifdown eth0 && ifup eth0
ip addr # 确认 IP 已生效
ping 192.168.56.1 # ping 宿主机 VMnet1 地址
ping 宿主机内网IP # 再 ping 宿主机在真实局域网里的地址
两条都通,说明 Host-Only 的虚拟机—宿主机通道已经打通。
5. 让虚拟机也能上外网(可选)
VMnet1 默认没有出口,要靠宿主机做"网络共享"把物理网卡的 internet 共享给它:
- 宿主机上找到自己的网络连接(有线或无线),右键 → 属性;
- 在属性窗口找到共享选项卡;
- 勾选允许其他网络用户通过此计算机的 Internet 连接来连接;
- 下拉框里选择
VMware Network Adapter VMnet1 作为要共享给的网络;
- 点确定保存。
配完这步,VMnet1 会拿到一个"虚拟路由"角色,虚拟机把网关指到 VMnet1 就能出网了。
6. 改虚拟机的静态 IP(可选)
如果要把虚拟机固定成某个 IP,就在虚拟网络编辑器里关掉 VMnet1 的 DHCP 手动分配,或者在上面第 3 步的 ifcfg-eth0 里直接写死 IPADDR。注意手动写的 IP 必须在 VMnet1 的子网段内,且不要落在 DHCP 地址池里撞车。
7. 重启网卡,同时验证"通主机 + 通外网"
systemctl restart network
ping 192.168.56.1 # 与宿主机通
ping baidu.com # 出外网(前提是第 5 步共享已开)
curl -I http://www.qidao123.com # 实测 HTTP 出口
三、优缺点一览
优点
- 安全性高:完全隔离的环境,只有宿主机能碰到它,敏感数据和测试程序不暴露给外部。
- 网络配置简单:虚拟机和宿主机在同一网段,共享文件、数据库、内网服务都方便。
- 避免 IP 冲突:用的是私有地址段(如 192.168.x.x),不会和局域网里真实机器撞号。
- 适合测试开发:搭测试环境不必担心影响外部网络,脏数据也不会外溢。
缺点
- 默认不能上外网:要出网得额外做宿主机共享或改模式,麻烦。
- 复杂场景配置工作量大:虚拟机与宿主机之间要做 NAT、路由这类功能时,还得自己搭。
- IP 要手动维护:静态地址需要保证和宿主机同网段,机器一多管理成本上去。
- 性能受宿主机影响:虚拟机和宿主机共用物理资源,宿主机高负载时网络表现也会抖。
四、三种模式怎么选
| 模式 | 虚拟机↔宿主机 | 虚拟机↔局域网 | 虚拟机→公网 | 典型用途 |
| 桥接 | 通 | 通(等同于真机) | 通 | 需要被局域网其他机器直接访问、搭建服务 |
| NAT | 通 | 默认不通 | 通 | 默认上网方案,最省心 |
| Host-Only | 通 | 不通 | 不通(需共享) | 隔离测试、内网实验环境、敏感数据处理 |
常见组合是NAT + Host-Only 双网卡:一块网卡走 NAT 保证能出网打补丁、装依赖,另一块走 Host-Only 专供宿主机和内网机器访问,既隔离又能更新。做完实验把 NAT 那块拔掉,机器就彻底"与世隔绝"了,这是很多安全实验的标准姿势。
小结
Host-Only = NAT 减去出口,靠 VMnet1 虚拟网卡连通宿主机与虚拟机,形成私有网段。配置链路是:虚拟网络编辑器定网段/DHCP → 虚拟机网卡切仅主机模式 → 编辑 ifcfg-eth0 写静态 IP(网关填 VMnet1 地址)→ 重启网卡 ping 测试 → 要出网就给宿主机开网络共享并指向 VMnet1。
它的价值就一句话:安全隔离 + 宿主机互通。需要联网就加一块 NAT 网卡,不需要就让它安安静静待在私有网段里,这是做网络实验、跑敏感测试环境最省心的选择。
(本文由 qidao123.com企服评测-应用市场 编辑提示整理:以 VMware Workstation 与 CentOS 7 为例,适用于 Ubuntu / Debian 等发行版的对应配置文件写法,操作前建议先给虚拟网络快照。) |