Windows azure Vnet到Vnet之间的VPN配置

我们知道windows azure 上可以定义多个子网或者地址池,但是在同一个虚拟网络中 定义多个子网或者地址池他们是互通的,但是如果定义多个虚拟网络的话,他们之间的网络是不通的,那如果真实存在多个虚拟网络的话,如何实现虚拟网络之间进行通信呢,这个时候我们就可以配置虚拟网络之间的vpn了,其实配置跟本地到windows azure虚拟网络之间的vpn配置原理一样,为什么这么说呢,原因是因为,当配置本地到windows azure的vpn时候,我们需要将本地的网络地址子网添加到windows azure的虚拟本地网络中,然后在配置相关的站点到站点的vpn即可通信,同理,虚拟网络之间的通信原理是一样的,我们需要将不同虚拟网络的子网定义为虚拟的本地网络。所以很好理解。在官网的叫法是Vnet到Vnet的链接。那Vnet到Vnet连接具有哪些作用?跨区域地域冗余和地域存在你可以使用安全连接设置自己的地域复制或同步,而无需借助于面向 Internet 的终结点。使用 Azure 负载平衡器和 Microsoft 或第三方群集技术,你可以设置支持跨多个 Azure 区域实现地域冗余的高可用性工作负载。一个重要的示例就是对分散在多个 Azure 区域中的可用性组设置 SQL Always On。具有强大隔离边界的区域多层应用程序在同一区域中,你可以设置具有多个虚拟网络的多层应用程序,这些虚拟网络相互连接在一起,但同时又能保持强大的隔离性,而且还能进行安全的层间通信。 Azure 中跨订阅进行组织间通信如果你有多个 Azure 订阅,现在可以在虚拟网络之间安全地将不同订阅中的工作负载连接起来。对于企业或服务提供商而言,现在可以在 Azure 中使用安全 VPN 技术启用跨组织通信。

配置Vnet到Vnet通信的要求和注意事项:VNet 到 VNet 通信支持连接 Azure 虚拟网络。它不支持连接虚拟网络外部的虚拟机或云服务。

VNet 到 VNet 通信需要使用具有动态路由 VPN 的 Azure VPN 网关 - 不支持 Azure 静态路由 VPN。将多个 Azure 虚拟网络连接在一起不需要任何本地 VPN 网关,除非需要跨界连接。虚拟网络连接可与多站点 VPN 同时使用,最多可以将一个虚拟网络 VPN 网关的 10 个 VPN 隧道连接到其他虚拟网络或本地站点。虚拟网络和本地网络站点的地址空间不得重叠。地址空间重叠将会导致创建虚拟网络或上载 netcfg 配置文件失败。

虚拟网络可以在相同或不同的订阅中。

虚拟网络可以在相同或不同的 Azure 区域(位置)中。

不支持一对虚拟网络之间存在冗余隧道。

云服务或负载平衡终结点不能跨虚拟网络,即使它们连接在一起,也是如此。

虚拟网络的所有 VPN 隧道(包括 P2S VPN)共享 Azure VPN 网关上的可用带宽,以及 Azure 中的相同 VPN 网关运行时间 SLA。

在配置前我们需要定义规划IP地址范围:

Vnet01-----Vnetwork-01

10.1.1.0

Vnet02------Vnetwork-02

172.16.2.0

2.添加本地网络:我们需要把vnet01的虚拟地址范围作为定义添加到vnet01的本地网络中,同理vnet02的虚拟地址范围作为定义添加到vnet02的本地网络中。

3.为每个vnet创建动态路由网关,及修改本地网络的vpn网关地址。

4.通过powershell设置两个vnet之间的共享秘钥及连接vpn网关。

接下来我们我们开始创建虚拟网络,具体就不做详细介绍了:

配置站点到站点的vpn

定义站点到站点的链接名称,我们 要链接到站点2,所以我们定义为Vnet-Vnet02,地址范围172.16.2.0

我们定义vnetwork-01的虚拟网络地址范围10.1.1.0及网关

基本网络配置创建完成

创建vpn网管

Vnetwork-01的基本配置

Vnetwork-01的网络地址定义及vpn网关创建完成,我们发现会多一个vpn网关地址。

Vnet-net02的本地地址范围

同理我们定义Vnetwork-02

Vnet01的地址范围

Vnetwork-02的网络地址范围定义完成

创建网关

Vnetwork-02的vpn网关地址

为了更好的测试该服务,我们分别在不通的虚拟网络中启用一个虚拟机做为测试:

我们首先在vnetwork-01上启用一个虚拟机

同样在vnetwork-02上启用一个虚拟机

