《Windows Azure Platform 系列文章目录》
我们知道,Azure Virtual Network可以
1.将对台Azure VM加入到同一个网段里,同时绑定内网IP地址
2.创建VPN网关,来设置Site-To-Site VPN或者Point-To-Site VPN
但是我们在使用Virtual Network的时候,会遇到这样的情况:
1.之前创建的2个Virtual Network,本来是互相不能通过内网访问的。但是后期想通过内网互通互联。
2.在创建的Virtual Network只能在同一个数据中心里,如何实现跨数据中心的内网互通?
其实是可以通过VNet-to-VNet,把不同的Virtual Network打通,实现在不同VNet的虚拟机,通过内网互通互联的。
VNet-to-VNet连接需要注意:
(1)不同订阅之间的VNet-To-VNet连接
(2)不同数据中心(China East, China North)之间的VNet-To-VNet连接
(3)VNet-to-VNet连接,需要在Azure VNet创建动态路由
(4)不同VNet之间的IP Address不同重叠。
(5)VNet-to-VNet之间的流量是经过Azure数据中心骨干网的
参考资料:
我们先假设一个场景:
我们需要打通China East VNet和China North VNet的VNet-To-VNet连接
关键步骤如下:
(1)规划Virtual Network的IP Rang
(2)在中国东部创建一个VNet,命名为ChinaEastVNet
(3)在中国北部创建一个VNet,命名为ChinaNorthVNet
(4)增加本地网络ChinaEastVNet和ChinaNorthVNet
(5)设置Azure VNet ChinaEastVNet与本地网络ChinaNorthVNet的Site-To-Site VPN连接
(6)设置Azure VNet ChinaNorthVNet与本地网络ChinaEastVNet的Site-To-Site VPN连接
(7)在Azure VNet创建VPN Gateway网关,并设置动态路由
(8)重新设置本地网络的VPN网管地址
(9)连接VPN Gateway网关
现在开始本章的内容:
1.规划Virtual Network的IP Rang
(1)我们先规划位于中国东部的VNet,命名为ChinaEastVNet, IP Rang为10.0.0.0/22
(2)然后我们规划位于中国北部的VNet,命名为ChinaNorthVNet, IP Rang为10.1.0.0/22
(3)对于ChinaEastVNet来说,他要连接到的目标网络是ChinaNorthVNet
(4)对于ChinaNorthVNet来说,他要连接到的目标网络是ChinaEastVNet
(5)对于这2个VNet,都设置对方为本地网络
(6)注意:ChinaEastVNet和ChinaNorthVNet,它们的IP不能互相重叠
(7)示意图如下:
虚拟网络名称 | IP Rang | 需要连接的本地网络 |
ChinaEastVNet | 10.0.0.0/22 | ChinaNorthVNet |
ChinaNorthVNet | 10.1.0.0/22 | ChinaEastVNet |
2.在中国东部创建一个VNet,命名为ChinaEastVNet
(1)我们点击新建,网络->虚拟网络->自定义创建
(2)在中国东部创建虚拟网络,命名为ChinaEastVNet。如下图:
(3)根据实际业务需求,设置DNS服务器
(4)设置IP Rang和Subnet
3.在中国北部创建一个VNet,命名为ChinaNorthVNet
设置ChinaNorthVNet的Subnet
4.增加本地网络ChinaEastVNet和ChinaNorthVNet
(1)我们点击本地网络,增加本地网络
(2)先增加本地网络ChinaEastVNet,VPN设备IP地址我们这里随便设置的,后面会回来进行修改
(3)设置本地网络ChinaEastVNet的IP Rang和CIDR
(4)然后增加本地网络ChinaNorthVNet,VPN设备IP地址我们这里随便设置的,后面会回来进行修改
(5)设置本地网络ChinaNorthVNet的IP Rang和CIDR
(6)注意,我们在虚拟网络设置的Virtual Network ChinaEastVNet和ChinaNorthVNet的IP Rang,必须与本地网络设置的地址空间一致
5.设置Azure VNet ChinaEastVNet与本地网络ChinaNorthVNet的Site-To-Site VPN连接
(1)我们点击之前创建的虚拟网络ChinaEastVNet
(2)页面跳转,我们点击配置选项
(3)增加Virtual Network ChinaEastVNet,连接到本地网络ChinaNorthVNet。同时增加网关子网
(4)然后再设置虚拟网络ChinaNorthVNet
(5)增加Virtual Network ChinaNorthVNet,连接到本地网络ChinaEastVNet。同时增加网关子网
6.在Azure VNet创建VPN Gateway网关,并设置动态路由
页面跳转,点击创建网关->动态路由
然后我们对ChinaNorthVNet,也创建动态路由。图略。一般情况下,创建路由需要15分钟左右。
7.等待动态路由创建完毕后,我们重新设置本地网络的VPN网关地址
(1)我们在虚拟网络中,可以查看到ChinaEastVNet对应的VPN网关地址是:42.159.235.103
(2)ChinaNorthVNet对应的VPN网关地址是:42.159.27.208
(3)我们重新设置本地网络的VPN网关地址,修改本地网络ChinaEastVNet的VPN网关地址,为42.159.235.103
(4)然后再设置本地网络的VPN网关地址,修改本地网络ChinaNorthVNet的VPN网关地址,为42.159.27.208。图略。
(5)VPN网关设置完毕后,如下图:
8.连接VPN Gateway网关
(1)上面的步骤设置完毕后,我们就可以通过Azure PowerShell,来设置Azure Virtual Network IPSec VPN网关了
(2)以管理员身份,运行Azure PowerShell
#在弹出的界面中,输入Azure China用户名和密码 Add-AzureAccount -Environment AzureChinaCloud #选择当前订阅 Select-AzureSubscription 'POC' -current #设置ChinaEastVNet Set-AzureVNetGatewayKey -VNetName ChinaEastVNet -LocalNetworkSiteName ChinaNorthVNet -SharedKey A1b2C3D4 #设置ChinaNorthVNet Set-AzureVNetGatewayKey -VNetName ChinaNorthVNet -LocalNetworkSiteName ChinaEastVNet -SharedKey A1b2C3D4
(3)执行结果如下图:
(3)稍等片刻以后,就可以看到VNet-To-VNet通了
================================================分隔符============================================================
(1)最后别忘记,我们可以在中国东部和中国北部,分别创建2台Azure VM,加入到ChinaEastVNet和ChinaNorthVNet里
(2)通过这2台Azure虚拟机的内网,互相连接,以检验这2个Azure VNet可以互通互联。
我们分别通过远程桌面连接,连接到这2台Azure VM,记得先关闭操作系统的防火墙
上图中,位于上海数据中心的虚拟机,机器名为Lei2012CHNSH,内网IP地址为10.0.0.4
位于北京数据中心的虚拟机,机器名为Lei2012CHNBJ,内网IP为10.1.1.4
这2台虚拟机内网互通的延时约为32毫秒。