在第8节中,我们提到如果要让租户从私有的VM网络中访问外网,需要进行NAT网关的设置。

 

1. 我们先来看看本节所需要的硬件环境。

我这边准备了2台物理机,并添加入VMM管理:

sc-hostrt:配置3块物理网卡, 作NAT网关用

sc-host2:配置2块物理网卡,作放置租户的自建VM虚拟机用。

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第1张图片

如果实在没有硬件环境的话,可以用VMware安装windows2012虚机并赋予多网卡,并在2012虚机中启用Hyper-v。如下图,所有网卡都用桥接模式连接。

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第2张图片

然后我们看看本节中涉及到的网络网段:

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的逻辑网络,并启用了网络虚拟化。

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第3张图片

也已经创建了这个逻辑网络的IP池

clip_p_w_picpath005[5]

接下来我们还要再建立2个逻辑网络。

首先建立PubNET用来连接办公室内网,这里不用启用虚拟化。

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第4张图片

并赋予办公室内网的地址网段。

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第5张图片

接着创建IP池:

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第6张图片

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第7张图片

网关和DNS都用办公室内网的设定。

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第8张图片

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第9张图片

再建立一个管理用的逻辑网络ManNET,用于和VMM及宿主机的通讯,当然也不需要启用网络虚拟化。

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第10张图片

关联管理用的地址段。

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第11张图片

最后建成如下3个逻辑网络

clip_p_w_picpath023[6]

 

3. 然后为以上3个逻辑网络分别创建VM网络

在第8节中,我们已经创建了VMNET-tenant的VM网络,如下。

clip_p_w_picpath024[4]

接下来再创建2个VM网络

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第12张图片

这里不需要网络隔离

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第13张图片

最后建成如下,其中VMNET-Pub和VMNET-mgmt都不需要网络隔离。

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第14张图片

 

4. 在构造—网络—端口配置文件中,建立3个上行端口的端口配置文件。

clip_p_w_picpath030[4]

tenant连接LGNET-tenant逻辑网络

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第15张图片

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第16张图片

Front连接PubNET逻辑网络

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第17张图片

Manager连接ManNET逻辑网络

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第18张图片

 

5. 然后在逻辑交换机中,建立3个逻辑交换机,并绑定刚才建立的端口配置文件。

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第19张图片

如tenant交换机如下

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第20张图片

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第21张图片

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第22张图片System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第23张图片

其他2个虚拟交换机也类似配置

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第24张图片

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第25张图片

 

6. 接下来需要把虚拟交换机绑定到网关上了。

首先来看下作为网关的sc-hostrt的物理机,有3块网卡,为了以后配置接口好认,重命名下。

clip_p_w_picpath053[6]

然后到VMM中,选择sc-hostrt。

主机访问中,勾选此主机是装用虚拟化网关。

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第26张图片

硬件中,选择manager网卡,勾选用于管理。来新增一个虚拟的管理网卡。

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第27张图片

在虚拟交换机中,新建3个虚拟交换机,并绑定相应的逻辑交换机,物理适配器和上行端口配置文件。

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第28张图片

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第29张图片

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第30张图片

 

7. 在sc-hostrt物理宿主机中,新建一个sc-router虚机,我这里安装win2012系统,并启用3块虚拟网卡。

网卡1,绑定到之前建立的VMNET-Pub的VM网络,作为网关的前端出口。

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第31张图片

网卡2,绑定VMNET-mgmt的VM网络,作为VMM和网关虚机的通讯的管理网卡。

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第32张图片

网卡3,后端租户VM网络用,暂时不用连接。

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第33张图片

进入sc-router的虚机,首先加域,关闭防火墙,然后如下安装远程访问的角色。

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第34张图片

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第35张图片

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第36张图片

最后网卡确认如下。

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第37张图片

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第38张图片

 

8. 接下来就是最重要的一步,设定NAT网关,之前做的设定其实都是为了本步做的铺垫。

打开网络服务并添加,首先确认名称。

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第39张图片

型号当然选择gateway

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第40张图片

连接字符串,根据环境情况填写,我这里如下:

vmhost=sc-hostrt.scdemo.local;gatewayvm=sc-router1.scdemo.local;backendswitch=tenant

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第41张图片

提供商这边,可以测试下,显示通过说明配置正确。

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第42张图片

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第43张图片

最后选择前后端的网络连接。

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第44张图片

 

9. 最后进入VM网络,点击VMNET-tenant的属性。

发现连接中已经可以配置了,这里配置直接连接并启用NAT

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第45张图片

NAT中可以配置映射的端口,比如我把3389映射到私有VM网络地址172.19.0.2,这样租户就可以通过192.168.5.74这个地址来远程登录隔离的私有网段中的虚拟机了。如果我们把这些地址开放到外网的话,外网租户就也可以访问了。

System Center 2012 R2实例2—构建Azure Pack云12—NAT网关_第46张图片

 

这节内容比较多,也比较难懂,如果配置中有什么问题的话,欢迎提出一起讨论。