VMware 双网卡配置:宿主机切换网络时 Ubuntu 固定 IP 访问方案

在日常开发中,很多人会在 Windows 宿主机上通过 VMware 运行 Ubuntu 虚拟机,并通过 SSH 或 Samba 访问虚拟机。但如果宿主机经常在以太网和 Wi-Fi 之间切换,虚拟机的 IP 地址就会频繁变化,每次连接前都要重新查 IP,非常影响效率。本文将介绍一种双网卡分工的配置方案,让 Ubuntu 的访问 IP 始终保持固定,彻底摆脱宿主机网络切换带来的困扰。

一、核心需求

  • 宿主机 :Windows PC,频繁切换 以太网3 (需网页/客户端认证)与 Wi-Fi(网段不固定),两者不能同时在线。
  • 虚拟机:VMware 中运行的 Ubuntu。
  • 目标 :宿主机通过 SSH、Samba 访问 Ubuntu 时,IP 绝对固定,不受宿主机物理网络切换、认证/注销影响,且 Ubuntu 本身能正常上网。

二、核心方案:双网卡分工

将虚拟机的"上网"与"被访问"彻底分离,互不干扰:

  • 网卡1(NAT 模式):负责 Ubuntu 上网。借用宿主机物理网络,宿主机切换网络时,Ubuntu 端无需任何改动即可持续上网。
  • 网卡2(仅主机模式 Host-Only) :负责提供固定 IP。创建一个与外界完全隔离的私有网络,IP 由你固定设定,宿主机通过该 IP 稳定访问 Ubuntu。

三、详细配置步骤

1. VMware 虚拟网络编辑器配置

打开 编辑 -> 虚拟网络编辑器(需管理员权限):

  • VMnet1(仅主机模式)
    • 取消勾选"使用本地 DHCP 服务..."。
    • 勾选"将主机虚拟适配器连接到此网络"。
    • 设置子网 IP:192.168.93.0,子网掩码:255.255.255.0
  • VMnet8(NAT 模式)
    • 保持默认,勾选 DHCP 和"将主机虚拟适配器连接到此网络"。
    • 子网 IP 保持默认(如 192.168.136.0)。

2. VMware 虚拟机硬件设置

  • 关闭 Ubuntu 虚拟机。
  • 右键 Ubuntu -> 设置
    • 网络适配器 :选择 NAT 模式(对应 VMnet8),勾选"启动时连接"。
    • 网络适配器 2 :添加新网卡,选择 仅主机模式(对应 VMnet1),勾选"启动时连接"。

3. Ubuntu 系统内网卡配置

  1. 确认网卡名称 :启动 Ubuntu,执行 ip addr 查看网卡名(通常 ens33 是 NAT,ens37 是 Host-Only)。

  2. Ubuntu 图形界面配置固定 IP :打开 Ubuntu 网络设置,找到 Host-Only 网卡(如 ens37),将 IPv4 方式改为手动,设置 IP 地址为 192.168.93.100,子网掩码为 255.255.255.0

注意:网关和 DNS 必须完全留空!

  1. Windows 宿主机固定 VMnet1 网卡 IP :Windows 在切换物理网络时,偶尔会把虚拟网卡(VMnet1)的优先级降低、重置路由,或者触发防火墙拦截。因此需要打开 Windows 网络适配器设置,为 VMnet1 手动指定一个与 Ubuntu 同网段的固定 IP(例如 192.168.93.1),子网掩码 255.255.255.0,网关留空。

四、验收测试

  1. 宿主机(Windows)测试 :在 cmd 中执行 ping 192.168.93.100,必须能通且延迟极低(低于 1ms)。

  2. Ubuntu 上网测试 :在 Ubuntu 中执行 ping 8.8.8.8ping www.baidu.com,应正常响应,确认 NAT 网卡上网功能正常。

  3. 核心切换测试 :宿主机保持 ping 192.168.93.100 -t 持续运行,在 Wi-Fi 与以太网3 之间来回切换(包括以太网3登录/注销)。

    • ping始终稳定不掉包
    • 无论宿主机物理网络如何变化,SSH(ssh fmsh@192.168.93.100)和 Samba(\\192.168.93.100)始终可用。

五、总结

本方案通过双网卡分工,将虚拟机的上网流量(NAT)与固定访问流量(Host-Only)彻底隔离:NAT 网卡跟随宿主机物理网络自动切换,保证 Ubuntu 随时可上网;Host-Only 网卡则构建了一个独立的私有网络,使宿主机始终可以通过 192.168.93.100 稳定访问 Ubuntu。配置完成后,无论宿主机在以太网和 Wi-Fi 之间如何切换,SSH 和 Samba 的连接都不受影响,无需再频繁查找虚拟机 IP。

相关推荐
yi碗汤园2 小时前
MQTT消息队列遥测传输协议
网络·网络协议·unity
吴声子夜歌3 小时前
Shell编程实例——高级脚本编程(一)
linux·运维·网络·shell
深圳光特通信豆子3 小时前
1×9光模块DDM数字诊断监控技术手册
网络·物联网
云边云科技_云网融合4 小时前
从一盘散棋到一张蓝图:某连锁集团的云上重构
网络·科技·云计算
ao-weilai4 小时前
Linux网络编程:Socket UDP
linux·服务器·网络·c++
Quanqiucard4 小时前
监控用物联网卡如何优化管理,降低安防项目通信成本
网络·物联网
园长的牧歌5 小时前
Ubuntu 打开应用在导航栏没有图标是个齿轮
linux·ubuntu
Ivanqhz5 小时前
矩阵引擎的数据流模式与 BM1684X 架构
java·服务器·网络·深度学习·神经网络
安易算力6 小时前
昇腾生态开发深度实践:CANN算子库架构解析与MindSpore模型优化
网络·容器·架构·kubernetes·vllm