
Enviado em 08/06/2015 - 14:09h
Boa tarde galera, venho compartilhar um script que fiz.
#!/bin/bash
# FAILOVER PARA FIREWALL QUE SEJA GW PADRAO DA REDE - 03 ETHs
# CONSULTA ROTA PADRAO E ALTERA CASO ESTEJA FORA DO AR
# POR BRUNO KAMMERS
### GATEWAY DISPONIVEIS - GW1 LINK PRINCIPAL - ETH1 | GW2 LINK SECUNDARIO - ETH2
GW1=AAA.AAA.AAA.AAA # Altere para o GW do seu link principal
GW2=BBB.BBB.BBB.BBB # Altere para o GW do seu link secundario
### CONSULTA GW DEFAULT
ROTA=`route -n | tail -n1 | awk '{print $2}'`
### PINGA NO IP DO ROUTER DA OPERADORA - GW DO SEU LINK PRINCIPAL
RPING=`ping -c1 $GW1 > /dev/null ; echo $?`
### FIREWALL
FWGW1="opt/firewall_eth1.sh" # Altere para o path (sem o "/" inicial) do seu FW principal - ETH1
FWGW2="opt/firewall_eth2.sh" # Altere para o path (sem o "/" inicial) do seu FW secundario - ETH2
########## INICIO SCRIPT - NAO ALTERAR NADA DAQUI PRA BAIXO ##########
#
############# A NAO SER QUE SAIBA O QUE ESTA FAZENDO... ##############
if [[ "$RPING" -eq 0 && "$ROTA" = "$GW1" ]]
then
echo "ROTA DEFAULT Gw1 FUNCIONANDO..."
exit
else
echo "GW1 FORA DO AR - ALTERANDO ROTA PARA GW2..."
ip route replace default via $GW2
sh /$FWGW2 2>&1 /dev/null
if [[ "$RPING" -eq 0 && "$ROTA" != "$GW1" ]]
then
echo "GW1 VOLTOU - RETORNANDO A ROTA PARA GW1..."
ip route replace default via $GW1
sh /$FWGW1 2>&1 /dev/null
else
echo "GW1 AINDA FORA DO AR - MANTENDO A ROTA GW2..."
exit
fi
fi
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Como instalar , particionar, formatar e montar um HD adicional no Linux?
Como automatizar sua instalação do Ubuntu para desenvolvimento de software.
Consertando o áudio com estalos e interrupções no Pipewire
Servidor Ubuntu 24.04 HD 500 não tenho espaço na \home\adminis... (3)
Dá para criar um bom jogo usando a linguagem de programação C? (0)
E como programar um sistema operacional inspirado no próprio linux usa... (3)
Como programar um sistema de controle para distribuições linux em c? ... (4)









