企业案例:

总部与多分支×××解决方案(hub to spoke拓扑结构)

 

第1章 hub to spoke应用场景介绍:

      IPsec ×××可以将公司分散在各地的办公场地安全的连接在一起,用户体验就如同专线连接。各地只需要有互联网接入和支持ipsec vpn功能的路由器或者防火墙。

      ipsec vpn只能够两两互联,如果企业有10个分散的机构,两两互联,每个点都需要与其他9个点互联,共需要建立45条,公式为:n*(n-1)/2 。我晕了个去,还让网管活不。

     那有没有更加高效的解决办法呢?答案是有的,而且是两种:

  • 主角登场:总部作为HUB点,每个分支只需与总部建立×××。通过与总部的×××中转实现分支机构访问总部,以及与其他分支互访。


总部与多分支VPN解决方案(hub to spoke拓扑结构)juniper防火墙为例_分支


  • 高逼格方案:动态多节点×××。CISCO叫DM×××,JUNIPER叫AC-×××,动态网状互联×××。核心技术:使用多点GRE隧道技术和NHRP(下一跳解析协议)。分支只需要与总部建立×××,分支之间有数据流量访问需求,会自动两两建立×××,不需要人工干预哦。最终形成一个类似全网状连接。


 

  • buo to spoke结构优缺点:

优点:


  • 只需要与总部建立一条vpn,就能够实现与总部和所有其他分支通讯,管理员高兴了

  • 新增加一个分支,只需要在这个分支机构建立与总部的,其他分支机构不需要更改配置。

  • 对分支机构建立vpn的设备没啥要求,只要支持ipsec vpn就够了。

  • 拓扑结构简单,易于排错。

不足:


  • 分支之间访问,需要经过HUB点中转,中心节点亚历山大。

  • 分支机构之间访问,由于需要绕经总部HUB点,时延会增大。时延过大会影响视频和voip电话等体验,不过国内时延即使绕经总部也大不到哪去。你试试非洲动不动800ms以上的时延,还voip呢,人家都不说效果差。

  • 如果不想后续更改现有的分支机构,最好提前做好地址规划。去往总部的地址最好是个汇总地址(包含总部的地址段和其他分支机构的地址段),这样新添加一个vpn,现有的分支机构不需要做任何更改。

 

  • 高逼格,动态多节点vpn。总结下来:“看着光鲜,条件限制一箩筐,绣花枕头一包草,没啥鸟用”

优点:

  • 只需要与总部建立一条vpn,就能够实现总部与所有其他分支通讯,管理员当然高兴啦。

  • 新增加一个分支,只需要在这个分支机构建立与总部的,其他分支机构不影响。

  • 分支节点之间会自动建立vpn,不需绕经总部就可以互访。对hub-to-spoke结构的性能担忧排除了了。



不足:

  • 分支机构的设备也要支持gre和NHRP,你使用个500块钱的TP-LINK看看有没有这个功能。

  • 不同厂商的设备混着搞,比如cisco的DM×××和juniper的AC-×××混着搞,管理员自己先被搞残了。

  • 分支机构自动建立vpn,如果出现故障,增加排查问题的难度和工作量,管理员肯定不高兴

  • 全部替换为一个厂商的设备,老板不高兴了,IT只会光花钱?


       综上所述:动态多节点vpn虽好,但现实中限制条件太多,不是本文的重点,以后看本博主心情了,是否写一篇,不过没啥鸟用动力不足。还不如写mpls over dmvpn over mpls,扯远了。本文重点hub -to-spoke vpn,满足90%的企业需求。

 

 

第2章 企业案例学习:

2.1 现状

项目是一个视频分发的业务。有直播和OTT点播两种业务,北京总站将直播节目和点播内容T推送到全球各地。直播节目使用组播,OTT业务使用单播。北京OTT推送服务器将点播内容推送到欧洲的OTT点播服务器,欧洲客户使用盒子点播。

目前的联网情况为:OTT业务从北京到香港段走专线,与直播业务一块使用一条155M的IPLC电路。到达香港后OTT业务拆分出来,直播流继续通过专线推送到全球各分发节点。但OTT内容推送从香港到欧洲段改走公网IPSEC ×××传输。参考下图1-1 OTT推送内容的路径。

北京----(专线)----香港------(vpn)-------欧洲。

