Cómo Configurar ECMP en un FortiGate | Base Conocimientos JM
http://www.soportejm.com.sv/kb/index.php/article/fg-ecmp
Base Conocimientos JM Cómo Configurar ECMP en un FortiGate
N AV E G A R
Autor Natanael Calderon Cabrera March 30, 2010 | Imprimir | Agregar a favoritos
Inicio Base de Conocimientos
How to setup ECMP in FortiGates FortiOS
4.0
Modelo
Todos los modelos FortiGates
Condición
Tener al menos dos enlaces externos
Todos los artículos Glosario
ECMP (Equal-Cost Multi-Path) es un protocolo utilizado por los equipos FortiGates para hacer distribución de tráfico hacia un mismo destino (Puede ser internet o una red pribada) pero utilizando diferentes rutas o caminos. Utilizando ECMP se puede agregar diversas rutas hacia una misma red destino, asignándoles a cada una la misma distancia y la misma prioridad. En caso, de que se creen múltiples rutas hacia el mismo destino con la misma distancia pero diferente prioridad, entonces la ruta con menor prioridad sera usada. Puede darse el caso que tenga la misma prioridad pero diferente distancia; en dicho caso, la de menor distancia será usada. En caso que sean múltiples rutas hacia el mismo destino pero con diferentes distancias y diferentes prioridades, entonces siempre será usada la ruta con menor distancia, ya que la Distancia tiene precedencia sobre las prioridades. Este protocolo nos permite ademas de balancear las cargas de tráfico por diferentes enlaces, hacer redundancia de enlaces, ya que en caso de que uno falle, el sistema usará las rutas disponibles en el enlace que sí esté operando. Una vez entendido el concepto, tambien es necesario tener claro las diferentes opciones de ECMP (Cómo queremos que se comporte la distribución de tráfico sobre las rutas.) ya que el sistema utiliza algunas técnicas para hacer dicha distribución y éstas se explican a continuación:
Source Based: La técnica "Basada en la Fuente" o tambien conocida como Basada en IP Fuente (Source IP Based) permite al FortiGate balancear las sesiones entre las rutas ECMP basándose en la dirección IP fuente de las sesiones. Esta modalidad es la que trae el FortiGate configurada por defecto, por lo tanto no requiere mas configuración dentro de ECMP. Wieghted: Tambien conocida como "Basada en peso" (Weight-Based), El fortiGate distribuye la carga, basándose en el peso de las rutas ECMP, por lo tanto mas tráfico sera direccionado por la ruta de mayr peso. Donde será necesario hacer configuración del peso (Weight), para cada una de las rutas a través de la CLI Spill-Over: Este método tambien se conoce como "Basado en Uso" (Usage-Based), donde el FortiGate distribuira el tráfico entre las rutas ECMP tomando como criterio el uso de la interface. Si se selecciona este método será necesario configurar los umbrales del Spillover en las interfaces involucradas en los enlaces para los cuales se hará el balanceo por ECMP. En este caso, el FortiGate enviará todas las sesiones del ECMP por la interface con menor numero en el Spillover. Una vez alcance el valor configurado, pasará a enviar las sesiones por la siguiente Interface con menor número en Spill. Cuando el ECMP selecciona una Ruta para una session, se crea tambien un cache de rutas, para todas las sesiones con la misma IP de destino. Entonces, todas las nuevas sesiones hacia la misma IP de destino usaran la misma ruta hasta que dicha ruta se borre del cache. Estas rutas se borraran automaticamente luego de un periodo de tiempo en el que ya no se generen reciban peticiones de sesiones hacia la misma direccion IP de destino.
Buscar C AT E G O R Í A S
Allied Telesyn (0) BlueCoat (26) Dlink (2) Extreme Networks (3) FortiAnalyzer (1) Forticlient (1) FortiDB (3) FortiGates (43) FortiMails (3) FortiManager (0) FortiVoice (7) FortiWEB (0) Mitel Networks (1) Otros (4) RedLine (5) Ubuntu (14) Videovigilancia IP (0)
En la figura 1, se muestra uun esquema en donde tendremos un FortiGate con una LAN y dos interfaces recibiendo los enlaces de Internet, los cuales son independientes y con ellos haremos ECMP. Para este Lab estamos utilizando un
Wireless Switch (0)
FortiGate FG310B-US, por lo tanto configuraremos el Port1 como "Internal", el Port10 como "WAN1" y el Port9 como "WAN2" Figura 1:
1 of 13
10/13/2012 11:37 PM
Cómo Configurar ECMP en un FortiGate | Base Conocimientos JM
http://www.soportejm.com.sv/kb/index.php/article/fg-ecmp
En esta guía mostraremos los pasos para hacer las configuraciones vía GUI ademas de la CLI. NOTA: Solo se puede tener un método de ECMP configurado a la vez.
Configuración viá GUI de ECMP Basado en IP Fuente Para este caso, asumiremos que ambos enlaces de Internet tienen el mismo ancho de banda, por lo tanto queremos que pase el tráfico de forma repartida.
Paso 1: Configurando las Interfaces WAN Para la configuración de las interfaces del FortiGate entramos en: System >> Network >> Interface, donde configuraremos las IPs para cada una de las Interfaces externas. Para la WAN1 vea la Figura 2. Figura 2:
2 of 13
10/13/2012 11:37 PM
Cómo Configurar ECMP en un FortiGate | Base Conocimientos JM
http://www.soportejm.com.sv/kb/index.php/article/fg-ecmp
En la figura 3, se muestra la configuración de la WAN2. Figura 3:
3 of 13
10/13/2012 11:37 PM
Cómo Configurar ECMP en un FortiGate | Base Conocimientos JM
http://www.soportejm.com.sv/kb/index.php/article/fg-ecmp
Conifuración por CLI para las Interfaces: WAN1: config system interface edit "port10" set vdom "root" set ip 192.168.2.217 255.255.255.0 set allowaccess ping https ssh snmp http telnet set gwdetect enable set detectserver "192.168.2.1" set type physical set alias "WAN1" end WAN2: config system interface edit "port9" set vdom "root" set ip 192.168.111.217 255.255.255.0 set allowaccess ping https snmp http telnet set gwdetect enable set detectserver "192.168.111.1" set type physical set alias "WAN2" end
4 of 13
10/13/2012 11:37 PM
Cómo Configurar ECMP en un FortiGate | Base Conocimientos JM
http://www.soportejm.com.sv/kb/index.php/article/fg-ecmp
Tal como se muestra en las figuras anteriores, la configuración de las interfaces no tiene grado de dificultad configurar,. Pero se debe notar que hemos habilitado la opción de "Detect Interface Status for Gateway Load Balancing" lo que nos permite configurar un server para detectar "Detect Server", técnica que permitirá al FortiGate detectar cuando un enlace presente problemas de comunicación, de tal forma que si uno de los enlaces con los cuales estamos haciendo ECMP falla, el dispositivo enviará el tráfico por la otra interface, con lo cual ademas del balanceo de las cargas, tendremos tambien redundancia a Fallas. Se recomienda poner como Server una IP de un dispositivo remoto que sea confiable y que nunca falle, pues de lo contrario, podríamos experimentar problemas de conexiones.
Paso 2: Configurando las rutas. La creacion de las rutas estáticas las haremos desde: Router >> Static >> Static Route >> Create New. Debido a que deseamos utilizar por igual los dos enlaces de internet, ambas rutas estáticas tendran igual distancia y prioridad. LA figura 4, muestra la primera ruta creada la cual encaminará el tráfico por la interface WAN1, mientras que la figura 5, encamirá tráfico a traves de la WAN2. Figura 4:
Figura 5:
Configurando las rutas por la CLI: Ruta 1: config router static edit 1 set device "port10" set distance 10 set dst 0.0.0.0 0.0.0.0 set gateway 192.168.2.1 set priority 0 set weight 0 next end Ruta 2: config router static edit 2 set device "port9" set distance 10 set dst 0.0.0.0 0.0.0.0 set gateway 192.168.111.1 set priority 0 set weight 0 next end
Paso 3: Creación de las Políticas de Firewall. Ahora nos toca navegar en: Firewall >> Policy >> Policy >> Create New , para crear las politicas desde la LAN hacia la WAN1 y WAN2, para poder permitir tráfico a través de ambos enlaces hacia el Internet, ver figura 6 y 7. Figura 6:
5 of 13
10/13/2012 11:37 PM
Cómo Configurar ECMP en un FortiGate | Base Conocimientos JM
http://www.soportejm.com.sv/kb/index.php/article/fg-ecmp
Figura 7:
6 of 13
10/13/2012 11:37 PM
Cómo Configurar ECMP en un FortiGate | Base Conocimientos JM
http://www.soportejm.com.sv/kb/index.php/article/fg-ecmp
Con estos pasos ya tenemos enlaces configurados con ECMP, y que ademas son redundantes entre sí. Si revisamos las políticas, podremos ver que estamos pasando tráfico por ambas, y el criterio se basa en la IP fuente de usuario. Ver figura 8. Figura 8:
Ademas podremos monitorear las rutas, donde veremos que ambas tienen igual peso y prioridad en: Router >> Monitor >> Routing Monitor, tal como se muestra en la figura 9.
7 of 13
10/13/2012 11:37 PM
Cómo Configurar ECMP en un FortiGate | Base Conocimientos JM
http://www.soportejm.com.sv/kb/index.php/article/fg-ecmp
Figura 9:
Configuración viá GUI de ECMP Basado en Peso (Weight-Based) Para este método, tomando en cuenta que ya hemos realizado los pasos 1-3, ahora solo nos toca cambiar el peso de las rutas y adicionalmente cambiar el método de ECMP via CLI.
Paso 4: Cambiando el método de ECMP. Para esta modalidad será necesario cambiar el método de distribución de ECMP, de tal forma que tome como criterio el parámetro de Peso de cada una de las rutas. config system settings set v4-ecmp-mode weight-based end
Paso 5: Cambiando el Peso de las rutas. Este cambio lo podremos hacer via CLI, de la siguiente manera: Ruta 1: config router static edit 1 set device "port10" set distance 10 set dst 0.0.0.0 0.0.0.0 set gateway 192.168.2.1 set priority 0 set weight 10 next end Ruta 2: config router static edit 2 set device "port9" set distance 10 set dst 0.0.0.0 0.0.0.0 set gateway 192.168.111.1 set priority 0 set weight 20 next end Este es un escenario perfecto para el caso de tener enlaces de Internet con anchos de banda diferentes, por lo tanto, con esta configuración estamos forzando a que un tercio del tráfico pase a través del enlace conectado a la WAN1 y los otros dos tercios pasen a través del enlace conectado a la WAN2. Podemos ahora minitorear las políticas de Firewall, tal como lo hicimos en la sección anterior para ver la distribución de tráfico que ha atravesado por cada una de ellas. Ademas, si monitoreamos las rutas via CLI veremos que los Pesos de las rutas hacia el mismo destino tiene pesos diferentes. get router info routing-table static S*
0.0.0.0/0 [10/0] via 192.168.111.1, port9, [0/20] [10/0] via 192.168.2.1, port10, [0/10]
8 of 13
10/13/2012 11:37 PM
Cómo Configurar ECMP en un FortiGate | Base Conocimientos JM
http://www.soportejm.com.sv/kb/index.php/article/fg-ecmp
Por lo tanto el ECMP utilizará como primera ruta la de mayor peso. El Parámetro del Peso (weight) solo es utilizado al momento de enviar la primera sesión hacia una Ip destino. Una vez se decide por qué camino enviar el tráfico, las nuevas sesiones que vayan hacia esa misma IP serán enviadas por esa misma ruta mientras dure la tabla de cache de sesiones, tal como se explicó al inicio de esta guía.
Configuración viá GUI de ECMP Basado en Uso (Spillover) Si deseamos trabajar con el método de Spillover, antes debemos ejecutar los pasos del 1-3, con la única diferencia que en la configuración de las interfaces, hemos configurado el parámtro de Spillover, tal como lo muestra la figura 10 para la WAN1 y en la figura 11 para la WAN2.
Paso 6: Configurando el Umbral de Spillover en las Interfaces. Navegando desde System >> Network >> Interface, donde configuraremos los umbrales de Spill para cada una de las Interfaces. Figura 10:
Figura 11:
9 of 13
10/13/2012 11:37 PM
Cómo Configurar ECMP en un FortiGate | Base Conocimientos JM
http://www.soportejm.com.sv/kb/index.php/article/fg-ecmp
Paso 7: Cambiando el método de ECMP. config system settings set v4-ecmp-mode usage-based end Si navegamos en Router >> Monitor >> Routing Monitor veremos que las rutas hacia el mismo destino (en este caso, las que apuntan a la red 0.0.0.0 0.0.0.0) son idénticas en cuanto amétrica y distancia. ver figura 12. Figura 12:
Por lo tanto, el FortiGate enviará todas las sesiones a través de la ruta 1 por el gateway 192.168.2.1 y solo hasta que la interface port10 (WAN1) haya excedido el Umbral de Spillover de 128KBps pasará todas las nuevas sesiones a través de la siguiente ruta que seria por el gateway 192.168.111.1 y la interface Port9 (WAN2) A traves de la linea de comando (CLI), se puede determinar si una interface está excediendo el umbral de desbordamiento (Spillover Threshold), de la siguiente manera: diagnose netlink dstmac list dev=lo mac=00:00:00:00:00:00 rx_tcp_mss=0 tx_tcp_mss=0 overspill-threshold=0 bytes=0 over_bps=0 sampler_rate=0
10 of 13
10/13/2012 11:37 PM
Cómo Configurar ECMP en un FortiGate | Base Conocimientos JM
http://www.soportejm.com.sv/kb/index.php/article/fg-ecmp
dev=port10 mac=00:00:00:00:00:00 rx_tcp_mss=0 tx_tcp_mss=0 overspill-threshold=128000 bytes=1179 over_bps=0 sampler_rate=0 dev=port9 mac=00:00:00:00:00:00 rx_tcp_mss=0 tx_tcp_mss=0 overspill-threshold=256000 bytes=132 over_bps=0 sampler_rate=0
Nota: No debes olvidarte que en caso de utilizar ECMP, solo se puede seleccionar un Método a la vez, por lo tanto, se recomienda tener muy claro los conceptos sobre la funcionalidad del protocolo para hacer una buena elección del método a utilizar. Para conocer sobre otros protocolos de ruteo tales como: OSPF , RIP , IS-IS , BGP puede ver las guías relacionadas
Relacionados : Cómo Configurar Ruteo Estático en un FortiGate Cómo Configurar Políticas de Ruteo en un FortiGate Cómo Configurar OSPF en un FortiGate Cómo Configurar RIP en un FortiGate Cómo Configurar IS-IS en un FortiGate Cómo Configurar BGP en un FortiGate
Referencias: http://kb.fortinet.com http://docs.fortinet.com/
¿Encuentras este artículo de utilidad? Si
No
Valorar
Categoría: FortiGates Última actualización June 21, 2010 with 5582 views
11 Comentarios de Usuarios Jesus Henao April 9, 2010 10:31 am Hola, Excelente demostración del saber. Muchas gracias... Ahora bien para realizar estos procesos debo tener dos router? uno conectado en wan1 y el otro en wan2? Esa sería la unica duda de tan excelente explicación.
Natanael April 10, 2010 10:43 am Efectivamente, debido a que el ECMP me sirve para hacer Load Sharing, es necesario tener al menos 2 enlaces Externos
Infra_thor September 6, 2010 02:49 pm Muchas gracias por el tuto, esta excelente!! y complementando un poco la respuesta para jesus, de hecho no es tener "2 ROUTERS" si no mas bien "2 Enlaces Activos a Internet" es solo mejorar el un poco la respuesta. saludos ^_^
Oscar Jimenez September 15, 2010 08:11 am
11 of 13
10/13/2012 11:37 PM
Cómo Configurar ECMP en un FortiGate | Base Conocimientos JM
http://www.soportejm.com.sv/kb/index.php/article/fg-ecmp
excelente articulo, pregunta es posible que el fortigate instale dos rutas en la tabla de enrutamiento al mismo destino pero que una de ellas se configurada estaticamente y la otra sea conocida por BGP ? hice la prueba igualando la distancia administrativa pero no funciono agradezco su ayuda
Natanael October 8, 2010 02:42 pm Recuerda que el FG solo anunciará la ruta que esta activa, ademas es importante tomar en cuenta que el equipo ya trae predeterminados los valores de distancia para los diferentes tipos de rutas (estáticas, EBGP, OSPF, RIP, etc). y para que ambas rutas puedan pasar trafico de forma simultaneo deben de coincidir tanto el Destino, como la distancia, la prioridad y peso. Te recomiendo que leas este otro tutorial http://www.soportejm.com.sv/kb/index.php/article /fg-static-routing
Benjamin October 27, 2010 04:19 pm Hola Natanael, agradezco el tiempo que tomaste para poder explicar detalladamente este procedimiento. Tengo una duda, conecte 3 enlaces adsl de diferentes velocidades a un mismo VDOM en 3 interfases fisicas del fortinet 80c, usando ECMP Basado en Peso el en el router monitor solo me deja ver los 2 primeros enlaces, checo las vitacoras y efectivamente hay trafico por los dos enlaces, aunque puse el tercer enlace a la misma distancia y prioridad que los otros dos pero con un peso mayor y la ruta estatica correspondiente, asi como su reglas en el fw, aun asi no hay trafico por el tercer enlace ni aparece en el route monitor aunque si esta dada manualmente como una ruta estatica. Alguna sugerencia? Agradezco tu apoyo.
Natanael October 29, 2010 02:22 pm Has probado hacer ECMP basado en IP Fuente, para ver si en ese caso te saca tráfico por las 3 rutas ??? En caso de seguir en MODO Weight podrías cambiar el peso de la ruta para el tercer enlace, para que tenga la preferencia y ver si en ese momento sí te saca tráfico por ahi...
berna December 2, 2011 02:26 pm excelente manual Natanael Calderon Cabrera soy novato en esto, tengo una duda tengo dos infintum uno de 2 y uno de 4 y quiero sumarlos para que sean 6 megas tienes un manual para la configuracion o donde consigo información gracias....
Natanael December 2, 2011 03:38 pm Quieres manual para configurar los Infinitum o el FG ?
berna December 6, 2011 09:05 am
12 of 13
10/13/2012 11:37 PM
Cómo Configurar ECMP en un FortiGate | Base Conocimientos JM
http://www.soportejm.com.sv/kb/index.php/article/fg-ecmp
el fortinet, es que lo configuro por CLI y me aparece que no tiene el comando set gwdetect enable y en el forti por wen no me aparece el VRRP como lo puedo agregar o configurar, sin mas por el momento te mando un coordial saludo, Gracias
berna December 6, 2011 11:05 am el fortinet, es que lo configuro por CLI y me aparece que no tiene el comando set gwdetect enable y en el forti por wen no me aparece el VRRP como lo puedo agregar o configurar, sin mas por el momento te mando un coordial saludo, Gracias
Nuestro FORO de NetWorking, registrese aquí: http://www.soportejm.com.sv/foro/ Nombre Correo Electrónico
Guardar
13 of 13
10/13/2012 11:37 PM