Windows azure多站点vpn配置介绍

我们之前的文章介绍了windows azure vnet到vnet的vpn配置及本地到windows azure的vnet之间的vpn配置,而我们今天主要介绍的是windows azure 的多站点的vpn配置,那什么是多站点的vpn配置呢。我们还是拿真实环境来举例说明吧!我们之前文章中主要介绍了两个关于windows azure 的vpn配置文档,一个是本地网络与windows azure之间的vpn配置,主要实现本地网络与windows azure内部的虚拟网络互通,另外一个就是windows azure vnet和vnet之间的vpn配置,实现windows azure两个虚拟网络之间的网络互通,如果把这两个vpn配置结合到一块就形成了一个多站点vpn配置。

Windows Azure多站点vpn配置介绍_Windows Azure

我们先介绍一下目前的实验环境,

1. 我的本地的网络环境地址定义为10.1.1.0/24 ,内部主要的服务有AD、exchange、tmg、adfs等服务。

2. Windows azure 虚拟网络定义

Azure-Vnetwork01: 10.10.1.0/24

Local_vnet01:10.10.1.0/24

Azure-Vnetwork02: 10.10.2.0/24

Local_vnet02:10.10.1.0/24

本地的网络定义:iiosoft_localnetwork: 10.1.1.0/24

3. 我们今天介绍将本地网络与windows azure的网络也实现vpn配置后,能实现本地网络到windows azure的不同虚拟网络之间互通即可。

注:创建使用动态路由网关的站点到站点 ×××,如果是静态路由的话我们需要更改网关类型。

我们为了完全给大家一个介绍,我重新申请了一个测试账户进行配置:

1. 首先是我本地的网络,我选择使用windows 2012r2服务模拟本地的硬件防火墙设置充当本地的vpn设置。

Internal: 10.1.1.60

External: 106.39.102.149

Windows Azure多站点vpn配置介绍_Windows Azure_02

我们需要定义一个虚拟网络,首先是实验本地网络到windows azure之间的vpn配置

Windows Azure多站点vpn配置介绍_Windows Azure_03

我们按照之前的规划,需要定义本地网络。当前这个不是一定的。我们可以先定义虚拟网络也可以先定义本地网络;为了方便操作,我先定义本地网络。我们目前做的是讲本地网络跟windows azure的虚拟网络实现vpn互通

Windows Azure多站点vpn配置介绍_Windows Azure_04

Iiosoft本地的网络配置:名称及vpn设置地址;

该vpn网关设置地址为我的本地网络RRAS服务的外网ip

Windows Azure多站点vpn配置介绍_Windows Azure_05

定义本地网络的地址范围:10.1.1.0/24

Windows Azure多站点vpn配置介绍_Windows Azure_06

定义虚拟网络

Windows Azure多站点vpn配置介绍_Windows Azure_07

虚拟网络名称

Windows Azure多站点vpn配置介绍_Windows Azure_08

选择点到点的vpn配置

Windows Azure多站点vpn配置介绍_Windows Azure_09

定义虚拟网络的地址范围:根据我们之前的规划,虚拟网络1的地址范围:

10.10.1.0/24

Windows Azure多站点vpn配置介绍_Windows Azure_10

开始创建虚拟网络

Windows Azure多站点vpn配置介绍_Windows Azure_11

虚拟网络创建完成后,我们定义网络vpn网关;

注:一定要选择动态路由哦

Windows Azure多站点vpn配置介绍_Windows Azure_12

开始创建vpn网关

Windows Azure多站点vpn配置介绍_Windows Azure_13

Vpn网关创建完成。我们可以查看,默认生成了一个vpn网关

Windows Azure多站点vpn配置介绍_Windows Azure_14

接下来,我们下载vpn设置脚本;因为我们的本地使用的是microsoft 2012R2系统做为一个RRAS服务,所以我们下载的时候选择windows server2012R2

Windows Azure多站点vpn配置介绍_Windows Azure_15

下载后默认的扩展名为cfg,为了方便执行该脚本,我们通过修改该扩展名为ps1,然后通过powershell执行

Windows Azure多站点vpn配置介绍_Windows Azure_16

我们通过powershell执行该脚本

Windows Azure多站点vpn配置介绍_Windows Azure_17

以下powershell中的红色信息可以忽略,不是报错。

Windows Azure多站点vpn配置介绍_Windows Azure_18

接下来我们查看azure的portal信息,看看vpn服务是否跟windows azure的vpn链接正常

Windows Azure多站点vpn配置介绍_Windows Azure_19

