前言

前面创建虚拟机时,第一块网卡让大家选的是NAT,第二块网卡是LAN区段。都是用来干嘛的呢?有啥用?怎么设置?IP地址又怎么修改?

看完这篇文章就懂咯。

正文

咱们先看一下安装完虚拟机,宿主机的网络有什么变化:

我们打开宿主机的网络连接。(如图1)

PS: 打开方式很多,我只说一种通用方法:按WIN键+R键打开运行窗口->输入ncpa.cpl按回车。大家可以按照自己习惯的方式打开

图1

我们发现除去自己硬件以外,还多出了VMware Network Adapter VMnet1和VMware Network Adapter VMnet8。

这两个网络设备,就是宿主机用来支持虚拟机网络的虚拟网卡。

  • VMnet1: 宿主机用于与Host-Only虚拟网络进行通信的虚拟网卡
  • VMnet8: 宿主机用于与NAT虚拟网络进行通信的虚拟网卡

咱们再看下都有哪几种连接方式:

先输入命令shutdown -h nowhalt将虚拟机关机。

在左侧设备中点击网络适配器。(如图2)

图2

可以看到一共有如下几项:(如图3)

图3

  • 桥接模式
  • NAT 模式
  • 仅主机模式
  • 自定义
  • LAN区段

结合自己情况可以在这里选择需要的连接方式。

下面我们就来简单介绍一下这几种模式。

桥接模式

桥接(Bridging),是指依据OSI网络模型的链路层的地址,对网络数据包进行转发的过程,工作在OSI的第二层。一般的交换机,网桥就有桥接作用。

用大家听得懂的话说,就是虚拟机像宿主机所在局域网里面一台独立的电脑一样上网,处在宿主机同一个网段中,虚拟机所有网络设置除IP外都与宿主机相同(包括子网掩码、网关、DNS等)。

再通俗点,就是虚拟机就像买了台新电脑,上网方式和宿主机相同(都插同一个口的网线或都连同一个WIFI),就像连接在同一个Hub上的两台电脑。

因为处在同一个网段,那么其他宿主机局域网内的机器都可以直接访问虚拟机。

有很多生产环境都是使用配置比较好的服务器开多个虚拟机来跑小应用的。这样使用其实和每个小应用单独使用一台服务器基本没有差别。

桥连接的设置:

打开虚拟网络编辑器(如图4)

图4

点击更改设置(如图5)

图5

选择VMnet0(在宿主机网络连接中是看不到这块虚拟网卡的)

能设置的只有一个桥接到(如图6)

图6

列表中为宿主机的网络设备,可以设置虚拟机通过某一宿主机的网络设备连接。

如可以设置虚拟宿主机的网卡或虚拟宿主机的无线网卡等。

好吧,桥连接只有这一个设置。

设置好后,根据宿主机的物理网络环境设置好虚拟机的网络即可。

PS: 一定要先了解宿主机的物理网络环境,如:是否开启DHCP自动分配IP,网关是多少等。

NAT模式

NAT(Network Address Translation,网络地址转换),当在专用网内部的一些主机本来已经分配到了本地IP地址(即仅在本专用网内使用的专用地址),但现在又想和因特网上的主机通信(并不需要加密)时,可使用NAT方法。

用大家听得懂的话说,就是虚拟机处在宿主机创建的一个独立网络中,宿主机为虚拟机提供IP地址和DNS服务。

再通俗点,就是虚拟机把宿主机当成了一个路由器(家用那种),想上网只能通过宿主机来上。

因为虚拟机处在宿主机的独立网络中,所以当虚拟机访问网络时,留下的记录只会是宿主机的。而外网想要访问虚拟机,也需要通过宿主机的允许,所以的安全性相对较高。

虚拟机想访问互联网非常简单,只要宿主机能上网,那虚拟机是一定可以访问互联网的,而且只需要保持虚拟机默认设置就能保证网络通畅。这也就是为什么推荐新手刚开始接触Linux时使用NAT模式了。

NAT的设置:

如图4、图5打开虚拟网络编辑器

