【隧道篇 / IPsec】(6.0) ❀ 01. 点对多星状拓扑IPsec动态BGP路由 ❀ FortiGate 防火墙

  【简介】我们已经了解并熟悉点对多星状IPsec VPN的好处了,它可以非常方便的让各个分支访问中心。但是,分支与分支之间的访问仍需要通过中心转发。另外,当允许访问的中心IP有变动的时候,各个分支都要进行手动修改,有没有什么方法可以解决这些问题呢?


ADVPN

  传统的点对多星状方式中,分支只能和中心建立永久隧道,分支之间的流量需要通过中心来转发,这种方式减轻了分支的负担(只要和中心建立一条连接),但对中心提出了更高的性能要求,同时利于中心对分支间流量的监控。

  ADVPN (Auto Discovery VPN) 是一种基于IETF RFC草案的IPsec技术 。简单地说,ADVPN允许在传统的点对多星状VPN网络中的分支之间相互建立动态的、按需连接的VPN隧道,分支间的流量可以直接转发,从而达到整网完全状态连接。相比而言,中心的负担减轻,同时减少分支间流量的延迟,更有利于VOIP等实时流量的传输,在实际使用的过程中可按照自身需求进行选择。

  ADVPN的主要优势是,它为标准的点对多星状拓扑提供了完全网格化的功能,大大减少了分支到分支的低延迟可达性所需的准备工作,并解决了与非常大的完全网格VPN网络相关的可伸缩性问题。

  ADVPN要求使用动态路由才能正常工作,FortiOS 6.0同时支持BGP和RIP。BGP(特别是iBGP)非常适合ADVPN,因为它的路由反射器机制驻留在VPN中心设备上,并将路由信息从每个分支对等点镜像到彼此。此外,当拓扑中引入新的分支时,动态组对等点会导致几乎零接触中心供应。

 中心配置 - VPN

  首先我们对中心FortiGate进行配置,因为有很多功能需要在CLI中进行配置,所以最好使用命令行接口进行BGP和ADVPN等配置。考虑到每个人的能力程度不同,这里尽量简单一些,先GUI配置,再CLI补充配置。

  ① 首先登录中心FortiGate,这里以位于深圳的200D为例。选择菜单【虚拟专网】-【IPsec向导】,输入自定义的VPN名称,模板类型选择【自定义】,点击【下一个】。

   ② 这里我们将IPsec VPN的阶段一和阶段二都在一个介面上配置。

  (1) 远程网关与接口:由于不知道众多分支的外网IP,中心FortiGate设置为接收方,所以远程网关设置为“拨号用户”,等待分支的拨入。接口选择连接的宽带接口。

   (2) 预共享密钥:双方可以使用预共享密钥的方式对身份进行确认,预共享密钥为自定义,所有接入的FortiGate要求填写一致;

   (3) 模式:分为主模式和野蛮模式,主模式一般采用IP地址方式标识对端设备;而野蛮模式可以采用IP地址方式或者域名方式标识对端设备。

   (4) 第一阶段加密:加密方案,由加密算法、认证算法、DH组三部分组成;所有接入的FortiGate都要设置相同的加密方式。

        (5) 第二阶段加密:内容和功能与第一阶段加密相同,可以设置成与第一阶段不同的加密方式。

   ③ 用config vpn ipsec phase1-interface命令配置和查看IPsec VPN第一阶段的配置。

   ④ set add-route disable 命令禁止控制添加路由到对等目的地选择器。set auto-discovery-sender enable 命令允许向分支发送和接收快捷消息 (中心负责让分支知道它们应该建立这些隧道)。set net-device enable 命令启用为每个拨号实例创建一个内核设备,允许所有流量对通过给定phase1生成的所有实例使用单一接口。

   ⑤ 用config vpn ipsec phase2-interface命令配置和查看IPsec VPN第二阶段的配置。这里不用修改。

  【提示】目前5.6版的ADVPN不支持主动模式,但是从版本6.0.1开始已经实现了支持。

