[Dica] Alerta sonoro quando da queda do gateway principal



  • Bom dia a todos.

    Tive uma necessidade para a qual não encontrei tópico aqui no fórum e resolvi compartilhar com vocês.

    Eu tenho um link dedicado via rádio. O serviço é bem bom, mas vez ou outra ele cai e eu fico sabendo só quando os usuários me ligam pra reclamar que a internet está lenta (failover com outro link de Speedy). Eu quis fazer o servidor apitar quando tivesse problemas com o gateway principal…

    Aqui eu não consigo operar com grupos de gateway. Sei lá por que cargas d'água ele simplesmente ignora lá e joga a rota sempre pelo primeiro link e não troca quando dá falha no principal. Aí eu ativei o Default gateway switching dentro de System > Advanced > Miscellaneous. Aí o pfSense troca sozinho o gateway default e ajusta a rota. Como meus links são de operadoras diferentes e têm os dois IP fixo, meu gateway é fixo. Daí eu fiz um script que checa se o gateway default é o principal e, se não for, toca uma "sirene" no servidor. Coloquei o script pra rodar no cron (usei o pacote cron pra configurar) de 1 em 1 minuto e zaz!

    Segue o código abaixo. Substitua o XXX.XXX.XXX.XXX pelo IP do seu gateway. Se os colegas tiverem sugestão de melhoria, aceito de bom grado. Minha versão do pfSense é a 2.4.2_1.

    #!/bin/bash
    
    if [ "$(netstat -rn | grep default | grep XXX.XXX.XXX.XXX)" == "" ]; then
            echo "SO4L250>L10.GDGDGDGDGDGDGDGDG" > /dev/speaker
            exit 1
    fi
    echo "SO4L250>L50.C" > /dev/speaker
    exit 0
    

    Esse arquivo eu salvei como /var/cron/gw.sh do servidor e dei um chmod 777 nele. No cron, a linha de comando é sh /var/cron/gw.sh.

    Se quiser testar só a sirene pra ver, coloque no console (uso o PuTTY aqui) a seguinte linha:

    echo "SO4L250>L10.GDGDGDGDGDGDGDGDG" > /dev/speaker
    

    Segue print da minha configuração do cron. Espero que ajude alguém!



  • Porque tu não usa o uptimerobot para isso? Ele avisa via mensagem no seu celular, email de qualquer lugar que você esteja.



  • Tudo bem que o objetivo principal é verificar se o link caiu mas com o script eu também consigo saber (estando aqui, claro) quando ocorre uma falha no gateway switching, em casos que o link principal cai, volta e o pfSense não faz o switch do backup pro principal.

    Em tempo, eu não conhecia esse uptimerobot… vou implementar. Obrigado!


Log in to reply