接下来我们就是测试服务了,首先确认一下每个虚拟网络下的计算机状态:

Vnetwork-02的网络状态。

接下来我们进行服务测试,首先确认两个不同的虚拟网络是否互通。

为了测试的真实性,我们将 防火墙的icpm协议关闭了。

我们在computer-01上ping computer-02

我们在computer-02上ping computer-01

通过以上的结果进行确认,两个不同的虚拟网络之间是不通的。

所以为了解决该问题,我们需要通过以下方法进行来解决:

1. 首先我们得到的信息是

Vnetwork-01的VPN网关地址是:139.219.135.120

Vnetwork-02的VPN网关地址是:139.219.135.132

我们可以通过修改Vnetwork-01、vnetwork-02的本地网络vpn地址即可。

我们首先更改本地网络Vnet-Net01的vpn网关地址:

“本地网络”页上,单击你要编辑的本地网络名称,然后单击页底部的“编辑”。对于VPN 设备 IP 地址”,请输入对应于 VNet 的网关 IP 地址。例如,对于 VNet1,请输入分配给 VNet1 的网关 IP 地址。然后,单击页底部的箭头。

“指定地址空间”页上,单击右下角的复选标记,但不要进行任何更改。

Vnetwork-01、vnetwork-02的本地网络中的vpn网关地址更新后

我们查看两个虚拟网络之间的网络是否正常,我们首先手动连接一下vpn

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

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

再次用同样的方式操作Vnetwork-02的共享秘钥

然后我们首先下载该订阅,然后导入windows azure powershell订阅下操作

https://manage.windowsazure.cn/publishsettings/index?client=powershell

订阅文件导入

在windows azure powershell中输入 Import-AzurePublishSettingsFile ‘D:\8xxx.publishsettings‘

标黄处是您存放Publishsetting file的位置和名称。

因为我之前通过该windows azure powershell导入了其他订阅,所以会存在多个订阅,

Get-azuresubscription

但是我们刚才导入的订阅文件应该是

所以我们需要将该订阅文件设置为默认的。

Select- Select-AzureSubscription -SubscriptionName "添加账户名" –Default

确认该订阅是正常的

连接 VPN 网关

完成前面的所有步骤后,需要将 IPsec/IKE 预共享密钥设置为相同。你可以使用 REST API 或 PowerShell cmdlet 完成此操作。如果使用 PowerShell,请确认你使用的是最新版本的 Microsoft Azure PowerShell cmdlet。以下示例使用 PowerShell cmdlet 将密钥值设置为 A1b2C3D4。请注意,两个 VNet 应使用相同的密钥值。请编辑以下示例,使之反映你自己的值。

对于 VNet1

PS C:\> Set-AzureVNetGatewayKey -VNetName VNet1 -LocalNetworkSiteName VNet2 -SharedKey xxxxxxxx

对于 VNet2

PS C:\> Set-AzureVNetGatewayKey -VNetName VNet2 -LocalNetworkSiteName VNet1 -SharedKey xxxxxxxx

我们执行后发现还是不行,经过确认,两边的执行共享秘钥必须要一样。使用同一个共享秘钥才能生效。

接下来我们查看azure portal页面状态:

我们再看看vnetwork-02的网络状态:

接下来我们查看两个虚拟网络的服务器是否可以正常通信了。

我们可以看见vnetwork-01上进行测试vnetwork-02测试网络是互通的。

同样我们可以看见vnetwork-02上进行测试vnetwork-01测试网络是互通的。

时间: 2024-10-10 06:59:34

Windows azure Vnet到Vnet之间的VPN配置的相关文章

如何在 Windows Azure 的虚拟机 ubuntu 上面安装和配置 openVPN(一)

这篇文章,既是写给大伙儿的,也是写给自己的.本文要求读者需要有一定的英文基础和动手能力. 因为有MSDN subscriptions,所以每个月有100$可以使用windows azure,于是想尝试体验一把.但是用来干啥呢?在天朝,估计喜欢上网的兄弟姐妹们,都很讨厌一个玩意儿,GFW,那俺就来搭一个VPN吧.研究了一下windows azure的收费表,考虑到经济原因,及用途(VPN),于是选择一个basic A0的方案,即最便宜的方案,一个月大约14$.其中包括VM 0.75个共享核,768

如何在 Windows Azure 的虚拟机 ubuntu 上面安装和配置 openVPN(二)

