Se você tiver acesso à configuração dos clientes, poderá usar autossh
em seu lado para reconectar (para o mesmo IP, ou seja, o autossh não se reconecta a servidores diferentes).
No lado do servidor, eu diria que você tem várias opções - você pode dar uma olhada em Heartbeat - é a solução mais simples que conheço. Isto supõe que você pode mover pelo menos um IP acessível dos clientes de servidor para servidor.
Se você não puder, provavelmente deve dar uma olhada no Servidor Virtual Linux , no qual você usa um ou mais servidores como front termina. Ele foi projetado principalmente para balanceamento de carga em vez de failover, mas acho que pode ser adaptado parcialmente às suas necessidades.