中心配置 - 隧道接口

  ADVPN要求在连接到拓扑的每个设备上配置隧道IP。这些IP地址对于每个对等点必须是唯一的。

   ① 选择菜单【网络】-【接口】。点击VPN引用宽带接口最左边的加号,可以看到VPN虚拟接口,选择刚才建立的VPN虚拟接口,点击【编辑】按钮。

  ② 给隧道输入一个IP地址,网段不能和防火墙其它接口相同。中心的一个特殊之处在于它需要定义一个伪远程IP地址(在这个示例中是10.10.10.254)。此地址在拓扑中应该是未使用的,它不会被实际视为中心配置的一部分。

   ③ 用config system interface 命令可以查看隧道接口的情况。

中心配置 - BGP

   接下来需要配置iBGP和路由反射。

   ① 选择菜单【网络】-【BGP】,本地AS输入私有号65000,Router ID为隧道IP地址,当需要宣传我们的局域网网络时,在网络下输入本地内网IP地址,可以是多个IP地址。

   ② 用config router bgp命令配置和查看动态路由BGP。

   ③ config neighbor-grout 命令配置一个动态客户端组来减少供应需求。config neigghbor-range 命令配置动态客户端组的IP范围。set next-hop-self enable命令表示将广告发送到IBGP对等点的NEXT_HOP信息中FortiGate设备的IP地址。set route-reflector-client enable命令启用路由反射器客户端。

   BGP中的路由反射器(RR)集中路由更新,因此其他路由器只需与RR通信就可以获得所有更新。这导致路由表更小,路由器之间的连接更少,对网络拓扑变化的响应更快,管理带宽更少。

    ④ BGP完整的配置是这样的。

 中心配置 - 策略

   最后一道工序,配置允许访问的策略。

   ① 选择菜单【策略&对象】-【IPv4策略】,点击【新建】,建立一条由隧道访问内网的策略。

   ② 再建立一条由内网访问隧道的策略。

    ③ 由于中心会有许多分支接入,因此在中心还要建一条允许隧道内部能够互相访问的策略。

   ④ 可以用命令查看刚建好的策略。

  【提示】中心不需要手动建立路由,回程路由会根据分支拨入情况自动生成。

  分支配置

   分支配置与中心配置方法大同小异,这里就不再贴出图形界面的配置方法,只给出命令。

   ① IPsec VPN第一阶段配置,这里的远程网关指定的IP地址113.116.10.246,就是中心的外网IP地址。

   ② IPsec VPN第二阶段配置,set auto-negotiate enable 启用自动协商,VPN会一直保持连接状态。

   ③ 给隧道设置IP地址,远程IP地址就是中心的隧道IP地址。

   ④ 配置BGP,本地ID为10.10.10.2,邻居ID为10.10.10.1,指向中心。set next-hop-self enable命令表示将广告发送到IBGP对等点的NEXT_HOP信息中FortiGate设备的IP地址,set soft-reconfiguration enable命令启用允许IPv4入站软配置。

   ⑤ 和中心不同,分支必须指定静态路由。所有对10.10.10.0的访问都会走隧道。

   ⑥ 最后是建立一进一出的两条策略。

  验证

   首先VPN必须被连通。

   ① 在分支选择【监视器】-【IPsec监视器】,如果看到隧道左边显示的是绿色图标,表示隧道连通,如果没有连接,可以选择隧道,点击【启用】。

   ② 在分支选择【监视器】-【路由监视器】,可以看到得到了BGP路由,该路由的网关地址中心隧道IP地址。

   ③ 在分支命令状态,定义源IP地址为内网接口地址,Ping中心防火墙内网接口地址,可以Ping通,说明IPsec VPN工作正常。

   ④ 在中心防火墙的BGP网络里再加入一个网段。

   ⑤ 在分支防火墙里,用get router info routing-table bgp命令,可以查看获取的BGP动态路由。并且可以访问。

   ⑥ 在分支防火墙内网的电脑里tracert路由,可以看到是经过中心防火墙隧道IP到达的。 

   ⑦ 在分支防火墙的BGP里增一个网络网段。

   ⑧ 在中心防火墙的路由监视里很快就能看到自动获得的BGP路由,是不是很有意思。

   ⑨ 由于目前只有一台分支防火墙与中心防火墙VPN连接,所以在分支防火墙用diagnose vpn tunnel list只看到一条隧道。如果有多个分支连接,就会看到有多条隧道生成。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

飞塔老梅子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值