总部与多分支VPN解决方案(hub to spoke拓扑结构)juniper防火墙为例_总部_02


                                    图1-1

2.2 2.业务需求

由于直播节目增加,专线带宽吃紧,客户希望将OTT内容推送从专线迁移到×××上。在技术上北京与欧洲节点直接建立×××也可以,但实际效果很差。因此,方案中将香港作为中转站,分别于北京和欧洲建立vpn。构成北京-香港-欧洲这样一个ipsec vpn的虚拟通道,最终将OTT内容推送到欧洲OTT点播服务器。参考下图1-2

总部与多分支VPN解决方案(hub to spoke拓扑结构)juniper防火墙为例_PN_03


                                     图 1-2

 

 

第3章 配置参考(以juniper防火墙为例)

3.1 香港hub端配置

       hub端使用接口模式vpn,也叫作基于路由的vpn。与基于策略的vpn最大的区别是,×××隧道和访问策略分离,一个建隧道,一个控制安全,各司其职,提供更好的灵活性。对于分支端没有要求,接口模式或者策略模式都可以。

3.1.1 防火墙基本配置,公网接口为E0/2,配置缺省路由。

总部与多分支VPN解决方案(hub to spoke拓扑结构)juniper防火墙为例_PN_04


3.1.2 建立一个单独的vpn区,如下图。不建议选中block intra-zone traffic选项。如果选择了,后续分支机构之间互访,需要单独配置vpn区 to vpn区策略。

总部与多分支VPN解决方案(hub to spoke拓扑结构)juniper防火墙为例_PN_05


3.1.3 创建隧道接口,如下图所示,需要制定隧道编号,以及将隧道地址绑定为外网接口地址,或者自己随便设置。

总部与多分支VPN解决方案(hub to spoke拓扑结构)juniper防火墙为例_总部_06


3.1.4 开始vpn配置。首先配置vpn网关(ipsec vpn第一阶段,也叫IKE阶段)

总部与多分支VPN解决方案(hub to spoke拓扑结构)juniper防火墙为例_分支_07


3.1.5 点击高级,需要设置共享密钥,和IKE策略

 总部与多分支VPN解决方案(hub to spoke拓扑结构)juniper防火墙为例_总部_08


3.1.6 gateway设置好如下所示,这里显示的是北京和欧洲节点都有。

总部与多分支VPN解决方案(hub to spoke拓扑结构)juniper防火墙为例_总部_09


3.1.7 设置第二阶段:ipsec配置,选择前面建的vpn网关。

总部与多分支VPN解决方案(hub to spoke拓扑结构)juniper防火墙为例_总部_10


3.1.8 点击高级,指定ipsec传输模式集(ipsec安全协议,加密算法、hash算法),如果都是juniper,建议选择预定义的。重点是:把vpn与隧道绑定。

总部与多分支VPN解决方案(hub to spoke拓扑结构)juniper防火墙为例_PN_11


3.1.9 北京节点重复前面的步骤,建完vpn如下图所示。

 总部与多分支VPN解决方案(hub to spoke拓扑结构)juniper防火墙为例_总部_12

3.1.10 在策略总啥都没有,为什么?参考3.1.2步骤,如果香港需要落地,如何创建规则,自己想一想。

总部与多分支VPN解决方案(hub to spoke拓扑结构)juniper防火墙为例_PN_13


3.1.11 配置各分支的路由,与接口绑定


 总部与多分支VPN解决方案(hub to spoke拓扑结构)juniper防火墙为例_分支_14

  

 

3.2 北京总站(分支端)配置:

3.2.1 基本的配置,包括配置公网地址,默认路由设置。

总部与多分支VPN解决方案(hub to spoke拓扑结构)juniper防火墙为例_PN_15


3.2.2 配置vpn区域


 总部与多分支VPN解决方案(hub to spoke拓扑结构)juniper防火墙为例_PN_163.2.3 配置隧道接口,指定隧道编号和隧道地址

总部与多分支VPN解决方案(hub to spoke拓扑结构)juniper防火墙为例_分支_17


3.2.4 创建vpn网关

总部与多分支VPN解决方案(hub to spoke拓扑结构)juniper防火墙为例_PN_18


3.2.5 vpn网关高级设置

