使用Meraki轻松配置多云(AWS / Azure)VPN


简介

近年来,公共云通过各种服务而有所区别,不仅每天发布IaaS,而且还发布各种新的PaaS / SaaS。作为用户,会有一些要求,例如想要正确使用公共云。例如...
我使用特定的SaaS云服务规范将日志存储在AWS S3上,但是由于该公司通过Express路由连接到Azure,因此我想在Azure上启动分析应用程序! ...或
我想使用GCP的Tensorflow进行机器学习,但否则我想使用AWS! ...十日十日。

我认为根据您的需求,跨多个公共云的需求将越来越大。
在这种情况下,如果云可以彼此连接(如果可以建立VPN),那就太好了!你不觉得吗

当然,如果您使用支持多个云的Cisco CSR1000v,则可以使用Yoyu设置云到云VPN! ...但是每年的降临日历!通常,这样做很无聊,所以今天我想使用Meraki vMX轻松配置Azure和AWS之间的Auto VPN。

我想做什么

让我们使用Meraki vMX设置多云(AWS / Azure)VPN
(这一次,AWS在东京地区设置了vMX,Azure在东日本地区设置了vMX)

Screen Shot 2018-12-19 at 0.56.44.png

什么是Meraki vMX100?

如您所知(?),Meraki是云托管网络解决方案的先驱。 Meraki的产品阵容包括:

  • MX系列(UTM)
  • MR系列(Wi-Fi接入点)
  • MS系列(网络交换机)
  • MV系列(摄像机)
  • SM系列(MDM)

其中,MX系列具有从小型到大型的大量UTM设备阵容。 vMX100是作为在公共云上运行的虚拟设备提供的模型。 vMX100当前可在AWS和Azure上使用。

什么是自动VPN?

在进行设置之前,让我向您介绍Auto VPN,这是Meraki MX系列的功能之一。使用Meraki可以很容易地设置站点到站点VPN。该功能可让您轻松设置VPN,称为自动VPN。功能如下。

Meraki受云管理,因此在Meraki云中提供了管理GUI。由于管理信息在云上,因此您可以在NAT后面的UTM之间使用UDP穿孔来建立IPSec VPN,而无需在NAT路由器的防火墙上设置端口转发等。换句话说,无需修改防火墙即可在具有专用地址的设备之间实现VPN。

而且,Meraki的设计理念是"简单性",其重点是简化所有设置。因此,在基地之间建立VPN非常容易。基本上,您要做的就是指定您的UTM将充当集线器还是Spoke,并且一切就绪。

使用Meraki MX,即使您不了解IPSec参数或混乱,也可以使用自动VPN机制非常轻松地创建跨其他基础的VPN!

设定