第二步:登录到虚拟机 一旦创建好虚拟机后,默认azure会打开TCP 22端口,即SSH的端口.所以,我们可以通过远程连接,访问和管理该虚拟机. 首先,下载一个PuTTY软件.该软件很简单,就一个可执行程序,可以在windows端连接到远程机器上.下载地址. 然后,双击PuTTY,在"Session" -> Host Name 中,输入 haoniu.cloudapp.net (即上面我们创建虚拟机时,生成的名字),然后点击 "Open" 接着,在命令窗口,就

如何在 Windows Azure 的虚拟机 ubuntu 上面安装和配置 openVPN(三)

第三步:安装openVPN 请打开 ubuntu 官方文档.然后,从上到下,按照步骤,输入执行命令.大家只需要执行到 First trouble shooting 之前即可. 不要怕麻烦,仔细读,一步一步试.这往篇文档相当不错,up主以前没有碰过linux,就照着这文档,完成了基本openvpn的安装配置工作. 下面重点解决大家几乎一定以及肯定会遇到的问题~ 问题0:为什么不翻译成中文 解决方法:我承认我懒,行不...... 问题1:经常提示access denied. 原因:有些命令需要权限解

连接到Windows Azure Point to Site VPN

Windows Azure支持两种模式的VPN接入: Site to Site,接入端需要有固定的公网IP地址,用于连接局域网和Windows Azure的虚拟网络. Point to Site,客户端使用Windows SSTP拨号,只支持Windows操作系统.用于开发测试和运维. 通过Point to Site VPN连接到Windows Azure,可以有效的提升系统安全——减少对外开放的端口数量,只保留应用程序的对外服务端口而关闭系统维护端口.例如:一个Web Server,只开放80

Windows Azure SSTP模式VPN Client使用AD域用户验证登录

我们上面一篇文章介绍了,如何在windows azure下搭建SSTP模式的vpn服务,搭建配置后我们遗留了一个,什么问题呢,我们都知道,一般的独立vpn是使用独立的账户及密码的,尤其是托管到外面的vpn服务器,无法使用AD域用户验证.这样会造成vpn用户拥有两套用户及密码,管理起来很不方便.再说说我的环境,我的环境是把vpn服务器放在了windows azure上,这样算来也是托管类型的,但是windows azure毕竟是微软出的,AD也是微软的,在设计上肯定考虑了,最终呢托管到window

跨云应用部署第一步:使用IPSEC VPN连接AWS中国版和Windows Azure中国版

随着公有云的普及,越来越多的客户将关键应用迁移到云端.但是事实证明,没有哪家云服务提供商可以提供100%的SLA,无论是例行维护还是意外中断服务,对于客户的关键应用而言,都会受到不同程度的影响.此外,不同的云服务提供商,其提供的云服务也存在较大的差异化,包括云服务和产品的功能.质量.收费模式等方面.客户选择多样化的.最适合的.性价比最高的云服务和产品来满足自己的业务需求是必然的趋势.公有云应用占比越高的客户,其跨云应用部署的需求也越大——都不想把鸡蛋放在一个篮子里,或者是被某个云服务提供商绑架.

Windows Azure Multi NIC VM配置详情介绍

前面我们已经介绍了很多关于windows azure的相关文章,今天呢主要介绍在windows azure 下配置Mulit NIC VM,在5月份之前windows azure国内版本上创建的VM不支持多网卡配置,所以对于很多想部署在windows azure上的服务遇到了很大瓶颈,为什么这么说呢,因为我们都知道microsoft的服务都非常贵,如果用office365的话想对比较方便,只需要按照步骤配置相应的解析记录即可,比如对于一个企业来说,即时通信服务是少不了的,而微软的Lync服务对于

Windows azure 联合身份验证服务配置(SSO)

说到SSO,相信大家已经很熟悉了,SSO=单点登录,当然也有叫目录集成的说法.那在windows azure上实现SSO会有什么效果呢?如果我们的机构内部已经在使用本地的 Active Directory,则可将其与我们的 Azure AD 目录相集成,借此可自动执行基于云的管理任务,并可向用户提供更加简化的登录体验. Azure AD 支持以下两种目录集成功能: l 目录同步 - 用于将本地目录对象(用户.组.联系人)与云同步,以帮助减小管理开 销.设置目录同步后,管理员可将本地 Active

Windows Azure Platform体验(1):Windows Azure

创建云服务项目 首先理解下Web托管角色功能,利用这个功能,我们创建一个新网站,然后将它托管在Windows Azure内. 以管理员身份启动Visual Studio 2010,创建一个新的Azure云服务项目.选择"云"模板类型的"Windows Azure 云服务"项目模板.将这个新项目命名为"HelloAzure",单击"确定"之后,立即弹出一个新的向导. 在这个向导中,可以为这个云应用程序创建一些不同类型的角色,这样