我们在查看RRAS服务器配置:服务运行正常

Windows Azure多站点vpn配置介绍_Windows Azure_20

接下来我们创建一个虚拟机试试网络之间的连通性

Windows Azure多站点vpn配置介绍_Windows Azure_21

选择虚拟网络一的网络类型

Windows Azure多站点vpn配置介绍_Windows Azure_22

我们通过该虚拟机ping本地的网络地址。经过测试结果为通。服务运行正常。

Windows Azure多站点vpn配置介绍_Windows Azure_23

然后我们从本地ping windows azure的网络。也是通

Windows Azure多站点vpn配置介绍_Windows Azure_24

我们可以通过azure 的port进行确认,网络是通的,因为都有流量产生了。

Windows Azure多站点vpn配置介绍_Windows Azure_25

我们本地与windows azure的vnetwork01通过vpn通了,但是我们如果有多个vnetwork的话如何进行通信呢 ,我们知道默认的windows azure的vnet和vnet之间是不通的,上篇文章我们就介绍了。今天我们主要实现的是本地网络与windows azure的不同vnetwork之间的通信。那怎么做呢,具体见下:

我们首先同样需要给Azure-Network02创建一个地址范围。

10.10.2.0/24,对于azure-network来说是本地网络

Windows Azure多站点vpn配置介绍_Windows Azure_26

Windows Azure多站点vpn配置介绍_Windows Azure_27

然后我们选择虚拟网络2通过配置点到点的vpn配置连接到本 地网络vnet01

Windows Azure多站点vpn配置介绍_Windows Azure_28

虚拟网络2的地址定义: 10.10.2.0/24

Windows Azure多站点vpn配置介绍_Windows Azure_29

同样我们为虚拟网络2创建一个vpn网关

Windows Azure多站点vpn配置介绍_Windows Azure_30

创建完成后,我们查看网络之间是没有流量的。而且vpn状态也是链接中断的

Windows Azure多站点vpn配置介绍_Windows Azure_31

我们同样创建一个虚拟网络2的虚拟机进行测试。

Windows Azure多站点vpn配置介绍_Windows Azure_32

我们ping虚拟网络01的虚拟机是不通的;。

Windows Azure多站点vpn配置介绍_Windows Azure_33

Windows Azure多站点vpn配置介绍_Windows Azure_34

因为我们的虚拟网络中通过vpn配置的是链接到本地网络中的iiosoft_localnetwork,所以这样也会链接不上。 我们需要将虚拟网络中azure_vnetwork-01的网络配置文件导出添加vnetwork后我们导入进行配置才能正常工作。我们选择vnetwork-01

Windows Azure多站点vpn配置介绍_Windows Azure_35

导出vnetwork01的网络配置进行修改

Windows Azure多站点vpn配置介绍_Windows Azure_36

我们可以看出vnetwork01链接到是iiosoft_localnetwork的网络,没有链接到vnetwork02的的本地网络,所以我们需要在配置文件内添加。

我们通过网络配置文件看,得知有三个本地网络的详细信息:

Windows Azure多站点vpn配置介绍_Windows Azure_37

同时虚拟网络01的网络定义及连接到的虚拟网络信息:

Windows Azure多站点vpn配置介绍_Windows Azure_38

虚拟网络02的网络定义及连接到的虚拟网络信息

Windows Azure多站点vpn配置介绍_Windows Azure_39

我们通过以上信息确认,虚拟网络01连接的是本地网络iiosoft-localnetwokr,所以我们需要定义网络信息,添加本地虚拟网络02

Windows Azure多站点vpn配置介绍_Windows Azure_40

<LocalNetworkSiteRef name="Vnet_Local-02">

<Connection type="IPsec" />

</LocalNetworkSiteRef>

我们在虚拟网络:Azure_Vnetwork中修改链接信息:添加链接到vnetwokr02的网络信息:

Windows Azure多站点vpn配置介绍_Windows Azure_41

保存后,我们需要将保存后的网络配置文件导入到虚拟网络01中。

Windows Azure多站点vpn配置介绍_Windows Azure_42

导入配置

Windows Azure多站点vpn配置介绍_Windows Azure_43

确认后,我们开始更新

Windows Azure多站点vpn配置介绍_Windows Azure_44

我们导入网络配置后,发现vpn还是不通。

Windows Azure多站点vpn配置介绍_Windows Azure_45

我们发现手动连接后还是失败,原因是因为两个vpn网关会有两个不同的共享秘钥,所以我们需要通过powershheell来完成下面的工作。

我们首先是复制保存Vnetwork-01的共享秘钥