总部与多分支VPN解决方案(hub to spoke拓扑结构)juniper防火墙为例_分支_19


3.2.6 vpn网关创建完效果

总部与多分支VPN解决方案(hub to spoke拓扑结构)juniper防火墙为例_分支_20


3.2.7 创建ipsec vpn设置

总部与多分支VPN解决方案(hub to spoke拓扑结构)juniper防火墙为例_分支_21


3.2.8 ipsec vpn高级设置,vpn与隧道接口绑定

总部与多分支VPN解决方案(hub to spoke拓扑结构)juniper防火墙为例_PN_22


3.2.9 创建后的效果

总部与多分支VPN解决方案(hub to spoke拓扑结构)juniper防火墙为例_总部_23


3.2.10 创建trust to vpn以及vpn to trust策略。这里为什么有,香港hub为什么不需要呢?

总部与多分支VPN解决方案(hub to spoke拓扑结构)juniper防火墙为例_分支_24


3.2.11 编辑策略查看细节

总部与多分支VPN解决方案(hub to spoke拓扑结构)juniper防火墙为例_分支_25


3.2.12 北京端路由。

总部与多分支VPN解决方案(hub to spoke拓扑结构)juniper防火墙为例_分支_26


3.2.13 重复前面步骤创建欧洲节点

 

第4章 vpn测试及查看:

4.1 查看vpn通道是否建立。

总部与多分支VPN解决方案(hub to spoke拓扑结构)juniper防火墙为例_PN_27


4.2 通过192.168.1.1 ping 192.168.4.1

5952E-1#ping 192.168.4.1 option source 192.168.1.1

Sending 5,100-byte ICMP echoes to 192.168.4.1,timeout is 2 seconds.

!!!!!

Success rate is 100 percent(5/5),round-trip min/avg/max= 260/266/270 ms.

 

 

第5章 命令行配置还是简洁高效,ctrl+c, ctrl+v

5.1 香港hub端:

5.1.1 公网地址配置

set interface "ethernet0/2" zone "Untrust"

set interface ethernet0/2 ip 香港公网地址

set route 0.0.0.0/0 interface ethernet0/2 gateway 缺省网关地址

5.1.2 创建新vpn区域

set zone id 100 "vpn"

5.1.3 创建隧道接口绑定到vpn区域,并且隧道接口地址绑定公网接口地址

set interface "tunnel.1" zone "vpn"

set interface "tunnel.2" zone "vpn"

set interface tunnel.1 ip unnumbered interface ethernet0/2

set interface tunnel.2 ip unnumbered interface ethernet0/2

5.1.4 创建vpn远程网关(IKE阶段)

set ike gateway "To-Paris" address 欧洲公网地址 Aggr outgoing-interface "ethernet0/2" preshare "共享的密钥" proposal "pre-g2-3des-sha" "pre-g2-aes128-sha"

set ike gateway "to-bj" address 北京公网地址 Main outgoing-interface "ethernet0/2" preshare "共享的密钥" sec-level standard

5.1.5 创建ipsec参数,绑定隧道接口(ipsec阶段)

set vpn "×××-Paris" gateway "To-Paris" no-replay tunnel idletime 0 proposal "nopfs-esp-des-md5"

set vpn "×××-Paris" monitor

set vpn "×××-Paris" id 0xb bind interface tunnel.2

set vpn "to-bj" gateway "to-bj" no-replay tunnel idletime 0 sec-level standard

set vpn "to-bj" monitor

set vpn "to-bj" id 0xa bind interface tunnel.1

5.1.6 设置vpn路由,通过指定的隧道接口

set route 192.168.169.0/24 interface tunnel.2

set route 192.168.4.0/24 interface tunnel.2

set route 192.168.1.0/24 interface tunnel.1

set route 192.168.2.0/24 interface tunnel.1

set route 192.168.3.0/24 interface tunnel.1

set route 192.168.5.0/24 interface tunnel.1

5.1.7 配置策略(由于vpn区内默认允许数据包通过,因此不需要再配置策略)

 

5.2 北京端配置

5.2.1 防火墙接口及默认路由配置

set interface "ethernet0/0" zone "Trust"

set interface "ethernet0/2" zone "Untrust"

set interface ethernet0/0 ip 192.168.254.6/29

set interface ethernet0/0 nat

