vmware之NAT模式配置


题外话之前的题外话,本文迁移自别的社区,三年前大学实习时写下本文,过了几年再回过头来看,虽然讲得浅显,作为入门笔记也勉强合格。

———————————————————————————————————————

先说点题外话

在做一个web项目迁移到linux,需要配置apache和Oracle,但是没网络会相当麻烦,所以我就凭借在学校学的基础上路弄虚拟机。

首先来看一幅鬼斧神工的图吧:

这是我理解的本地上网,大致示意图,我们可以把"上网"参照电流的形式,(实际上网线里传输的也是类似的玩意儿吧,光纤就另说了,好吧扯远了) ,本机通过连接路由器获得访问网络的权力(具体有线或无线方式没有影响),而虚拟机软件系统vmware可以看成是一个需要联网的软件(类比qq等)。

进入文章之前首先你要大致认识几个我配置的ip,(暂时可以不用理解,你可以中途回来查它是谁的ip就够了)

  1. 192.168.81.1      虚拟机子网网关,(不需要配置成独立的一台虚拟机,只需要在vmware软件的设置里填上就好了)

  2. 192.168.81.130   windows主机在vmware虚拟网段下的ip,vmnet8网卡配置的ip

  3. 192.168.81.132    这是我设置的虚拟机IP地址(如果不设置为静态的话估计每次重新开机都会被分发一个不一样的ip,重要)

  • DHCP:vmware给虚拟机自动分发IP,每次登陆ip可能都不同
  • Manual:虚拟机手动设置ip,这样每次重新登陆ip都是一样的了。
  1. 192.168.1.100     我的windows主机通过路由器自动获取的ip,实际上我电脑上所有软件和外网交流就是通过这个ip和路由器连接的,然后我的路由器是由我在联通那边注册的宽带ip和外面连接的了。。。。。

  2. 8.8.8.8 我为整个虚拟机子网下所有的虚拟机配置的DNS服务器(PS*来自百度:8.8.8.8是一个IP地址,是Google提供的免费DNS服务器的IP地址,Google提供的另外一个免费DNS服务器的IP地址是:8.8.4.4 。用户可以使用Google提供的DNS服务器上网。)

一、配置vmware的网络服务

由于我们在vmware下面安装了一系列的虚拟机,所以就需要管理它们,下面是虚拟机软件配置的一个子网(NAT方式):

  1. 子网网段:192.168.81.*   (由于我的路由器是192.168.1.**,所以虚拟机子网网段不能设置为192.168.1.*)

  1. 网关:192.168.81.1

  1. 子网IP范围:192.168.81.100----192.168.81.254(范围只是我自己的习惯,但是绝对不能从0开始,1也不建议,因为1一般设置为网关,避免不必要的冲突)

二、配置CentOS虚拟机的IP:

下图表示配置为静态IP(不是通过DHCP自动获取);

  • IP:192.168.81.132

  • 网关:192.168.81.1(第一步配置的)

  • DNS: 8.8.8.8

到这里我们还没配置vmnet8,但是重启vmware网络相关服务后,已经可以访问互联网了:

三、配置windows用于连接虚拟机的网卡:vmnet8

  • Ip:192.168.81.130

  • 网关:192.168.81.1

  • DNS: 8.8.8.8,我估计dns可以忽略掉,反正是同一子网,不过填上也没啥坏处

前面提过这个网卡用于windows主机在VMware虚拟子网网段下和虚拟机沟通,事实也是这样,我在windows下使用secureCRT连接虚拟机,登陆时的提示可以证明

下图中的192.168.81.130就是我在windows本机连接,vmware虚拟子网下的,ip为192.168.81.132的虚拟机spark07,

下图中显示的IP是192.168.81.130(windows主机从vmware虚拟子网获取),而不是windows主机从路由器子网获取的IP:192.168.1.100这足以说明网卡vmnet8的作用

下图提示可以理解成:从windows(192.168.81.130)通过SecureCRT连接名为spark07的虚拟机成功

PS * 来自百度:SecureCRT是一款支持SSH(SSH1和SSH2)的终端仿真程序,简单地说是远程登录服务器主机的软件。

实际上,当我把VMnet8这块网卡禁用了之后,在虚拟机里面直接ping我windows通过路由器获取的ip:192.168.1.100同样是成功的,而且虚拟机还是能访问外网的

下图中的192.168.1.100是我从路由器分配到的ip地址,从linux里面直接ping它显示成功了,192.168.81.130是被禁用的vmnet8网卡,ping失败,而且vmnet8禁用之后SecureCRT也提示连接断开,综上所述,虚拟机通过vmware软件的配置(设置的网关,DHCP设置等等)实现上网,而vmnet8则是实现虚拟机与windows的同一子网交互,其实不同子网也可以交互的,比如下图中我使用ip为192.168.81.132的虚拟机ping通了我的路由器子网下ip为192.168.1.100的windows主机

当禁用vmnet8之后,filezila显示如下:

此时使用SecureCRT连接虚拟机spark07(IP:192.168.81.132)显示如下:

综上为vmware配置虚拟机网络介绍

四、问题检查

如果还存在问题,你可以检查以下几个方面:

  1. 任务管理器(或者右键-->我的电脑-->管理--->服务),查看vmware相关的服务是不是都开起来了:

  1. 还有一个地方可以注意一下: 如果同时开虚拟机和apache可能会造成443端口冲突,图中的443是我的apache占用的,453是我修改后的vmware-hostd.exe占用端口
  • cmd-->回车进入命令行 -->输入:  netstat -ano [过滤:netstat -ano | findstr "443"] 展示所有相关进程

通过末尾的PID:4208(端口443)和14244(端口453)在任务管理器可以查到:

默认是443,修改成了453,并不了解vmware-hostd.exe有什么作用,但也不能随便就把它停了,所以就改端口喽

修改vmware-hostd.exe 端口:编辑-->首选项

  1. 到虚拟机下确认ip是否修改好了:

我就出现过一次明明编辑好虚拟机ip了但就是ping不通,然后用ifconfig看了一下就明了了,ip还没修改成功呢,让后把第一步中的那三个服务都重启了一下,就好了(你也可以试试重启虚拟机)

  1. 如果你在公司内部,通过代理上网,那么一定记得给你的linux配置代理,yum、wget、浏览器等等东西都要配置代理,否则你按照我的做了也是不能上网的。

posted @ 2022-01-04 17:16  bokerr  阅读(943)  评论(0编辑  收藏  举报