VMware Workstation虚拟机固定IP配置(主机互通、外网可访问)

VMware Workstation虚拟机固定IP配置

  • 环境
  • 问题
  • 配置过程
    • 配置虚拟机网络适配器
    • 配置虚拟机网络
    • 配置虚拟网卡网络适配器
    • 配置虚拟机固定IP
  • 结果验证
  • 结束语
  • 参考

环境

主机:Windows 11
VMware Workstation: 17.5.2
虚拟机:Ubuntu 24.02 LTS

注: 主机系统和VMware Workstation版本无影响,只有Ubuntu配置固定IP方式略有不同。

问题

最近本地部署服务就装了VMware Workstation,创建了5台Ubuntu 24的虚拟机,默认网络的配置是NAT模式(N): 用于共享主机的IP地址(如下图),每次重新启动都会对虚拟机自动分配IP地址,使用SSH远程连接时每次都需要修改IP,极其不便。
在这里插入图片描述
因此,想到可以通过设置固定IP来解决此问题,但设置固定IP的过程中,出现了主机PING不通虚拟机或虚拟机无法访问外部网络等问题,经过查询资料,研究配置,终于解决。为了避免有同样问题的兄弟们走弯路,在此记录一下完整的配置过程供参考。

配置过程

省略安装VMware Workstation和创建虚拟机过程。

配置虚拟机网络适配器

将虚拟机网络适配器设置为VMnet8(NAT 模式)。

1.在VMware Workstation主界面,选中要配置的虚拟机,双击网络适配器,进入虚拟机设置->网络适配器,如下图所示:
在这里插入图片描述
2.勾选设备状态下的启动时连接,设置网络连接为自定义(U): 特定虚拟网络->VMnet8(NAT 模式),设置完成点击确认保存,如下图所示:在这里插入图片描述
3.如有其他虚拟机,按照如上两个步骤依次设置。

配置虚拟机网络

将虚拟机网络设置为NAT模式,并设置虚拟网络的网段。

1.在VMware Workstation主界面,点击菜单中的 编辑->虚拟机网络编辑器(N)… 进入编辑界面,如下图所示:
在这里插入图片描述
2.选中VMnet8,如下图中步骤“1”。

3.点击更改设置,更改为管理员权限才能进行修改(如管理员权限运行VMware Workstation,略过此步骤),如下图步骤“2”。

3.VMnet信息设置,选中NAT模式(与虚拟机共享主机的IP地址)(N),如下图中步骤“3”。

4.VMnet信息设置,勾选将主机虚拟机适配器连接到此网络(V),如下图中步骤“4”。

5.设置子网IP和子网掩码,子网IP一般为192.168.xxx.0(此处为192.168.227.0,记住此IP),子网掩码为255.255.255.0,如下图中步骤“5”。

6.以上步骤都配置完成后如下图所示,确认无问题后点击NAT设置(S)…,下图中步骤“6”:
在这里插入图片描述
7.设置网关IP,将网关IP设置为192.168.xxx.2(192.168.xxx和步骤5一致),设置完成后点击确认保存,如下图所示:
在这里插入图片描述

配置虚拟网卡网络适配器

将VMnet8设置为192.168.xxx网段的固定IP,否则默认分配的可能为其他网段IP,导致主机无法连通虚拟机。

1.进入主机的系统设置,选中网络和Internet->高级网络设置,如下图所示:
在这里插入图片描述
2.进入VMware Network Adapter VMnet8更多适配器选项的编辑页,如下图所示:
在这里插入图片描述
3.双击Internet 协议版本 4 (TCP/IPv4)进入属性设置页面,如下图所示:
在这里插入图片描述
4.将
VMware Network Adapter VMnet8
设置为固定IP,IP地址为192.168.xxx.1(需和虚拟机网络的子网IP、网关IP的前缀192.168.xxx一致,此处为192.168.227.1),子网掩码为255.255.255.0,默认网关为192.168.xxx.2(需和虚拟机网络的网关一致,此处为192.168.227.2),DNS服务器可按照下图配置为114.114.114.114、8.8.8.8(国内三大运营商通用的114.114.114.114,备用的选的是Google的8.8.8.8)。全部配置完成后,点击确认保存。
在这里插入图片描述

