VM虚拟机使用的实用技巧分享

简介: VM虚拟机使用的实用技巧分享

前言

虚拟机使用了一些日子,但是有时候有些坑问题,分享出来希望有用

关于虚拟机网络

虚拟机联网的话网上教程还是比较丰富的,图文并茂,我搜索到两篇

vmware虚拟机三种网络模式详解

VMWare虚拟机网络连接设置

我自己也是不断去尝试,然而发现即使我的网络设置的一模一样,还是宿主机连不上虚拟机,而且情况是配置的时候是可以,但是以后重启过机器的时候不行。

我后面发现是windows重启之后不会生效,需要重启网卡,在网络和共享中心中找到连接虚拟机使用的网卡,右键 禁用,再启用,两张网卡都试试。然后发现NAT的配置有用了,Host-Only模式下面也有用了

这个事情我郁闷了很多年

虚拟机网络的本质探索

NAT和Host有啥不一样,这个我分享一个技巧,我们可以用一个Wireshark的工具进行抓包,然后观察我们网卡的请求

我们要明白,不管我们的虚拟机怎么变,最终都是要通过我们的物理网卡,走我们的网线把信号发出去。

为了探索这里面的奥秘,我在虚拟机里面做了一个下着比较大的文件的操作,就是下载ubuntu镜像

wget https://mirrors.zju.edu.cn/ubuntu-releases/20.04.1/ubuntu-20.04.1-desktop-amd64.iso

我对host-only的方式进行请求捕获,我发现发出去的请求是我主机本身的地址 192.168.1.7

而且可以看到,这个请求是vmnat.exe这个程序发出去的

我们可以判断,我们在虚拟机里面使用host-only的方式请求是vmnat.exe 进程

我们换成NAT,NAT的方式其实就是IP地址可以和外面机器不一样,我们在linux中和windows中分别进行抓包:

tcpdump -i ens33 -v -e host  210.32.158.231
localhost.localdomain.41818 > 210.32.158.231.https: Flags [R], cksum 0xce98 (correct), seq 3255327477, win 0, length 0
23:00:50.563995 00:50:56:e4:df:37 (oui Unknown) > 00:0c:29:79:88:04 (oui Unknown), ethertype IPv4 (0x0800), length 1514: (tos 0x0, ttl 128, id 44647, offset 0, flags [none], proto TCP (6), length 1500)
    210.32.158.231.https > localhost.localdomain.41818: Flags [.], cksum 0x8d05 (correct), seq 41913622:41915082, ack 645, win 64239, length 1460
23:00:50.564000 00:0c:29:79:88:04 (oui Unknown) > 00:50:56:e4:df:37 (oui Unknown), ethertype IPv4 (0x0800), length 54: (tos 0x0, ttl 64, id 45307, offset 0, flags [DF], proto TCP (6), length 40)
    localhost.localdomain.41818 > 210.32.158.231.https: Flags [R], cksum 0xce98 (correct), seq 3255327477, win 0, length 

我们其实可以看到,在包头的部分,我们的MAC地址修改了,其实我有理由相信,虚拟机的包在进出的时候会被我们的虚拟机软件直接修改包头的方式进行转换,最后从物理网卡转发出去,所以不管怎样设置我们其实只要保证转换是正确的。

镜像的制作

有个好点的方法是直接把已经安装好的虚拟机进行克隆,那样子我们不需要重头安装一遍了,但是我们需要把镜像转移的时候呢,有个导出的操作

导出的时候可以选择OVF或者ova都行,这个包可以任意转移,使用的时候直接双击就可以建立一个新的虚拟机了

目录
相关文章
|
3月前
|
虚拟化
如何为VM虚拟机添加D盘
这篇文章介绍了如何在VMware虚拟机中将E盘修改为D盘,并提供了详细的操作步骤,包括在计算机管理中更改驱动器号和路径,以及初始化和格式化新磁盘的指导。
如何为VM虚拟机添加D盘
|
3月前
|
虚拟化
VM虚拟机只有一个C盘怎么添加硬盘新分区盘符
关于如何在VMware虚拟机中解决只有一个C盘的问题,介绍了增加硬盘和创建新分区的方法。
VM虚拟机只有一个C盘怎么添加硬盘新分区盘符
|
3月前
|
安全
如何修改Xshell中的字体颜色大小等样式 修改Vm虚拟机终端的字体颜色
这篇文章介绍了如何在Xshell中修改字体颜色、大小等样式,以及如何在虚拟机终端设置字体颜色,以实现统一和舒适的视觉效果。
如何修改Xshell中的字体颜色大小等样式 修改Vm虚拟机终端的字体颜色
|
3月前
|
安全 Windows
【Azure 环境】Azure 的PaaS服务如果涉及到安全漏洞问题后,我们如何确认所用服务的实例(VM:虚拟机)的操作系统已修复该补丁呢?
【Azure 环境】Azure 的PaaS服务如果涉及到安全漏洞问题后,我们如何确认所用服务的实例(VM:虚拟机)的操作系统已修复该补丁呢?
|
3月前
|
API 网络架构
【Azure Developer】如何通过Azure REST API 获取到虚拟机(VM)所使用的公共IP地址信息
【Azure Developer】如何通过Azure REST API 获取到虚拟机(VM)所使用的公共IP地址信息
|
3月前
|
存储 API 开发工具
【Azure 环境】在Azure虚拟机(经典) 的资源中,使用SDK导出VM列表的办法
【Azure 环境】在Azure虚拟机(经典) 的资源中,使用SDK导出VM列表的办法
|
3月前
|
Java 数据安全/隐私保护 Windows
【Azure Developer】使用Java代码启动Azure VM(虚拟机)
【Azure Developer】使用Java代码启动Azure VM(虚拟机)
|
6月前
|
虚拟化 Windows
LabVIEW虚拟机(VM)支持NI产品吗
LabVIEW虚拟机(VM)支持NI产品吗
44 2
|
6月前
|
边缘计算 人工智能 安全
如何在 VM 虚拟机中安装 OpenEuler 操作系统保姆级教程(附链接)
如何在 VM 虚拟机中安装 OpenEuler 操作系统保姆级教程(附链接)