set interface ethernet0/2 ip 北京公网地址

set interface ethernet0/2 route

set route 0.0.0.0/0 interface ethernet0/2 gateway 缺省网关地址

5.2.2 创建vpn区域

set zone id 100 "vpn"

5.2.3 创建隧道接口,绑定到×××区域

set interface "tunnel.1" zone "vpn"

set interface tunnel.1 ip unnumbered interface ethernet0/2

5.2.4 创建vpn网关

set ike gateway "to-hk&paris" address 香港公网地址 Main outgoing-interface "ethernet0/2" preshare "共享的密钥" sec-level standard

5.2.5 创建ipsec 策略并且绑定到tunnel.1口。

set vpn "to-hk&paris" gateway "to-hk&paris" no-replay tunnel idletime 0 sec-level standard

set vpn "to-hk&paris" monitor

set vpn "to-hk&paris" id 0x2 bind interface tunnel.1

5.2.6 创建内网与vpn访问策略元素

set address "Trust" "192.168.1.0/24" 192.168.1.0 255.255.255.0

set address "Trust" "192.168.2.0/24" 192.168.2.0 255.255.255.0

set address "Trust" "192.168.3.0/24" 192.168.3.0 255.255.255.0

set address "Trust" "192.168.5.0/24" 192.168.5.0 255.255.255.0

set address "vpn" "192.168.169.0/24" 192.168.169.0 255.255.255.0

set address "vpn" "192.168.4.0/24" 192.168.4.0 255.255.255.0

5.2.7 创建trust to vpn及vpn to trust策略,动作为permit

set policy id 1 from "Trust" to "vpn"  "192.168.1.0/24" "192.168.169.0/24" "ANY" permit

set policy id 1

set src-address "192.168.2.0/24"

set src-address "192.168.3.0/24"

set src-address "192.168.5.0/24"

set dst-address "192.168.4.0/24"

exit

set policy id 2 from "vpn" to "Trust"  "192.168.169.0/24" "192.168.1.0/24" "ANY" permit

set policy id 2

set src-address "192.168.4.0/24"

set dst-address "192.168.2.0/24"

set dst-address "192.168.3.0/24"

set dst-address "192.168.5.0/24"

exit

5.2.8 创建到内网和vpn的路由

set route 192.168.1.0/24 interface ethernet0/0 gateway 192.168.254.1

set route 192.168.2.0/24 interface ethernet0/0 gateway 192.168.254.1

set route 192.168.3.0/24 interface ethernet0/0 gateway 192.168.254.1

set route 192.168.5.0/24 interface ethernet0/0 gateway 192.168.254.1

set route 192.168.4.0/24 interface tunnel.1

set route 192.168.169.0/24 interface tunnel.1

 

5.3 检查vpn隧道和畅通

5.3.1 查看vpn隧道(香港端)

Remote Management Console

SSG550-> get sa

total configured sa: 2

HEX ID    Gateway         Port Algorithm     SPI      Life:sec kb Sta   PID vsys

0000000b<  欧洲公网地址  500 esp: des/md5  0a89fde5   890 unlim A/U    -1 0

0000000b>  欧洲公网地址  500 esp: des/md5  243d2f66   890 unlim A/U    -1 0

0000000a<   北京公网地址  500 esp:3des/sha1 0a89fde6  1987 unlim A/U    -1 0

0000000a>   北京公网地址  500 esp:3des/sha1 9ef7478b  1987 unlim A/U    -1 0

SSG550->

5.3.2 查看vpn隧道(北京端)

SSG550->       get sa

total configured sa: 1

HEX ID    Gateway         Port Algorithm     SPI      Life:sec kb Sta   PID vsys

00000002<    香港公网地址  500 esp:3des/sha1 9ef7478b  2002 unlim A/U    -1 0

00000002>    香港公网地址  500 esp:3des/sha1 0a89fde6  2002 unlim A/U    -1 0

SSG550->

5.3.3 ping检查(由于香港端不需要落地,因此从北京直接ping欧洲节点)

5952E-1#ping 192.168.4.1 option source 192.168.1.1

Sending 5,100-byte ICMP echoes to 192.168.4.1,timeout is 2 seconds.

!!!!!

Success rate is 100 percent(5/5),round-trip min/avg/max= 260/266/280 ms.

5952E-1#