配置虚拟机固定IP

上述配置全部完成之后,就可以配置虚拟机的IP了,此处以Ubuntu 24.02 LTS系统的配置作为演示,其他系统可以自行搜索配置固定IP的方式。
1.启动虚拟机,切换root权限,使用命令vim /etc/netpaln/50-cloud-init.yaml(配置文件名称可能有所不同,但是netplan下的唯一文件)编辑网络配置文件,根据之前配置的IP网段192.168.xxx将配置内容修改为如下:

network:ethernets:ens33:dhcp4: noaddresses:- 192.168.227.100/24 # ip地址192.168.xxx.xxx/24,自己根据需要分配最后的IP,此处为100,之后的虚拟机会如101、102等递增,避免冲突routes:- to: defaultvia: 192.168.227.2 # 网关地址192.168.xxx.2nameservers:addresses: [114.114.114.114,8.8.8.8] # DNS服务器version: 2

在这里插入图片描述
2.执行命令netplan apply使修改生效。

结果验证

到此,所有配置就完成了,对配置结果进行验证。

1.主机是否可PING通虚拟机,如下图收到回复即验证成功:
在这里插入图片描述
2.虚拟机是否可PING通主机,如下图收到回复即验证成功:
在这里插入图片描述
3.虚拟机是否可访问外部网络(命令wget www.baidu.com),响应为200 OK即验证成功,如下图所示:
在这里插入图片描述

结束语

感谢参考中的文章撰写者,解决了我困扰的问题,此外虚拟机三种网络模式的介绍也可以阅读参考中的链接文章,在此就不再赘述。另,配置过程中如遇到问题可以留言咨询。

参考

1: 超详细虚拟机与主机网络连接以及互Ping不通问题的解决

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/25646.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

DeepSpeed Huggingface模型的自动Tensor并行

推理阶段。在后台,1. DeepSpeed会把运行高性能kernel(kernel injection),加快推理速度,这些对用户是透明的; 2. DeepSpeed会根据mp_size来将模型放置在多个GPU卡上,自动模型并行; import os import torch …

设计一套完整的余额充值系统

余额充值系统在现代电子商务平台和应用程序中扮演着重要角色。它不仅提供了用户便捷的充值和支付方式,还能通过合理的赠送和退款规则提高用户满意度和粘性。本文将详细探讨如何设计一套包括充值赠送、退款、赠送金额和充值金额使用规则的完整余额充值系统。 2. 余额…

【数据结构】前缀树(字典树)汇总