选择VMnet8(如图7),可以设置专用网络的IP地址,设置成任意你喜欢的网段即可(如:10.0.0.0/8、172.16.0.0/16、192.168.0.0/24)

图7

PS: 10.0.0.0/8,中的8,表示子网掩码为255.0.0.0,同理16为255.255.0.0,24为255.255.255.0。

点击图7的NAT设置(如图8),可以看到网关地址(默认情况下网关均为xxx.xxx.xxx.2,宿主机IP为xxx.xxx.xxx.1),当虚拟机设置静态IP时需要填写该网关地址(GATEWAY)

图8

注:如无必要请勿修改网关地址

点击图7的DHCP设置(如图9),可以设置自动分配IP的起始IP,一般第一台虚拟机都是分得开始的IP

图9

仅主机模式

仅主机模式也叫Host-only,从直译上就能读懂意思了。

在某种特殊需求下,要求宿主机本地网络环境和虚拟环境隔离开,这时候就只能选择Host-only模式了。在这种模式下,虚拟机只可以与宿主机和处于相同模式下的其他虚拟机通信,也就是说上不了网。

仅主机模式的设置:

同理按图4、图5打开虚拟网络编辑器

选择VMnet1(如图10),可以设置专用网络IP地址,设置成任意你喜欢的网段即可(如:10.0.0.0/8、172.16.0.0/16、192.168.0.0/24)

图10

同理可以设置DHCP分配IP段(不截图了...)

LAN区段

LAN区段,就是一个虚拟的自定义局域网,只要都选择同一LAN区段,将网卡都设置成一个网段的IP,就可以实现互相通信,同样它也是不能上网的,但LAN区段不可以与宿主机通信。

那么LAN区段和Host-only的区别是什么呢?

首先就是虚拟机是否可以与宿主机互通。

其次就是设置Host-only只可以设置一个网段,所以需要多网段时,就需要创建好几个VMnet,且设置复杂。而LAN区段创建简单,网段也可以在虚拟机系统中随意设置。

LAN区段的设置:

LAN区段没有设置,也不需要设置,因为它只是虚拟一个局域网而已,至于这个局域网的IP段随便你设置,只要所有相同LAN区段的设置就可以了。

PS: 绝大多数情况下,在使用LAN区段时,都是只设置IP和子网掩码,不设置网关和DNS的。其实设置了也没用。除非在LAN区段中自己搭建网关和DNS服务器。

模式选择

要根据需求来决定选择哪种模式:

首先是否需要连接外网?

如果不需要妥妥儿的Host-only是最佳方案。

其次是否需要局域网内其他机器访问你的虚拟机?

如果需要,则选择桥连接。

举例:如果虚拟机在一台电脑上创建,而平时SSH连接则使用其他电脑(大多数原因因为配置低,如果边跑虚拟机再边做日常学习的话很吃力),那无疑桥连接是最方便的方式。

如果不需要,那还是建议选择NAT模式。

因为NAT简单啊!

而且NAT不占用局域网IP啊。

举例:比如在公司学习,公司一般情况下是有IP地址管理的,每人一个,想一个人占两个或多个很难。再比如学校宿舍,一个家用路由器设备连接有上限,如果你一个人宿主机加虚拟机就占了10个IP的话,其他人上网会有影响。

至于LAN区段,最常见的应用就是搭建集群。后面讲到集群时会再详细介绍LAN区段。

后记

其实最常用的还是桥连接模式和NAT模式,毕竟需要虚拟机不上网的情况比较少。

桥连接可以使局域网其他电脑访问,但是占IP;

NAT除主机外又不能连接该虚拟机,想用其他电脑测试都不行。

那有没有什么方法可以即让其他局域网电脑通过SSH连接虚拟机,又不影响其他人呢?

当然有啦。呐,就是端口映射咯!

这么说肯定有朋友就懂咯。不懂的嘛……有机会单开博文说咯。

好了就到这里。

Enjoy it!

Last modification:February 20th, 2022 at 07:32 am
If you think my article is useful to you, please feel free to appreciate