注:设备版本6.2.3 ,MFC 和 FTD都为KVM。

在FTD部署HA之前,首先需要将2台设备注册到MFC中,注册前需要确保2台FTD的所有硬件及软件资源一致,包括接口数量,另外不能部署***,最好是2台完全一样的空配置设备,开机后只需要根据向导配置管理IP信息和注册到MFC即可,不要配置其他任何策略,在此前提下开始部署HA。
部署拓扑
CISCO MFC中部署Firepower FTD高可用(HA)---By 年糕泰迪_第1张图片
以下截图是在部署HA时其中一台设备已经配置过一些接口信息已经NAT策略,所以在部署的时候会提示mismatch,即使删除了FTD中的所有配置也没有用,因为,因为MFC部署到FTD中的NAT是没有办法删除的,即使在FTD中也不行,这是官方说的,需要部署其他NAT策略来覆盖。你说扯不扯淡?!WFT!说句实话cisco的这一套firepower真的很垃圾很垃圾(基于当前这个版本而已),照抄Check Point的架构模式,还炒得一塌糊涂,操作性,可识别性,复杂度,响应速度,,,没有一个地方值得点评的,而且还有很多反人类的设计,bug也是一大推,但人家脸大没办法。
CISCO MFC中部署Firepower FTD高可用(HA)---By 年糕泰迪_第2张图片
接下来在设备都注册到MFC后开始部署HA,所有操作都在MFC中进行,如下截图,开始添加设备,
CISCO MFC中部署Firepower FTD高可用(HA)---By 年糕泰迪_第3张图片
开始添加设备,给HA命名随意方便管理即可,下面的device type 有2个选项,我们选择Firepower Threat Defense ,另一个时Firepower,这个是针对Cisco 7000/8000系列的firepower硬件设备的。再接下来选择需要组成HA的主备设备,从我们已经注册到MFC中的设备选择即可,选择完毕后continue。
CISCO MFC中部署Firepower FTD高可用(HA)---By 年糕泰迪_第4张图片
接下来就是配置HA的对等体参数了,看到这个配置参数是不是很熟悉,没错他和ASA的failover配置完全一样。
只不过ASA的state link可以用failover link 复用,这里必须是2条链路独立开,其他完全一致。IPSec encryption 其实就是对等体两边用来建立联系和通信的识别密钥,ASA9.0以后的版本也有这个,就是HA通信时基于 IPsec加密的,只是一种加密通信方式,和8.x版本的key时一个东西,区别在于后者不加密。等一系列配置完毕后,最好点击 Add 后就开始坐等HA的构建了。
PS:failover的IP最好是使用保留的local link 地址段 168.254.0.0/16
CISCO MFC中部署Firepower FTD高可用(HA)---By 年糕泰迪_第5张图片
看到一下弹窗消息那么恭喜,HA构建完毕。
CISCO MFC中部署Firepower FTD高可用(HA)---By 年糕泰迪_第6张图片
然后MFC会自动将HA配置策略部署到设备中去,接下来又是分钟级别的等待。
CISCO MFC中部署Firepower FTD高可用(HA)---By 年糕泰迪_第7张图片
很不幸,Cisco又玩了我们一把,HA策略部署失败。我们来看看失败在哪儿了,打开报错详细日志,发现FMC下发的策略和ASA的failover级别如出一辙,这个玩意真是东拼西凑。
CISCO MFC中部署Firepower FTD高可用(HA)---By 年糕泰迪_第8张图片
下面是具体的troubleshooting detail log ,顺着log往下看最下面是error 信息,说没有配置failover IP,无法建立tunnel,这不是睁眼说瞎话么。。你说这个错误出的是不是很反人类?!
Refer to the following troubleshooting information when contacting Cisco TAC.
Lina messages
FMC >> failover lan unit primary
FMC >> strong-encryption-disable
FMC >> no dns domain-lookup diagnostic
FMC >> timeout conn 1:00:00 half-closed 0:10:00 udp 0:02:00 icmp 0:00:02
FMC >> no user-identity default-domain LOCAL
FTD192.168.70.211 >> info : INFO: Default-domain change will not impact existing configurations.
FMC >> interface GigabitEthernet0/5
FMC >> description LAN Failover Interface
FMC >> no shutdown
FMC >> exit
FMC >> interface GigabitEthernet0/6
FMC >> description STATE Failover Interface
FMC >> no shutdown
FMC >> exit
FMC >> dns domain-lookup diagnostic
FMC >> failover lan interface folink GigabitEthernet0/5
FTD192.168.70.211 >> info : INFO: Non-failover interface config is cleared on GigabitEthernet0/5 and its sub-interfaces
FMC >> failover interface ip folink 169.254.1.1 255.255.255.252 standby 169.254.1.2
FTD192.168.70.211 >> info : ERROR: Failed to apply IP address to interface GigabitEthernet0/5, as the network overlaps with interface Internal-Data0/1. Two interfaces cannot be in the same subnet.
FMC >> failover link stlink GigabitEthernet0/6
FTD192.168.70.211 >> info : INFO: Non-failover interface config is cleared on GigabitEthernet0/6 and its sub-interfaces
FMC >> failover interface ip stlink 169.254.3.1 255.255.255.252 standby 169.254.3.2
FMC >> failover replication http
FMC >> monitor-interface diagnostic
FMC >> failover ipsec pre-shared-key **
FTD192.168.70.211 >> error : ERROR: Could not establish tunnel without configuring Failover ip address
Other logs

Lina configuration application failure log: Rollback APP was successful.

官方找了大半天也没有说明,官方文档从来都是一次部署到位,从来不会有问题,望文生义,既然tunnel不能建立,那在建立HA过程中和tunnel相关的也就只有哪个IPSec encryption 参数了,所以删除已经配置的HA策略,重新建立,并且不启用IPSec encryption 参数,这次就顺利创建成功了,而且策略推送也成功。
最后就是正常部署阶段,后面再记录其他部署内容。
注意:HA模式下不支持组播,而且像TLS和SSL在HA切换之后,session会终端需要重新建立连接。