Le basculement de Keepalived ne fonctionne pas pour la cible NAT statique derrière Cisco ASA

J'ai un Cisco ASA [0] avec une paire de boîtes Linux dans la DMZ exécutant Keepalived et HAproxy agissant comme une paire de basculement d'équilibrage de charge pour une autre paire de servers Windows, également dans la DMZ. Je suis convaincu que Keepalived fonctionne correctement. Je peux faire un ping sur l'adresse virtuelle (10.0.1.8) d'un autre hôte dans la DMZ; Quand j'arrête Keepalived sur le maître (10.0.1.6), quelques pings échouent avant que la sauvegarde (10.0.1.7) ne reprenne l'adresse virtuelle. Des échecs semblables se produisent lorsque je redémarre Keepalived sur le maître. Cet autre hôte peut afficher des pages Web hébergées sur les deux servers Windows via HAPROxy lorsque le primaire ou le secondaire est actif.

L'adresse IP virtuelle comporte un mappage NAT statique à une adresse externe (par exemple, 1.2.3.8). Lorsque j'essaie un test similaire de l'extérieur du pare-feu, les pings vers 1.2.3.8 ne fonctionnent que lorsque le primaire est actif – lorsque j'arrête le service Keepalived sur le primaire, les pings de l'extérieur du pare-feu échouent alors que les pings de l'intérieur de la DMZ réussissent.

Je peux voir que l'input d'adresse MAC pour l'adresse IP virtuelle change quand j'arrête et redémarre Keepalived sur le primaire, donc l'ASA semble savoir quand le primaire et le secondaire sont actifs. Il semble refuser à NAT le trafic entrant lors de l'activité secondaire. Ma meilleure estimation est que l'ASA tente d'empêcher l'adresse d'être falsifiée, mais dans ce cas, j'aimerais vraiment que l'ASA l'autorise. Je ne peux pas comprendre comment procéder (ou par où commencer, vraiment). Aucune suggestion?

[0] – C'est en fait une paire dans une configuration de basculement, mais je ne pense pas que cela soit pertinent.