虚拟机网络模式笔记
虚拟机网络模式
| 模式 | 核心特点 | 外网访问能力 | 与主机通信能力 | 典型应用场景 |
|---|---|---|---|---|
| 桥接模式 | 虚拟机与主机共享物理网卡 获取同网段 IP | 可直接访问外网 | 同一网路可双向通信 | 需对外提供服务时用 如搭建Web 服务器、与其他设备互相访问等等 |
| NAT 模式 | 虚拟机用私有 IP 流量经主机 NAT 转发 | 可访问外网 (依赖主机 NAT转发) | 天然互通 (无需额外配置) | 开发首选 如快速联网装环境、主机直连SSH 等等 |
| 仅主机模式 | 虚拟机连封闭虚拟网卡 与外网完全隔离 | 无法访问外网 | 同意虚拟网络可双向通信 | 本地隔离测试, 如单机服务调试、数据不对外的开发环境等等 |
| 自定义模式 | 指定 VMnet1/8/0, 灵活配网络 | 取决于所选虚拟网络 | 取决于所选虚拟网络 | 复杂场景, 如多虚拟网卡协同、特定协议模拟等等 |
| LAN 区段 | 多虚拟机连专属虚拟网卡 区段外无法访问 | 默认无法访问1外网 | 默认无法通信 | 模拟复杂网络, 如多虚拟机模拟服务器集群,测试内部通信等等 |
日常开发(尤其是个人/常规项目开发)中,NAT 模式和桥接模式因适配开发需求、配置简单,使用频率远高于其他模式;仅主机、自定义、LAN 区段模式受场景限制,很少在常规开发流程中用到
| 对比维度 | NAT模式 | 桥接模式 |
|---|---|---|
| 网络原理 | 虚拟机借主机网络“转发”上网(类似连热点) | 虚拟机与主机平级连物理网络(类似插网线 |
IP配置 | 自动分配,无需手动 | 需手动设置同网段IP(易冲突) |
| 联网复杂度 | 选模式即联网,零配置 | 需配置IP/网关/DNS,易出错 |
| VS Code远程连接 | 天然互通,填IP直连 | 需确保IP同网段且不冲突 |
| 开发适配场景 | 首选!日常写代码、装环境、远程开发 | 需对外提供服务(如虚拟机搭网站供手机访问) |
| 安全隔离性 | 虚拟机藏于主机内网,防外部干扰 | 暴露在物理网络,易被局域网设备访问 |
NAT网段计算
在 VMware 虚拟机环境中,NAT 模式的网段由宿主机虚拟网卡(VMnet8)的网络配置决定;
- NAT网段计算:
- 定位虚拟网卡:获取主机VMnet8网络属性
- 获取关键参数:获取IP地址及子网掩码
- 计算网段地址:网段=虚拟网卡IP(按位与&)子网掩码
NAT网段可用范围
- 以10.45.149.1/24网段为例(子网掩码255.255.255.0),整个网段的 IP 范围为 10.45.149.0~10.45.149.255,但需严格区分可用主机地址与特殊地址:
- 可用主机地址:10.45.149.3~10.45.149.154(共252个可用地址),这些地址未被系统占用,可安全分配给虚拟机作为静态 IP;
- 特殊地址:特殊地址默认被占用,不可进行分配
地址 用途说明 能否给虚拟机(Ubuntu)使用 10.45.149.0 网段标识地址 不能,纯标识网段用 10.45.149.1 宿主机虚拟网卡地址(VMnet8) 已被主机占用,冲突必断网 10.45.149.2 NAT 网关地址(转发流量用) 已被系统占用,不能分配 10.45.149.255 广播地址(给全网段发消息) 用了会导致网段内设备混乱
