在一开始做配置的时候,找了几个博客,按着操作后发现是错误的,主备ASA之间一直探测不到对方,显示 No Active Mate Detected,浪费了挺多时间的。
一、踩坑阐述
主要是犯了两个错误。
其一,是先入为主,误认为ASA的failover热备份与交换机的hsrp主备配置相似,就给主备都配了个虚拟ip,错误如下:
(g0/2是两个ASA的互联口)
ASA1(config-if):ip add 10.4.0.1 255.255.255.0 standby 10.4.0.3
ASA2(config-if):ip add 10.4.0.2 255.255.255.0 standby 10.4.0.3
(上面是错的,千万不要学我)
其二,在错误一基础上更改后,发现还是错了,明明照着别人的命令敲了,还是错的,把模拟器两台asa都咔掉重新配置一遍也还是不行。结果,发现还是配置错了,错误如下:
ASA1 ip配置是 .1 standby .2
ASA2 ip配置是 .2 standby .1
(就是这个点,找到的几个博客写的是错的,一个小小的细节花了我挺多时间。。。盯)
实际上,正确的配置应该是主备都是 .1 standby .2 ,failover会在主ASA失效后转移到备ASA上来使用,此时在备ASA使用的才是 .2 的地址。意思上是与hsrp相似,但实际配置上可以理解为,主ip和备ip我们都在主ASA上配置好了,而备ASA会通过failover的互联来同步主ASA的配置,所以主备ASA配置都是一样的,区别就是其主备优先级不同而已。
二、failover正确配置
主Active设备ASA1:
ASA1(config)#interface g0/0
ASA1(config-if)#nameif intranet
ASA1(config-if)#security-level 30
ASA1(config-if)#ip add 10.4.0.1 255.255.255.0 standby 10.4.0.2
ASA1(config-if)#no sh
ASA1(config-if)#exit
ASA1(config)#interface g0/1
ASA1(config-if)#nameif extranet
ASA1(config-if)#security-level 10
ASA1(config-if)#ip add 10.4.1.1 255.255.255.0 standby 10.4.1.2
ASA1(config-if)#no sh
ASA1(config-if)#exit
ASA1(config)#interface g0/2 //互联口
ASA1(config-if)#no sh
ASA1(config-if)#exit
ASA1(config)#failover lan unit primary //指定该设备的角色为主防火墙
ASA1(config)#failover lan int failover g0/2 //指定主备设备 互联接口 并命名(若有多个都需指定)
ASA1(config)#failover link statelink g0/2 //指定状态信息 同步接口 并命名
ASA1(config)#failover int ip fa 1.1.1.1 255.255.255.0 standby 1.1.1.2 //互联口ip配置
ASA1(config)#failover key cisco
HQ-ASA1(config)#failover (一定要先在主设备上开启,否则备上开启,且已连接互连线,则主设备配置会被覆盖)
备Standby设备ASA2:
(可以只配互联口的,其他的配置在开启failover后会同步)
ASA2(config)#interface g0/2
ASA2(config-if)#no sh
ASA2(config-if)#exit
ASA2(config)#failover lan unit secondary //指定该设备的角色为备防火墙
ASA1(config)#failover lan int failover g0/2
ASA1(config)#failover link statelink g0/2
ASA1(config)#failover int ip fa 1.1.1.1 255.255.255.0 standby 1.1.1.2 //注意不要配错,否则主备之间探测不到
ASA1(config)#failover key cisco
HQ-ASA1(config)#failover