个人博客:​​https://suveng.github.io/blog/​

virtualbox只能选用网络地址转换(NAT)模式下搭建个人局域网

这里先引用以为大佬的博客,上面清楚的介绍虚拟机网络的集中配置。

我这里简单说一下网络地址转换,详细请查阅

网络地址转换(NAT)

特点

1、如果主机可以上网,虚拟机可以上网

2、虚拟机之间不能ping通

3、虚拟机可以ping通主机(此时ping虚拟机的网关,即是ping主机)

4、主机不能ping通虚拟机

应用场景

虚拟机只要求可以上网,无其它特殊要求,满足最一般需求

配置方法

连接方式 选择 网络地址转换(NAT)

高级-控制芯片 选择 PCnet-FAST III

高级-混杂模式 拒绝

高级-接入网线 √

(虚拟机ip自动获取)

ip样式

ip 10.0.2.15

网关 10.0.2.2

注意此处的网关在不同虚拟机中可能是同一个值,但是这归属于不同的NAT Engine,因此实际上各个虚拟机用的不是同一个网关

原理

虚拟机的请求传递给NAT Engine,由它来利用主机进行对外的网络访问,返回的数据包再由NAT Engine给虚拟机。


缘由:为什么不用最简单的桥接模式呢?

因为公司已经有子网,而且是虚拟网卡。总之就是不能选桥接模式


virtualbox只能选用网络地址转换(NAT)模式下搭建个人局域网_网络地址

virtualbox只能选用网络地址转换(NAT)模式下搭建个人局域网_网络地址转换_02

搭建过程

如何搭建一个个人局域网呢?

如下图的拓扑图:

virtualbox只能选用网络地址转换(NAT)模式下搭建个人局域网_virtual box_03

但是实际虚拟出来的拓扑图是这样的。虚拟机之间是隔离开的,互相之间是不能ping通的。

virtualbox只能选用网络地址转换(NAT)模式下搭建个人局域网_局域网_04

那怎么做呢?




网络地址装换部分有个​高级设置​选项,可以设置端口转发

virtualbox只能选用网络地址转换(NAT)模式下搭建个人局域网_virtual box_05



我的网络状态

virtualbox只能选用网络地址转换(NAT)模式下搭建个人局域网_网络地址_06



我的主机的网络ip状态

virtualbox只能选用网络地址转换(NAT)模式下搭建个人局域网_virtual box_07



两台虚拟机的网络ip

虚拟机1

virtualbox只能选用网络地址转换(NAT)模式下搭建个人局域网_网络地址转换_08

虚拟机2

virtualbox只能选用网络地址转换(NAT)模式下搭建个人局域网_网络地址_09



当我设置好这些东西的时候,这时候的网络拓扑应该是这样的,可能画的有偏差。

virtualbox只能选用网络地址转换(NAT)模式下搭建个人局域网_virtual box_10

主机网络就相当于一个代理转发。这样子就可以ping通了。

测试

这样子,理论上如果我的主机能够脸上虚拟机1,就证明主机到虚拟机是通的。而事实上上面的截图已经证明了。

那么剩下虚拟机和虚拟机之间的连接了,怎么证明?

用虚拟机1 ssh 连接上 虚拟机2 就行了。


注意:这里为了方便我把centos7的防火墙关了


开始测试

192.168.203.1使用ssh ​​root@192.168.203.2​

结果如下:

virtualbox只能选用网络地址转换(NAT)模式下搭建个人局域网_网络地址_11

关键就是前一个是文件是129,连接上后显示的文件是130;虚拟机2的文件就是130;如下图

virtualbox只能选用网络地址转换(NAT)模式下搭建个人局域网_局域网_12

完成!!!!!