VPN 在另一网络内使用加密隧道。 通常,部署 VPN 的目的是,通过不受信任的网络(通常是公共 Internet)将两个或更多个受信任的专用网络相互连接。 通过不受信任的网络传输时会加密流量,用于防止窃听或其他GJ。

VPN 网关

VPN 网关是一种虚拟网络网关。 Azure VPN 网关实例部署在 Azure 虚拟网络实例中,可实现以下连接:

  • 通过站点到站点连接将本地数据中心连接到虚拟网络。
  • 通过点到站点连接将各个设备连接虚拟网络。
  • 通过网络到网络连接将虚拟网络连接到其他虚拟网络。

Azure基础:Azure VPN网关知识介绍(19)_azure基于策略的VPN

所有传输的数据在通过 Internet 时都会在一个专用隧道中进行加密。 每个虚拟网络中只能部署一个 VPN 网关,但可使用一个网关连接到多个位置,包括其他虚拟网络或本地数据中心。

部署 VPN 网关时,可以指定 VPN 类型:基于策略或基于路由。 这两种类型的 VPN 的主要区别在于如何指定要加密的流量。 在 Azure 中,两种类型的 VPN 网关都使用预共享密钥作为唯一的身份验证方法。 这两种类型还依赖于版本 1 或版本 2 的 Internet 密钥交换 (IKE) 和 Internet 协议安全性 (IPSec)。 IKE 用于在两个终结点之间建立安全关联(加密协议)。 然后将此关联传递给 IPSec 套件,该套件对封装在 VPN 隧道中的数据包进行加密和解密。

基于策略的 VPN

基于策略的 VPN 网关通过静态方式指定应通过每个隧道加密的数据包的 IP 地址。 这种类型的设备根据这些 IP 地址集评估每个数据包,以选择将用于发送该数据包的隧道。
Azure 中基于策略的 VPN 网关的主要功能包括:

  • 仅支持 IKEv1。
  • 使用静态路由,其中来自两个网络的地址前缀的组合控制如何通过 VPN 隧道加密和解密流量。 隧道网络的源和目标在策略中声明,不需要在路由表中声明。
  • 基于策略的 VPN 必须在需要它们的特定场景中使用,例如为了与旧的本地 VPN 设备兼容。

基于路由的 VPN

如果定义每个隧道后面的 IP 地址过于麻烦,可以使用基于路由的网关。 通过基于路由的网关,将 IPSec 隧道建模为网络接口或虚拟隧道接口。 IP 路由(静态路由或动态路由协议)决定在发送每个数据包时使用哪一个隧道接口。 基于路由的 VPN 是本地设备的首选连接方法。 它们具有更高的复原能力,能够适应拓扑更改,例如创建的新子网。
如果需要以下任何类型的连接,请使用基于路由的 VPN 网关:

  • 虚拟网络之间的连接
  • 点到站点连接
  • 多站点连接
  • 与 Azure ExpressRoute 网关共存

Azure 中基于路由的 VPN 网关的主要功能包括:

  • 支持 IKEv2
  • 使用任意到任意(通配符)流量选择器
  • 可以使用动态路由协议,其中路由表/转发表将流量定向到不同的 IPSec 隧道。在这种情况下,源和目标网络不是静态定义的,因为它们处于基于策略的 VPN 中,甚至处于具有静态路由的基于路由的 VPN 中。 相反,数据包是基于使用诸如边界网关协议 (BGP) 之类的路由协议通过动态方式创建的网络路由表来加密的。

VPN 网关大小

VPN 网关的功能由所部署的 SKU 或大小决定。 下表显示了每个可用 SKU 的主要功能。

SKU

站点到站点/网络到网络隧道

聚合吞吐量基准

边界网关协议支持

基本 [见备注]

上限:10

100 Mbps

不支持

VpnGw1/Az

上限:30

650 Mbps

支持

VpnGw2/Az

上限:30

1 Gbps

支持

VpnGw3/Az

上限:30

1.25 Gbps

支持

备注:基本 VPN 网关仅可用于开发/测试工作负载。 此外,稍后必须删除网关并重新部署,然后才可将它从基本层迁移到 VpnGW1/2/3/Az SKU。

部署 VPN 网关

在部署 VPN 网关之前,需要一些 Azure 和本地资源。

