Facebookfacebook Twitter Emailmail Imprimirprint
Viernes 19 de abril de 2024
Santoral:
Ema
Otros:
Día Internacional de la Bicicleta
Semana:
16
Día año:
110/366 (30%)
U.F.:
Sin información
IPC:
Sin información
Dolar:
Sin información
Euro:
Sin información
Bitcoin:
U$ {bitcoin}
mindicador.cl

Mikrotik: Balanceo doble WAN con Rutas Recursivas

Agregar ancho de banda y brindar redundancia ante falla

Introducción

El Balanceo de carga consiste en distribuir paquetes IP entre diferentes enlaces. Si se cuenta con IPs propias (Registradas en LACNIC por ejemplo), el balanceo puede ser por paquetes, lo que es más simple y presenta excelentes resultados.

En instalaciones Hogar o PYME, donde se cuenta con una única IP por enlace entregada por el ISP, y nuestros usuarios utilizan NAT, se puede realizar un balanceo de conexiones, de manera de asegurar la concordancia del IP de origen con la WAN utilizada.

Una de las potencialidades con que cuentan los Router Mikrotik es la opción Multi-WAN, lo que significa que podemos conectarnos a más de una conexión WAN, incluso con proveedores de servicio diferentes, con lo que logramos:

Configuración

Escenario

Se considera un router Mikrotik con 2 enlaces asimétricos 100/20 Mbps, lo que puede ser tomado como base para aumentar la cantidad de enlaces según lo que soporte el hardware, con el cuidado que la sumatoria de los enlaces WAN no deberá superar la velocidad de la puerta LAN. El hecho que los enlaces WAN tengan la misma velocidad nos brinda una configuración más simple, evitando ponderar la distribución.

Se considera una instalación doméstica o de empresa pequeña, con un una utilización de Internet de navegación simple.

Marcado de conexiones

Para comenzar este ejercicio, debemos dirigirnos a la opción de /ip firewall mangle, que es donde se desarrollará la mayoría de configuraciones para el balanceo y agregado de velocidad de los enlaces.

Luego de, para empezar a crear las reglas, solo clickeamos en el botón de agregar, que está simbolizado por un de color azul en la parte superior izquierda de la ventana.

Agregar regla Mangle

Se deben crear ‘N’ cantidad de reglas de prerouting, dependiendo de la cantidad de enlaces WAN (2 para nuestro ejemplo) y deben ser parametrizadas como:

Agregar regla Mangle

Clasificación de conexiones: "PCC"

Continuamos con la aplicación del criterio de clasificación de las conexiones en la pestaña Advanced

Agregar regla Mangle

En la pestaña "Extra" se configura que el tipo de tráfico a participar en la regla sea de tipo “LOCAL INVERSO”, lo que significa que solo el tráfico que, explícitamente NO sea destinado a direcciones locales del router, serán tomadas en cuenta. Esto será para evitar que se apliquen éstas reglas de balanceo a nuestro tráfico interno de nuestra red.

Agregar regla Mangle

Marcado de Conexiones

En la pestaña de “ACTION”, se selecciona el tipo de acción que realizará la regla de Mangle.

Agregar regla Mangle

Repetimos el proceso de creación de reglas para las siguientes líneas, Como una forma de agilizar, se puede clickear el botón “Copy” para realizar una copia de la regla y solo cambiar los parámetros de nombre de marca y la interfaz de salida de internet a utilizar.

Marcado de Enrutamiento

El siguiente proceso es la creación de una regla de prerouting que realice la marca de Routing para cada paquete con la marca de conexión correspondiente definida en la fase anterior.

En la pestaña “GENERAL” se configura la interfaz o segmento a usar y se indica cuál de las marcas se utilizará.

Habilitamos la opción “Connection Mark:” y seleccionamos la marca creada previamente.

Agregar regla Mangle

En la pestaña “ACTION”, seleccionamos el tipo de acción a realizar:

En esta regla, debe deshabilitarse la opción de “Passthrough dado que no se requiere la aplicación de más criterios sobre los paquetes.
Agregar regla Mangle

Repetir el proceso para las siguientes interfaces a participar en el balanceo:

Luego de haber terminado de crear las 4 reglas (2 reglas para cada WAN y cada acción), debe quedar algo parecido a esto:

Agregar regla Mangle

