Procurei uma solução para o Teamspeak no passado. Se bem me lembro, ts3dns pode ser útil para você. Não me lembro se ele fornece a capacidade de adicionar 2 registros (principal, backup), mas você pode ter um terceiro servidor verificando a disponibilidade de seus servidores e definir o registro do DNS para o servidor correto.
Na verdade, você precisa de um servidor DNS com TTL muito baixo. Isso poderia ser ts3dns, serviços sem o ip ou até mesmo seu próprio servidor DNS personalizado, que também verificaria a disponibilidade e responderia de acordo.
Lembre-se de que, como o Teamspeak não oferece suporte ao balanceamento de carga, você não pode usar a configuração de DNS round-robin porque as pessoas acabarão conectadas em servidores diferentes. Pela mesma razão, o verificador do servidor não deve alterar os registros para o servidor principal depois que a conexão for resolvida. Se você quiser fazer isso, você também deve se conectar ao servidor TS secundário e reinicializá-lo para que todos os clientes sejam reconectados ao primário.
Infelizmente, como eu precisava de algo mais fácil do que isso (sem precisar de um terceiro servidor ou serviços de DNS externos), acabei configurando dois subdomínios (ts1.domain.com, ts2.domain.com) para meu clã e deixei todos saiba que, se o servidor principal ficar inativo, ele deverá usar o segundo. Eles também usam a capacidade de se conectar em vários servidores para que eles saibam, quando o principal estiver on-line novamente.