Hoje veremos um exemplo de scripts de failover para Mikrotik utilizando a ferramenta Netwatch e monitorando mais de 01 host. Neste exemplo, partiremos do princípio que existem 02 links de internet (principal e backup). Iremos monitorar 03 endereços IP: 208.67.222.222, 208.67.220.220 e 1.0.0.1. É importante utilizar IPs confiáveis e que não estejam sendo utilizados em sua rede, pois, em caso de falha no link principal, estes endereços ficarão inacessíveis. 1 – Configurar as rotas default (para o link principal e backup) e adicionar os comentários:
  • Link principal: /ip route add dst-address=0.0.0.0/0 gateway=192.168.100.1 distance=1 comment=ISP1
  • Link backup: /ip route add dst-address=0.0.0.0/0 gateway=192.168.200.1 distance=10 comment=ISP2
2 – Configurar as rotas de monitoramento do link principal:
  • /ip route add dst-address=208.67.222.222 gateway=192.168.100.1 distance=1 comment=Monitor1
  • /ip route add dst-address=208.67.220.220 gateway=192.168.100.1 distance=1 comment=Monitor2
  • /ip route add dst-address=1.0.0.1 gateway=192.168.100.1 distance=1 comment=Monitor3
3 – Configurar os scripts de up/down: 3.1 – Script “linkdown”:
  • /system script add name=linkdown policy=read,write,test,reboot source=”:if (([/ping 208.67.220.220 interval=5 count=4] =0) && ([/ping 1.0.0.1 interval=5 count=4] =0)) do={/ip route set [/ip route find where comment=ISP1] disabled=yes; /ip firewall connection tracking set enabled=no; :delay 5s; /ip firewall connection tracking set enabled=yes;/system script run 1} else={:if ([/ping 208.67.222.222 interval=5 count=4] =0) do={/system script run 0}}”
3.2 – Script “linkup”:
  • /system script add name=linkup policy=read,write,test,reboot source=”:if (([/ping 208.67.220.220 interval=5 count=4] >0) || ([/ping 208.67.222.222 interval=5 count=4] >0) || ([/ping 1.0.0.1 interval=5 count=4] >0)) do={/ip route set [/ip route find where comment=ISP1] disabled=no; /ip firewall connection tracking set enabled=no; :delay 5s; /ip firewall connection tracking set enabled=yes} else={/system script run 1}”
4 – Configurar o Netwatch para monitorar o endereço IP 208.67.222.222:
  • /tool netwatch add host=208.67.222.222 comment=Netwatch_Monitor down-script=linkdown up-script=linkup
Com as configurações acima, o Netwatch irá monitorar o endereço IP 208.67.222.222. Caso este IP pare de responder, o script “linkdown” será acionado e a rota default para o link principal só será desativada se os endereços IP 208.67.220.220 e 1.0.0.1 também não responderem ao ping. Do contrário, o script permanecerá rodando. Caso os endereços IP 208.67.220.220 e 1.0.0.1 também não respondam ao ping, a rota default para o link principal será desativada, o link backup assumirá todo o tráfego e o script “linkup” será executado e permanecerá rodando até que um dos 03 endereços IP voltem a responder ao ping. A partir do momento em que um dos endereços IP volte a responder ao ping, a rota default para o link principal será reativada e o tráfego será comutado novamente (para o link principal).
Mikrotik – Scripts de Failover usando Netwatch e monitorando múltiplos Hosts
Tagged on:         
Open chat