En caso de tener una lista de direcciones que deba participar o evitarse en el tráfico del balanceo, se crean en la pestaña de “/ip firewall address list”, y se selecciona para su uso en la pestaña “Advanced”, dentro de la regla de Mangle.

Agregar regla Mangle

Rutas Base de monitoreo

Luego de creadas las políticas de marcado de conexión y enrutado, se deben crear las rutas por defecto que utilizarán dichas marcas. Y desde este punto emplearemos rutas Recursivas. La motivación detrás de esto, reside en que en la mayoría de los casos estamos detrás de un equipo del proveedor que realiza la función de NAT, y el monitoreo del servicio, no basta validar el estado del link o del siguiente salto, puesto que nunca comprobaremos si realmente perdimos conexión a la nube por alguna falla del lado del ISP. Para esto, creamos monitores de conexión apuntando a lugares fijos en internet que pueden ser servicios DNS que siempre estarán disponibles. (Como mejores prácticas, se recomienda no monitorear las mismas direcciones que se utilicen como servicios DNS del router.

Para este proceso debemos dirigirnos a la opción /ip routes

Rutas Paso 1

Empezaremos por crear rutas estáticas que servirán como ‘monitores’ de internet por las interfaces WAN seleccionadas.

Rutas Paso 2, ruta base

Rutas Recursivas

Luego de creadas las rutas estáticas de monitoreo, se procede a crear rutas por defecto, que apuntarán a los ‘monitores’, en vez de utilizar las direcciones IP de los default-gateways de los enlaces WAN.

Habilitaremos la opción “Routing Mark:” y seleccionamos la marca de enrutamiento a utilizar por la ruta deseada (to_ISP1) y repetimos el proceso para las rutas por defecto de las demás interfaces a participar en el balanceo (to_ISP2 ...). Debemos recordar que las marcas a utilizar deben corresponder creadas en las reglas de mangle, para así evitar fallos en la configuración.

Rutas Paso 4, ruta recursiva
Si todo está configurado apropiadamente, deberemos recibir el mensaje de
recursive via ‘default-gateway IP’ + interfaz WAN”.

Rutas Recursivas Failover

Luego de creadas las rutas por defecto con sus marcas, y para fines de failover, se copian las mismas rutas, especificando la distancia con valor 2 e invertiremos las marcas de enrutamiento. Esto para el caso de falla en alguna WAN, se evite que por las políticas de mangle, exista tráfico direccionado con una marca cuya gateway principal falla y se convierta en un agujero negro de tráfico. Ésta gateway se activa automáticamente al detectar una falla (Check Gateway: ping) de la ruta base de monitoreo primaria, evitando la pérdida total de conectividad.

Rutas Paso 4, ruta failover

La caida de un enlace produce la pérdida de sus conexiones activas, las nuevas conexiones se generan con la IP de salida de la interface de respaldo, lo que puede producir un error en ciertos sistemas (Bancos, Comercio, VPN, Juegos, otros), en algunos casos puede ser necesario una reconexión a dicho servicio.

Al reestablecerse el servicio WAN, las nuevas sesiones utilizarán la IP de dicha WAN como origen, por lo que nuevamente puede producir rechazo por parte del servidor al detectar a un usuario desde 2 IP distintas.

Al final, debería obtenerse una ventana de rutas similar a esta:

Rutas Paso 5, Tabla de Rutas

NAT

No debemos olvidar que para cada enlace que deseemos utilizar como conectividad WAN, debe realizarse una regla de NAT “masquerade” especificando la interfaz de salida del mismo:

Rutas Paso 6, NAT
Rutas Paso 7, NAT

Verificación de Tráfico

Si todo funciona como debería, las pruebas de tráfico deberían agregar el ancho de banda de ambas interfaces y sumarlo en un valor total.

En el caso de este laboratorio, se utilizaron dos líneas de 100/20Mbps, sumando un promedio teórico de 200/40Mpbs.

Validacion 01
Validacion 02
Validacion 03
Escrito por: Ismael Columna Montero, Editado por Luis de la Barra, 07/02/2020
Si tiene interés por alguno de éstos servicios u otro similar, por favor llene el formulario de contacto

Generado por Sistema y almacenado en cache

Wyzer
Luis Hernán de la Barra
Teléfono:   +56995451689
WhatsApp:   +56995451689
E-Mail:info@wyzer.cl
Web:www.wyzer.cl