基础 {“a”,“abc”,“bac”,“bbc”,“ca” }的字典树如下图: 最主用的应用:一,字符串编码。二,位运算。 字符串编码 相比利用哈希映射编码,优点如下: 依次查询长度为n的字符串s的前缀时间复杂度是O(…

iCloud完全指南:释放Apple云服务的终极潜力

iCloud是苹果公司提供的云服务,它允许用户存储和同步照片、文档、音乐、应用数据以及更多类型的文件。通过有效利用iCloud,用户可以在不同设备间无缝地访问和编辑内容。本文旨在全面介绍如何高效使用iCloud,确保您能够最大化这一服务的价值。…

common.js和es6中模块引入的区别

common.js CommonJS 是一种模块系统,主要用于 Node.js 环境。它使用 require 函数来引入模块,并使用 module.exports 来导出模块。 语法: 导出模块: // moduleA.js const name Jo; module.exports name;// 或者导出一个对象…

⌈ 传知代码 ⌋ 多模态COGMEN详解

💛前情提要💛 本文是传知代码平台中的相关前沿知识与技术的分享~ 接下来我们即将进入一个全新的空间,对技术有一个全新的视角~ 本文所涉及所有资源均在传知代码平台可获取 以下的内容一定会让你对AI 赋能时代有一个颠覆性的认识哦&#x…

【Vue】智慧商城

步骤一般都是: 静态结构 > 封装接口 > 路由获取参数 > 获取数据 动态渲染 先封装接口再路由获取参数的原因是因为,只有先封装好了接口,才能知道我们需要哪些参数 接口文档:https://apifox.com/apidoc/shared-12ab6b18-a…

Java——IO流(一)-(2/9):File类的常用方法(判断文件类型、获取文件信息、创建删除文件、遍历文件夹)

目录 常用方法1:判断文件类型、获取文件信息 方法 实例演示 常用方法2:创建文件、删除文件 方法 实例演示 常用方法3:遍历文件夹 方法 实例演示 常用方法1:判断文件类型、获取文件信息 方法 File提供的判断文件类型、获…

【Redis】Redis的数据过期策略有哪些

Redis 提供了多种数据过期策略,用于管理存储在其中的数据的生命周期。数据过期策略决定了何时以及如何删除过期的数据。主要的策略有以下几种: 1. 定时删除(Timed Deletion) 在设置键的过期时间时,Redis 会创建一个定…

【C#线程设计】3:threadpool

实现: (1).控件:group Box,text Box,check Box,label,botton,richtextbox 控件拉取见:https://blog.csdn.net/m0_74749240/article/details/139409510?spm1…

插卡式仪器模块:数据记录模块(插卡式)

• 32 位分辨率 • 250 KSPS 采样率 • 可以同时并且连续地记录两个通道的电压输入 • 实时上传原始数据至 PC 端 通道22输入阻抗电压22 kΩ10 MΩ电流0.2 Ω输入范围电压 250 mV 4.5 V电流1.5 A耦合DCDC带宽450 Hz385 HzADC 分辨率32 Bits24 Bits采样率10 kSPS250 kSPS测量…

kafka集成SpringBoot api编写教程

1.新建项目 用的idea是20222.1.3版本,没有Spring Initializr 插件,不能直接创建springboot项目 可以在以下网址创建项目,下载后解压,然后用idea打开项目即可 1.1 在 https://start.spring.io/ 上创建项目 1.2上传到linux&#x…

知识图谱的应用---智能公安

文章目录 智慧公安典型应用 智慧公安 智能公安是利用互联网、物联网、人工智能、云计算、智能引擎、视频技术、知识图谱等技术为支撑,以公安信息化为核心,通过互联化、物联化、智能化的方式,促进公安系统各个功能模块高度集成、协调运作&…

【Redis】Redis实现高性能的原因

Redis 作为一个单线程的数据库,能够达到高性能的关键在于其设计上的几个方面。以下是 Redis 快速的几个主要原因: 1. 内存存储 Redis 是一个内存数据库,所有数据都存储在内存中。内存的访问速度远远快于磁盘,所以这使得读写操作…

DataGridView *星号行

这个问题可能是因为你的 DataGridView 控件中的 AllowUserToAddRows 属性被设置为 true,导致在最后一行出现了一个星号行。这个星号行实际上是 DataGridView 控件中的“空行”,它会在最后一行自动添加,以便用户可以添加新的行。 要解决这个问…

第53集《摄大乘论》

《摄大乘论》,和尚尼慈悲、诸位法师、诸位居士,阿弥陀佛!(阿弥陀佛!)请大家打开《讲义》第一七八页,乙七、增上心学分。 这一科是正宗分的第七科,讲到增上心学。我们在前面花了很多的时间,来介…

stm32之USMART调试组件的使用

一、什么是USMART? USMART是正点原子团队为其STM32开发平台开发的一种类似linux的shell的调试工具。具体工作过程是通过串口发送命令给单片机,然后单片机收到命令之后调用单片机里面对应的相关函数,并执行,同时支持返回结果。 二、USMART调…

Vue.js 学习总结(8)—— Vue 3 的 Teleport 特性,让你实现跨组件传输内容

什么是 Teleport? 在 Vue 3 中,Teleport 是一个新的内置组件,它允许你将子组件或 DOM 元素渲染到指定的 DOM 节点之外。简而言之,你可以将某个组件“传送”到另一个地方,而不必让它们局限于父组件的 DOM 树结构中。 …

ReactRouter——路由配置、路由跳转、带参跳转、新route配置项

目录 写在前面 (一)初步使用router 1.安装react-router-dom 2.创建router结构 3.嵌套路由 4.配置not found页面 (1)确切路由报错页面 (2)未配置路由报错页面 5.重定向 (二)路由跳转 1.组件跳转 2.NavLink 3.js跳转 (三)传递参数 1.searchParams(query)参数 2…