现在,让我们构建一个环境。基本上,它通过以下三个步骤完成。

  • 获得Meraki vMX100的许可证在Meraki仪表板上注册
  • 在AWS / Azure的每个云中启动实例
  • 设置自动VPN
  • 基本上,如果您遵循以下文档,该实例将启动而不会出现任何问题,但请记录一些注意事项。

    • Meraki vMX100 Azure设置指南
      https://documentation.meraki.com/MX/Installation_Guides/vMX100_Setup_Guide_for_Microsoft_Azure

    • Meraki vMX100 AWS设置指南
      https://documentation.meraki.com/MX/Installation_Guides/vMX100_Setup_Guide_for_Amazon_AWS

    获得Meraki vMX100的许可证在Meraki仪表板

    上注册

    注册vMX100许可证后,您需要为AWS创建一个网络,为Azure创建一个网络,以便配置vMX100。在这种情况下,请将网络类型设置为安全设备。然后,您可以创建一个vMX。
    (如果使用组合网络,则会出现错误消息,要求您首先注册网络设备(通常可以,因为有硬件设备,所以可以))

    createnetwork.png

    在AWS / Azure

    的每个云中启动实例

    在上面创建的vMX屏幕上,生成用于Meraki注册的密钥,并根据文档启动实例。
    我沉迷于(或者我沉迷于)的一件事是,对于Azure,在启动Meraki实例之前,需要在独立的资源组中创建VNET。 Azure需要单独的vMX100资源组和VNET资源组。

    自动VPN设置

    在Meraki上设置AutoVPN非常容易。将vMX100设置为集线器,并描述要与另一方通信的网络。
    s2svpn.png
    作为设计说明,Meraki vMX100不支持完整隧道,它将在分离隧道中工作。必须明确设置通过IPSec的目的地(在云中的路由表中或Meraki上的路由表中)。

    因此,过了一会儿,您可以在" VPN状态"屏幕上检查以下内容!容易吗?
    vpnstatus.png

    Meraki还可以从管理GUI运行诸如Ping之类的工具集。更重要的是!您还可以从云管理屏幕获取数据包捕获!
    pcap.png

    演示

    您可以看到ping到达对面的专用网络。单击下面的图像打开视频(Vimeo)
    Vimeoに飛びます

    吞吐量测量

    因为这很重要,所以我将尝试使用iperf3来测量公共云之间的VPN吞吐量。

    (警告)此结果在个人环境中执行。它仅是参考值。

    拓扑如下

    • 区域将日本的区域用于两朵云
    • 我在两个云中都有一个适用于iperf的Linux实例。每个实例都使用一个支持高速网络的实例。 AWS是使用c5.large的AWS linux设置的,而Azure是使用Standard D2 v2的Ubuntu设置的。

    Screen Shot 2018-12-19 at 0.11.51.png

    AWS端--AWS Linux

    AWS侧面AWS Linux

    1
    2
    [ec2-user@ip-172-31-15-188 ~]$ uname -a
    Linux ip-172-31-15-188.ap-northeast-1.compute.internal 4.14.77-81.59.amzn2.x86_64 #1 SMP Mon Nov 12 21:32:48 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

    蔚蓝面--Ubuntu18.04

    Azure side-Ubuntu 18.04

    1
    2
    shogokatsurada@Ubuntu:~$ uname -a
    Linux Ubuntu 4.15.0-1035-azure #36-Ubuntu SMP Fri Nov 30 12:47:16 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

    让我们测量一下!

    AWS服务器端

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    [ec2-user@ip-172-31-15-188 ~]$ iperf3 -s
    -----------------------------------------------------------
    Server listening on 5201
    -----------------------------------------------------------
    Accepted connection from 10.0.0.5, port 44806
    [  5] local 172.31.15.188 port 5201 connected to 10.0.0.5 port 44808
    [ ID] Interval           Transfer     Bandwidth
    [  5]   0.00-1.00   sec  46.8 MBytes   393 Mbits/sec                  
    [  5]   1.00-2.00   sec  49.6 MBytes   416 Mbits/sec                  
    [  5]   2.00-3.00   sec  49.9 MBytes   418 Mbits/sec                  
    [  5]   3.00-4.00   sec  49.7 MBytes   417 Mbits/sec                  
    [  5]   4.00-5.00   sec  49.9 MBytes   419 Mbits/sec                  
    [  5]   5.00-6.00   sec  49.5 MBytes   416 Mbits/sec                  
    [  5]   6.00-7.00   sec  49.7 MBytes   417 Mbits/sec                  
    [  5]   7.00-8.00   sec  49.9 MBytes   419 Mbits/sec                  
    [  5]   8.00-9.00   sec  49.3 MBytes   413 Mbits/sec                  
    [  5]   9.00-10.00  sec  38.6 MBytes   324 Mbits/sec                  
    [  5]  10.00-10.04  sec  1.75 MBytes   362 Mbits/sec                  
    - - - - - - - - - - - - - - - - - - - - - - - - -
    [ ID] Interval           Transfer     Bandwidth
    [  5]   0.00-10.04  sec  0.00 Bytes  0.00 bits/sec                  sender
    [  5]   0.00-10.04  sec   485 MBytes   405 Mbits/sec                  receiver

    Azure客户端

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    shogokatsurada@Ubuntu:~$ iperf3 -c 172.31.15.188
    Connecting to host 172.31.15.188, port 5201
    [  4] local 10.0.0.5 port 44808 connected to 172.31.15.188 port 5201
    [ ID] Interval           Transfer     Bandwidth       Retr  Cwnd
    [  4]   0.00-1.00   sec  50.2 MBytes   421 Mbits/sec   31    431 KBytes      
    [  4]   1.00-2.00   sec  49.6 MBytes   416 Mbits/sec    3    370 KBytes      
    [  4]   2.00-3.00   sec  49.8 MBytes   418 Mbits/sec    0    455 KBytes      
    [  4]   3.00-4.00   sec  49.8 MBytes   417 Mbits/sec    7    397 KBytes      
    [  4]   4.00-5.00   sec  49.8 MBytes   418 Mbits/sec    0    477 KBytes      
    [  4]   5.00-6.00   sec  49.5 MBytes   416 Mbits/sec    3    425 KBytes      
    [  4]   6.00-7.00   sec  49.7 MBytes   417 Mbits/sec    7    363 KBytes      
    [  4]   7.00-8.00   sec  49.9 MBytes   419 Mbits/sec    0    451 KBytes      
    [  4]   8.00-9.00   sec  49.0 MBytes   411 Mbits/sec    1    392 KBytes      
    [  4]   9.00-10.00  sec  38.7 MBytes   324 Mbits/sec   30    286 KBytes      
    - - - - - - - - - - - - - - - - - - - - - - - - -
    [ ID] Interval           Transfer     Bandwidth       Retr
    [  4]   0.00-10.00  sec   486 MBytes   408 Mbits/sec   82             sender
    [  4]   0.00-10.00  sec   485 MBytes   407 Mbits/sec                  receiver

    iperf Done.

    Meraki vMX100具有500 Mbps的目录值,作为IPSec吞吐量的准则,但测量值也显示约400 Mbps。
    通过云到云连接获得足够的收益还不够吗?

    (警告)此结果在个人环境中执行。它仅是参考值。

    摘要

    对于公共云之间的VPN连接,使用Meraki vMX,可以在不了解网络的情况下自行设置VPN设置。如果有的话,我花了一些时间检查每个公共云,路由表和安全组的方法以及VPC / VNET的通信,这非常容易!

    这是一个云到云的VPN连接,但是它比我认为的日本区域之间的连接要快。

    这一次,这是vMX100之间的IPSec VPN,但是您当然也可以将vMX100与其他物理UTM MX系列(MX67 ...等)结合起来并与VPN连接,因此基础到基础VPN是公共的。您可以轻松聚合到云中!
    我认为作为云边缘选项之一,这是一个有趣的产品。