所需的 Azure 资源

在部署可操作的 VPN 网关之前,需要以下 Azure 资源:

  • 虚拟网络。 部署虚拟网络,使其具有足够地址空间可用于另一个要用于 VPN 网关的子网。 此虚拟网络的地址空间不得与要连接的本地网络重叠。 只能在虚拟网络中部署一个 VPN 网关。
  • GatewaySubnet。 为 VPN 网关部署名为 GatewaySubnet 的子网。 至少使用一个 /27 地址掩码,确保在子网中拥有足够的 IP 地址以满足将来的增长需要。 不能将此子网用于任何其他服务。
  • 公共 IP 地址。 如果使用不可感知区域的网关,请创建基本 SKU 动态公共 IP 地址。 此地址提供公共可路由的 IP 地址作为本地 VPN 设备的目标。 此 IP 地址是动态的,但它在删除并重新创建 VPN 网关之前不会改变。
  • 本地网络网关。 创建本地网络网关以定义本地网络的配置,例如 VPN 网关将连接到的位置和内容。 此配置包括本地 VPN 设备的公共 IPv4 地址和本地可路由网络。 VPN 网关使用此信息来路由通过 IPSec 隧道发往本地网络的数据包。
  • 虚拟网络网关。 创建虚拟网络网关以在虚拟网络和本地数据中心或其他虚拟网络之间路由流量。 虚拟网络网关可以是 VPN 或 ExpressRoute 网关,但本单元仅讨论 VPN 虚拟网络网关。
  • 连接。 创建连接资源以在 VPN 网关和本地网络网关之间创建逻辑连接。
  • 该连接的目标是本地网络网关定义的本地 VPN 设备的 IPv4 地址。
  • 该连接的源是虚拟网络网关及其关联的公共 IP 地址。

可以创建多个连接。
下图显示了这种资源组合及其关系,可帮助你更好地了解部署 VPN 网关所需的内容。

Azure基础:Azure VPN网关知识介绍(19)_部署azure vpn网关_02

所需的本地资源

若要将数据中心连接到 VPN 网关,需要以下本地资源:

  • 支持基于策略或基于路由的 VPN 网关的 VPN 设备
  • 面向公众(可通过 Internet 路由)的 IPv4 地址

高可用性方案

有几种方法可以确保你具有容错配置。

主动/备用

默认情况下,VPN 网关在“主动/备用”配置中部署为两个实例,即使只能在 Azure 中看到一个 VPN 网关资源也是如此。 当计划内维护或计划外中断影响主动实例时,备用实例会自动承担连接责任,无需任何用户干预。 在此故障转移期间,连接会中断,但对于计划内维护,连接通常会在几秒钟内恢复,对于计划外中断,通常会在 90 秒内恢复。

Azure基础:Azure VPN网关知识介绍(19)_vpn网关_03

主动/主动

由于已引入对 BGP 路由协议的支持,你还可在主动/主动配置中部署 VPN 网关。 在此配置中,为每个实例分配唯一的公共 IP 地址。 然后创建从本地设备到每个 IP 地址的单独隧道。 可以通过在本地再部署一个 VPN 设备来扩展高可用性。

Azure基础:Azure VPN网关知识介绍(19)_azure基于策略的VPN_04

ExpressRoute 故障转移

另一个高可用性选项是将 VPN 网关配置为 ExpressRoute 连接的安全故障转移路径。 ExpressRoute 线路具有内置复原能力。 但它们仍会受到影响连接电缆的物理问题或影响完整的 ExpressRoute 位置的中断的影响。 在高可用性应用场景中,如果存在与 ExpressRoute 线路中断相关的风险,还可以预配 VPN 网关,该网关使用 Internet 作为替代连接方法。 因此你可以确保始终与虚拟网络建立连接。

区域冗余网关

在支持可用性区域的区域中,可在区域冗余配置中部署 VPN 网关和 ExpressRoute 网关。 此配置可以提高虚拟网络网关的复原性、可伸缩性和可用性。 可通过在 Azure 可用性区域中部署网关,在地理位置和逻辑上将区域内的网关分隔开来,同时还能保护本地网络与 Azure 的连接免受区域级故障的影响。 上述网关需要不同的网关 SKU,且使用标准公共 IP 地址而不是基本公共 IP 地址。