Common Address Redundancy Protocol (CARP) e Heartbeat
O Common Address Redundancy Protocol (CARP), é mais uma das funcionalidades implementadas no FreeBSD que proporciona a capacidade de múltiplos equipamentos partilharem o mesmo endereço, implementando desde logo a capacidade de configuração de alta disponibilidade. A principal finalidade é a de implementação de redundância, mas também suporta configuração para suporte ao balanceamento de carga. O seu formato de funcionamento é semelhante ao HSRP patenteado pela Cisco. [20]
Como é possível observar no exemplo 1, é gerado uma interface virtual com endereço próprio, que ficará associado a todas as interfaces que pertençam à mesma rede. Tendo como base a rede configurada na interface virtual, esta é determinada com base nas interfaces locais a serem utilizadas consoante as prioridades definidas.
Tal como já anteriormente referido, é possível utilizar o CARP com finalidade de balanceamento de carga. Nesse caso há necessidade de utilizar o CARP agregado a um mecanismo de balanceamento de endereços (DNS load sharing, firewall divert /forward ou ao NAT TCP Load distribution). Dessa forma, a configuração, tal como acontece no HSRP, seria replicada por forma a criar uma nova interface virtual, desta feita com a utilização inversa de prioridades. No exemplo 2 é apresentada a configuração anterior expandida para suporte a balanceamento de carga.
Heartbeat
O Heartbeat é um serviço open source que permite a implementação de soluções de alta disponibilidade, proporcionando redundância ao sistema em caso de falha. Tal como o CARP, o Heartbeat define um IP virtual a partilhar entre diversas máquinas, existindo uma comunicação constante entra elas, a fim de despistarem falhas que requeiram alterações nas comunicações, podendo ser executadas ações diversas sobre aplicações instaladas durante os processos de failover e failback. O configuração do Heartbeat tem por base a criação de endereços virtuais o que o torna esta solução impraticável no interior dos ambientes jail.