Windows Azure多站点vpn配置介绍_Windows Azure_46

通过powershell来定义虚拟网络01和虚拟网络02的共享秘钥为指定成一个

Set-azurevnetgatewaykey –vnetname azure_vnetwork –localnetworksitename vnet_local-02 –share xxxxx

Windows Azure多站点vpn配置介绍_Windows Azure_47

同样为虚拟网络02来定义虚拟网络01对的额共享秘钥

Set-azurevnetgatewaykey –vnetname azure_vnetwork –localnetworksitename vnet_local-02 –share xxxxx

Windows Azure多站点vpn配置介绍_Windows Azure_48

接着我们查看azure port页面的服务状态,vpn连通了

Windows Azure多站点vpn配置介绍_Windows Azure_49

然后azure_vnetwork有两个定义配置信息。因为我们这个是多站点的,所以跟一个的界面稍微有点差别

Windows Azure多站点vpn配置介绍_Windows Azure_50

然后我们再通过虚拟机进行测试;

我们通过vnetwork01到vnetwork02的网络通了

Windows Azure多站点vpn配置介绍_Windows Azure_51

vnetwork02到vnetwork01的网络通了

Windows Azure多站点vpn配置介绍_Windows Azure_52

同样vnetwork01到本地网络也是通的

Windows Azure多站点vpn配置介绍_Windows Azure_53

我们发现vetwork02到本地网络之间是不通的:

Windows Azure多站点vpn配置介绍_Windows Azure_54

原因是因为,vnetwork02的vpn链接的本地网络是vnetwork01的本地网络。

Windows Azure多站点vpn配置介绍_Windows Azure_55

我们需要给在vnetwork01的本地网络添加iiosoft_localnetork的地址段10.1.1.0/24

我们编辑vnetwork02的的本地网络配置,然后添加iiosoft_local的地址段:10.1.1.0/24,保存

Windows Azure多站点vpn配置介绍_Windows Azure_56

保存后的状态。

Windows Azure多站点vpn配置介绍_Windows Azure_57
加上之后,我们还需要在iiosoft_local的RRAS服务器上添加vnetwork02的地址段:

打开路由和远程访问,编辑ipv4---静态路由,添加静态路由---10.10.2.0/24,其他信息默认,然然后保存即可。

Windows Azure多站点vpn配置介绍_Windows Azure_58

添加后的效果:

Windows Azure多站点vpn配置介绍_Windows Azure_59

解析来我们再次次测试

我们首先从iiosoft_local本地进行测试:

Windows Azure多站点vpn配置介绍_Windows Azure_60

我们从vnetwork01上进行测试:

Windows Azure多站点vpn配置介绍_Windows Azure_61

最后我们在vnetwork02上进行测试:

Windows Azure多站点vpn配置介绍_Windows Azure_62

最后我们回到azure portal上进行查看确认

Windows Azure多站点vpn配置介绍_Windows Azure_63

Windows Azure多站点vpn配置介绍_Windows Azure_64

问题总结:

以下介绍一个我之前遇到的问题:

部署多站点的vpn的时候无法连接的问题:

通过路由和远程访问的状态下连接出现错误的问题:

然后重新重启系统。我们重新后发现还是无法验证,提示以下错误:

Windows Azure多站点vpn配置介绍_Windows Azure_65

原因是因为我们需要修改一下RRAS的共享秘钥:

因为Network-01同时连接了2个隧道,下载脚本的时候,预共享密钥是Vnet-Vnet的)

需要手动更改成Vnet到本地2012R2的密钥,才能连接成功。具体方法为:

使用Powershell获取密钥:Get-AzureVNetGatewayKey -VNetName Vnetwork-01 -LocalNetworkSiteNameIiosoft_LocalNetwork Iiosoft_LocalNetwork | fl

Get-AzureVNetGatewayKey -VNetName Vnetwork-01 -LocalNetworkSiteNameIiosoft_LocalNetwork Iiosoft_LocalNetwork | fl

Windows Azure多站点vpn配置介绍_Windows Azure_66

我们需要将该value的信息复制后来替换RRAS的共享秘钥:

单击网络接口---外网ip----安全---使用预共享的秘钥进行身份验证

Windows Azure多站点vpn配置介绍_Windows Azure_67

修改共享秘钥:保存

Windows Azure多站点vpn配置介绍_Windows Azure_68

保存后,手动连接尝试:

Windows Azure多站点vpn配置介绍_Windows Azure_69

Windows Azure多站点vpn配置介绍_Windows Azure_70