我们前面配置了飞塔防火墙FortiGate【站到站】模式的IPsec VPN(卷土重来!这次终于把FortiGate的IPsec VPN配置成功了!)。按照我们之间的配置方式,如果有多个站点需要互联,我们一般会采用将多个分支站点连接到一个总部站点的模式,分支站点之间互访的流量需要通过总部站点进行绕转,这种模式下的总部站点就是HUB站点,而分支站点就是SPOKE站点,对应的模型就是HUB-SPOKE模型。我们之前用ADVPN介绍过类似模型(ADVPN:Hub-Spoke类型组网实验)。
我们上次在配置飞塔防火墙的IPsec VPN时发现,其支持的模板类型包括【Hub-and-Spoke】类型,那我们今天就简单测试一下这个HUB-SPOKE模型怎么配置。
测试组网如下图所示:
其中,FGT44作为HUB设备,FGT45和FGT46作为SPOKE设备,三台设备通过VSR互通,模拟公网环境;并分别下挂一台设备模拟内网终端。
我们首先配置FGT44这个HUB设备,还是进入“VPN”下的“IPsec向导”页面。这次,在“VPN建立”配置步骤,我们指定名称为HUB,模板类型选择【Hub-and-Spoke】,这里介绍到“在Hub-and-Spoke VPN场景下,将使用BGP作为路由协议进行自动发现”;角色选择【Hub】。下面还有一个场景示意图。
在“认证”配置步骤,指定流入接口为互联接口【port2】,认证方式选择【预共享密钥】,并设置秘钥为Forti@2025。
在“隧道接口”配置步骤,设备自动推荐本端的隧道接口IP地址为10.10.1.1,远端设备的隧道接口IP地址为10.10.1.2,这个网段倒是不冲突,但是为什么远端IP地址只有一个呢?
在“策略&路由”配置步骤,本地AS我们使用默认的65400,选择本地接口和本地子网;Spoke type默认是【个别】,这里需要配置Spoke1和Spoke2的隧道IP地址。
或者,我们也可以将Spoke type修改为【范围】,此时,我们需要指定Spoke prefix范围为远端隧道接口的IP地址段,还要添加一个用于Spoke的BGP邻居组。初次使用,我们的Spoke type还是使用默认的【个别】。
检查对象摘要,点击“完成”。
检查创建操作,所有步骤全部完成。下面还有Spoke 简易配置密钥,提示为“这些配置密钥是一次性使用的,可以自动在您的spoke FortiGates上配置一些VPN隧道设置”。这里的两个秘钥是完全一样的,我们复制一下备用,eyJodWJHYXRld2F5SXAiOiIxMC4xMi4xLjEiLCJodWJUdW5uZWwiOiIxMC4xMC4xLjEiLCJodWJJbmRlbnRpZmllciI6NjU0MDAsImluZGVudGlmaWVyIjo2NTQwMCwiaHViSWRlbnRpZmllciI6NjU0MDAsImlkZW50aWZpZXIiOjY1NDAwLCJ0dW5uZWxJcCI6IjEwLjEwLjEuMyJ9。
接下来,我们配置FGT45。同样的,也是在 “VPN”下的“IPsec向导”页面,在“VPN建立”配置步骤,我们指定名称为Spoke1,模板类型选择【Hub-and-Spoke】,角色选择【Spoke】,把配置Spoke得到的建议配置秘钥粘贴进来,点击“应用”。
在“认证”配置步骤,设备自动带出了远程IP地址和接口,我们使用默认的认证方式【预共享密钥】,并设置秘钥为Forti@2025。
在“隧道接口”配置步骤,设备自动带出了本端的隧道接口IP地址为10.10.1.3,远端设备的隧道接口IP地址为10.10.1.1,直接使用即可。
在“策略&路由”配置步骤,本地AS我们使用默认的65400,再选择本地接口和本地子网即可。
检查对象摘要,点击“完成”。
检查创建操作,所有步骤全部完成。
跟配置【站到站】的IPsec隧道不同,这次配置完成之后隧道接口直接UP了。
查看隧道接口状态,也已经是UP状态,并且IP地址为配置过程中指定的IP地址。
然后,我们完成FGT46的配置。整体与FGT45的配置类似,只是在配置“隧道接口”时,系统默认带出的IP地址还是10.10.1.3,我们需要手工更改为10.10.1.4。
其他操作相同,完成隧道创建。
在FGT44这个HUB设备上查看设备路由表,可以看到已经学习到了两个Spoke设备的子网路由。
在FGT45这个Spoke1设备上查看设备路由表,可以看到也学习到了HUB和另一个Spoke设备的子网路由。比较奇怪的是,本地使用的接口地址竟然显示了两条。
查看IPsec隧道状态,可以看到Spoke1到HUB的隧道状态正常,竟然还有一条到另一个Spoke的隧道,不过状态为DOWN。看样子,目前还没有Spoke-Spoke的捷径。
在终端PC2上测试到另外两个站点的联通性。
到HUB站点正常,但是到Spoke2站点出现了丢包,之后通信正常。
再次查看IPsec隧道状态,另一条到Spoke2的隧道竟然UP了。
检查IPsec隧道配置,可以看到没有这条Spoke-Spoke隧道的配置。
漂亮,他就这么水灵灵的把捷径创建好了。看来这里的Hub-and-Spoke模型竟然还是Full-Mesh结构,都不用额外测试了。
***推荐阅读***
如何配置GENEVE?我们用飞塔防火墙FortiGate来演示一下
来吧,给大家分享一下最新版本的FortiGate-VM64,带试用授权
快来看啊,华为路由器配置GRE over IPSec隧道案例来了!
简简单单,H3C路由器和Juniper vSRX防火墙对接IPsec VPN这么配就成了!