Simple Failover entre dos proveedores en Mikrotik

Publicado por D3M0N, 17 de Marzo de 2013, 09:46:07 PM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

D3M0N


Failover (Conmutación por error) cuando un enlace deja de funcionar por cualquier motivo y automáticamente cambia al enlace de backup o redundancia para seguir funcionando.

En este caso tendríamos dos proveedores de servicio (Por ejemplo Arnet+Fibertel), y por un X motivo el primer servicio deja de funcionar, automáticamente se redireccionara todo al servicio secundario o backup.

Configuración Funcional a partir de Mikrotik RouterOS v3.30 (Versión Actual v5.24)

Paso a Paso:

Para iniciar con la configuración correspondiente vamos a primero crear reglas de salidas de Internet en IP ► Firewall ► NAT, configuraremos las interfaces correspondientes con las direcciones IP correspondientes.

Código: php
/ip firewall nat 
add chain=srcnat out-interface="INTERFACE DEL PROVEEDOR PRINCIPAL" action=masquerade comment="Internet - Proveedor Principal"
add chain=srcnat out-interface="INTERFACE DEL PROVEEDOR SECUNDARIO" action=masquerade comment="Internet - Proveedor Secundario (Backup)"


Luego podemos por ejemplo llevar un conteo de las caídas de conexión con la opción de enviar un mail si se encuentra la misma (Mails de Alerta), configuración para:

Hotmail:

Código: php
/tool e-mail 
set server=65.55.96.11 username="MAIL HOTMAIL" password="CONTRASEÑA" from=<MIKROTIK>


Gmail:

Código: php
/tool e-mail 
set server=74.125.134.108 username="MAIL GMAIL" password="CONTRASEÑA" from=<MIKROTIK>


Luego continuaremos creando una serie de script, vamos a ir a System ► Scripts ► "+"

Name= ISP1-UP
Policy= read,write,policy,test
Source=
Código: php
/ip firewall nat set [find comment="Internet - ISP1"] disabled=no 
/ip firewall nat set [find comment="Internet - ISP2"] disabled yes
: log info "::::::::::::::: TRAFICO SALIENDO POR PROVEEDOR PRINCIPAL 1 :::::::::::::::"


Name= ISP2-UP
Policy= read,write,policy,test
Source=
Código: php
/ip firewall nat set [find comment="Internet - ISP1"] disabled=yes 
/ip firewall nat set [find comment="Internet - ISP2"] disabled=no
: log info "::::::::::::::: TRAFICO SALIENDO POR PROVEEDOR SECUNDARIO :::::::::::::::"


Name= ISP1-DOWN
Policy= read,write,policy,test
Source=
Código: php
/ip firewall nat set [find comment="Internet - ISP1"] disabled=yes 
/ip firewall nat set [find comment="Internet - ISP2"] disabled=no
: log info "::::::::::::::: TRAFICO SALIENDO POR PROVEEDOR SECUNDARIO, PROVEEDOR PRIMARIO FUERA DE SERVICIO :::::::::::::::"
/tool netwatch set [find comment="SALIDA ISP1"] disabled=yes
/tool netwatch set [find comment="SALIDA ISP2"] disabled=no
/tool e-mail send to="DIRECCION DE MAIL" subject="Proveedor 1 Fuera de Servicio" body="Proveedor principal dejo de funcionar"
:log info "::::::::::::::: ALERTA ENVIADA :::::::::::::::"


Name= ISP2-DOWN
Policy= read,write,policy,test
Source=
Código: php
/ip firewall nat set [find comment="Internet - ISP1"] disabled=no 
/ip firewall nat set [find comment="Internet - ISP2"] disabled=yes
: log info "::::::::::::::: TRAFICO SALIENDO POR PROVEEDOR PRINCIPAL, PROVEEDOR SECUNDARIO FUERA DE SERVICIO :::::::::::::::"
/tool netwatch set [find comment="SALIDA ISP2"] disabled=yes
/tool netwatch set [find comment="SALIDA ISP1"] disabled=no
/tool e-mail send to="DIRECCION DE MAIL" subject="Proveedor 2 Fuera de Servicio" body="Proveedor 2 Dejo de funcionar"
:log info "::::::::::::::: ALERTA ENVIADA :::::::::::::::"


Luego para terminar creamos las reglas de Netwatch:

Código: php
/tool netwatch 
add comment="SALIDA ISP1" host=74.125.47.104 down-script="ISP1-DOWN" up-script="ISP1-UP"
add comment="SALIDA ISP2" host=98.139.183.24 down-script="ISP2-DOWN" up-script="ISP2-UP"