在第8节中,我们提到如果要让租户从私有的VM网络中访问外网,需要进行NAT网关的设置。
1. 我们先来看看本节所需要的硬件环境。
我这边准备了2台物理机,并添加入VMM管理:
sc-hostrt:配置3块物理网卡, 作NAT网关用
sc-host2:配置2块物理网卡,作放置租户的自建VM虚拟机用。
如果实在没有硬件环境的话,可以用VMware安装windows2012虚机并赋予多网卡,并在2012虚机中启用Hyper-v。如下图,所有网卡都用桥接模式连接。
然后我们看看本节中涉及到的网络网段:
1)VM网络:VMNET-tenant 网段:172.19.0.0/24 租户用私有CA地址
2)逻辑网络:LGNET-tenant 网段:192.168.0.0/24 VMM用PA地址
3)逻辑网络:PubNET 网段:192.168.5.0/24 办公室可以上网的网段
4)逻辑网络:ManNET 网段:192.168.100.0/24 和宿主机及VMM通讯
简单说明下租户私有网络访问外网的流程:
1)租户虚拟机拿到一个私有CA地址,如172.19.0.2,这个地址和其他租户是隔绝的。
2)通过VMM的VM-逻辑转换,会映射为一个PA地址,如192.168.0.2,这个地址为VMM和网关通讯等用,对租户是透明的。
3)再次通过VMM的NAT网关,使用如192.168.5.75这样的办公室内网地址,来访问外网或者接续办公室内网的机器(当然,这样的话,办公司内网的机器可以通过这个地址来远程登录租户虚拟机)。
4)最后192.168.5.75这样的地址还是通过物理路由器的NAT来连通外网。
2. 首先我们将建立这几个逻辑网络。
在第8节中,我们已经建立了LGNET-tenant的逻辑网络,并启用了网络虚拟化。
也已经创建了这个逻辑网络的IP池
接下来我们还要再建立2个逻辑网络。
首先建立PubNET用来连接办公室内网,这里不用启用虚拟化。
并赋予办公室内网的地址网段。
接着创建IP池:
网关和DNS都用办公室内网的设定。
再建立一个管理用的逻辑网络ManNET,用于和VMM及宿主机的通讯,当然也不需要启用网络虚拟化。
关联管理用的地址段。
最后建成如下3个逻辑网络
3. 然后为以上3个逻辑网络分别创建VM网络
在第8节中,我们已经创建了VMNET-tenant的VM网络,如下。
接下来再创建2个VM网络
这里不需要网络隔离
最后建成如下,其中VMNET-Pub和VMNET-mgmt都不需要网络隔离。
4. 在构造—网络—端口配置文件中,建立3个上行端口的端口配置文件。
tenant连接LGNET-tenant逻辑网络
Front连接PubNET逻辑网络
Manager连接ManNET逻辑网络
5. 然后在逻辑交换机中,建立3个逻辑交换机,并绑定刚才建立的端口配置文件。
如tenant交换机如下
其他2个虚拟交换机也类似配置
6. 接下来需要把虚拟交换机绑定到网关上了。
首先来看下作为网关的sc-hostrt的物理机,有3块网卡,为了以后配置接口好认,重命名下。
然后到VMM中,选择sc-hostrt。
主机访问中,勾选此主机是装用虚拟化网关。
硬件中,选择manager网卡,勾选用于管理。来新增一个虚拟的管理网卡。
在虚拟交换机中,新建3个虚拟交换机,并绑定相应的逻辑交换机,物理适配器和上行端口配置文件。
7. 在sc-hostrt物理宿主机中,新建一个sc-router虚机,我这里安装win2012系统,并启用3块虚拟网卡。
网卡1,绑定到之前建立的VMNET-Pub的VM网络,作为网关的前端出口。
网卡2,绑定VMNET-mgmt的VM网络,作为VMM和网关虚机的通讯的管理网卡。
网卡3,后端租户VM网络用,暂时不用连接。
进入sc-router的虚机,首先加域,关闭防火墙,然后如下安装远程访问的角色。
最后网卡确认如下。
8. 接下来就是最重要的一步,设定NAT网关,之前做的设定其实都是为了本步做的铺垫。
打开网络服务并添加,首先确认名称。
型号当然选择gateway
连接字符串,根据环境情况填写,我这里如下:
vmhost=sc-hostrt.scdemo.local;gatewayvm=sc-router1.scdemo.local;backendswitch=tenant
提供商这边,可以测试下,显示通过说明配置正确。
最后选择前后端的网络连接。
9. 最后进入VM网络,点击VMNET-tenant的属性。
发现连接中已经可以配置了,这里配置直接连接并启用NAT
NAT中可以配置映射的端口,比如我把3389映射到私有VM网络地址172.19.0.2,这样租户就可以通过192.168.5.74这个地址来远程登录隔离的私有网段中的虚拟机了。如果我们把这些地址开放到外网的话,外网租户就也可以访问了。
这节内容比较多,也比较难懂,如果配置中有什么问题的话,欢迎提出一起讨论。