MANUAL: Mikrotik, túneles EoIP: Cómo conectar dos sedes (site-to-site)

Introducción
Como ya veníamos hablando en otro post similar, hoy nos toca volver a retomar el tema de los túneles EoIP, pero esta vez para establecer una conexión site-to-site. La idea es usar el mismo tipo de túneles EoIP, pero esta vez para enlazar dos sedes en capa 3. La idea es que cada sede tenga un segmento de IP distinto, y que ambos routers estén ejerciendo de routers en sus respectivos condominios, y que nosotros simplemente puenteemos esas dos redes, para que puedan verse entre sí.

El propósito
En este caso el propósito es ligeramente distinto. Si antes pretendíamos llevarnos nuestra conexión de casa a un sitio remoto, ahora lo que tratamos es de tirar un cable ficticio entre dos sedes. Es decir, usar internet como si fuera un puente ethernet entre dos puntos A y B. Ambos routers manejarán sus propias interfaces y sus propios segmentos de red independientes, pero tendrán información de qué ruta tomar si quieren llegar a la red que monta su homólogo y a los equipos conectados a ella.

Equipos
Al igual que en el anterior post, vamos a usar los mismos equipos. Una routerboard hEX-S (RB760iGS) y un hAP mini. Aunque, obviamente, si vuestros equipos son más grandes, mejor soportarán el tráfico del túnel (el propósito del mío es puramente didáctico). Si vais a montar esto a nivel casero, una RB750 ya soporta encriptación por hardware y puede ser un buen equipo a considerar para establecer un túnel perpetuo entre dos sedes.

Manos a la obra
Como el resto ya está explicado en el otro post, pasamos directos a la configuración. En este caso, la configuración de ambos routers será idéntica, y lo único que cambiará entre la configuración de un equipo y otro serán dos cosas: el segmento de red que maneja cada equipo, y la direcciones remotas de los túneles. Otra cosa que cambiará es que, en este caso, las interfaces EoIP no formarán parte de ningún bridge, sino que serán independientes, y ambos routers tendrán que aceptar el tráfico GRE del otro extremo. Sin más, pasamos a la configuración:

Para el ejemplo vamos a usar estos datos:
  • Router A) Router en la sede A:
    • dominio: ddns serialA.mynetname.net.
    • dirección del túnel: 172.168.1.1/30
    • dirección de su LAN local: 192.168.88.1/24
  • Router B) Router en la sede B:
    • dominio: ddns serialB.mynetname.net
    • dirección del túnel: 172.168.1.2/30
    • dirección de su LAN local: 192.168.77.1/24
Parto de la configuración por defecto que monta el quick set en ambos routers, definiendo como red local la LAN detallada anteriormente. Ambos navegan y tienen su nat y reglas de firewall por defecto. Comprobamos que podemos resolver con un ping el dominio cloud de cada router. Si todo está OK, procedemos.
Como la configuración de ambos routers es idéntica, salvo los datos del otro extremo, me centro en uno de ellos, y para el segundo simplemente tenéis que cambiar el órden de los las IP's.

Configuración en un extremo, ejemplo, Router A)
  • Creamos una lista en el firewall, para resolver dinámicamente la IP del otro extremo. De esta manera, en el siguiente paso, sólo aceptaremos tráfico GRE de ese origen.
    • /ip firewall address-list add address=serialB.sn.mynetname.net list=other-end-public-ip
  • Damos de alta una regla de firewall para permitir el tráfico GRE en el chain de input. La colocamos delante de la regla por defecto que permite el ping a nuestro equipo, justo después del drop invalid:
    • /ip firewall filter add action=accept chain=input comment="Accept GRE tunnel traffic" protocol=gre src-address-list=other-end-public-ip place-before [ find where comment="defconf: accept ICMP" ]
  • Creamos en túnel, apuntando al dominio cloud del otro router, que previamente hemos activado en IP -> Cloud. Para evitar fragmentación, seteamos el MTU a 1500 y seleccionamos un número de túnel, idéntico al que vayamos a usar en el otro lado, en mi caso, el 0:
    • /interface eoip add name=tunnel-to-other-end remote-address=serialB.sn.mynetname.net tunnel-id=0 mtu=1500
  • Asignamos una IP a la interfaz recién creada del túnel:
    • /ip address add address=172.168.1.1/30 interface=tunnel-to-other-end
  • Creamos una ruta estática para encontrar la LAN del otro extremo, a través de túnel. Como gateway, la IP del túnel en el otro extremo:
    • /ip route add dst-address=192.168.77.0/24 gateway=172.168.1.2
Configuración en el otro extremo, directos al grano, en el Router B)
Código:
/ip firewall address-list add address=serialA.sn.mynetname.net list=other-end-public-ip
/ip firewall filter add action=accept chain=input comment="Accept GRE tunnel traffic" protocol=gre src-address-list=other-end-public-ip place-before [ find where comment="defconf: accept ICMP" ]
/interface eoip add name=tunnel-to-other-end remote-address=serialA.sn.mynetname.net tunnel-id=0 mtu=1500
/ip address add address=172.168.1.2/30 interface=tunnel-to-other-end
/ip route add dst-address=192.168.88.0/24 gateway=172.168.1.1

En este momento, procedemos a hacer ping desde una red a otra, y deberíamos poder resolverlas. Si necesitáis un tráfico más restrictivo, jugad con las reglas del firewall para aceptar o rechazar el tráfico de algún cliente en particular, dentro del túnel.

Al igual que en el otro post, podemos securizar el túnel añadiendo un secreto de IPSec, idéntico en ambos extremos del túnel, en la definición de la interfaz del propio túnel. A partir del momento en el que añadamos el secreto, el tráfico del túnel se transmitirá encriptado
Código:
/interface eoip set numbers=0 ipsec-secret="MySuperSecret" allow-fast-path=no

Espero os sirva de ayuda, por si en algún momento queréis unir dos sitios remotos, usando routers mikrotik y su protocolo EoIP.

Saludos!
 
Última edición:
@pokoyo
Muchas gracias por tu esfuerzo y dedicación a la hora de hacer estos estupendos manuales.
Muy didáctico todo.
Y te recuerdo que te quedan pendientes los manuales de puesta en marcha para los novatos (Movistar/O2, Pepephone,etc), así ponemos el camino más fácil para que más gente se acerque a los equipos Mikrotik. Sin presión. :)
Saludos.
 
@pokoyo
Muchas gracias por tu esfuerzo y dedicación a la hora de hacer estos estupendos manuales.
Muy didáctico todo.
Y te recuerdo que te quedan pendientes los manuales de puesta en marcha para los novatos (Movistar/O2, Pepephone,etc), así ponemos el camino más fácil para que más gente se acerque a los equipos Mikrotik. Sin presión. :)
Saludos.

Eso está hecho. Tirando de quick set, el resto de la configuración es coser y cantar. La de Pepephone y Movistar/O2, cuenta con ellas. El resto, tendremos que tirar de gente que tenga estos equipos y otros operadores, ya me gustaría cubrirlos todos!

Saludos
 
@pokoyo gracias por tu trabajo, el día que lo entienda va a ser la leche, soy un cenutrio pero con ganas de aprender.

tremendo curro!!!
 
@pokoyo gracias por tu trabajo, el día que lo entienda va a ser la leche, soy un cenutrio pero con ganas de aprender.

tremendo curro!!!
Si te puedo aclarar algo, dime. Sino, tira de youtube que tienes varios videos que te lo explican conceptualmente. Básicamente, unir A con B y que ambas redes se vean.

Saludos!
 
Buenos días, para este tipo de tunel no vale una ip dinámica de "no-IP" ¿verdad? tenía intención de montar un GRE entre Mikrotik y Draytek para mejorar la velocidad de la conexión (no paso de 9mb/s con iPsec) pero me da que voy a tener que cambiar de router.

Salu2!! ;)
 
Buenos días, para este tipo de tunel no vale una ip dinámica de "no-IP" ¿verdad? tenía intención de montar un GRE entre Mikrotik y Draytek para mejorar la velocidad de la conexión (no paso de 9mb/s con iPsec) pero me da que voy a tener que cambiar de router.

Salu2!! ;)
Sí, si vale. Mira lo que soporta la interfaz, un bonito nombre de dominio. Y como mikrotik te regala uno con cada routerboard, no tienes más que activar el IP -> Cloud para tenerlo funcionando.

1607776063500.png


Y, si ambos son mikrotik, y además soportan aceleración hardware para IPSec, eso vuela.

Saludos!
 
Wowwwww acabo de probarlo y menuda diferencia de velocidad GRE frente a un tunel ipsec. Supongo que el cifrado por leve que sea, requiere procesado y penaliza la velocidad. El problema es que en el router Draytek no deja meter mas que números en la IP, así que estoy jodido.
Toca valorar el cambiar de router...

Salu2!! ;)
 
Si, además EoIP es propietario, así que sólo lo vas a poder usar entre dos mikrotiks.

Saludos!
 
Y los túneles EoIP se pueden habilitar o deshabilitar a conveniencia, según se necesite o no? Cómo cualquier otro interfaz.
Gracias.
 
Si, con deshabilitar la interface en uno de los lados es suficiente.
AHora pensando en rizar el rizo... ¿Se pueden unir 3 sedes y que entre todas haya comunicación?

Salu2!! ;)
 
Si, con deshabilitar la interface en uno de los lados es suficiente.
AHora pensando en rizar el rizo... ¿Se pueden unir 3 sedes y que entre todas haya comunicación?

Salu2!! ;)
Sí, claro. Con dos túneles por sede.

Saludos!
 
Y los túneles EoIP se pueden habilitar o deshabilitar a conveniencia, según se necesite o no? Cómo cualquier otro interfaz.
Gracias.
Si, yo tengo uno en casa que de normal está deshabilitado, y solo lo activo cuando viajo, para llevarme la red a cuesta.

Eso sí, conviene apagarlo en ambos lados, sobre todo su usas IPSec, porque el tunes tratará siempre de levantar y te engorrinará los logs con las negociaciones infructuosas de las claves IPSec.

Son un inventazo los túneles EoIP, y el rendimiento es muy bueno. Con el setup que describo en el otro manual, el de llevarte la red de casa a cuestas, si la conexión a la que pinchas el router roaming (el tonto) es medio buena, no te enteras ni que el dhcp te lo están asignando en remoto, vía internet.

Saludos!
 
Damos de alta una regla de firewall para permitir el tráfico GRE en el chain de input. La colocamos delante de la regla por defecto que permite el ping a nuestro equipo, justo después del drop invalid:
  • /ip firewall filter add action=accept chain=input comment="Accept GRE tunnel traffic" protocol=gre src-address-list=other-end-public-ip place-before [ find where comment="defconf: accept ICMP" ]
Estaba haciendo pruebas con la confi por defecto + quick "Home dual AP" y si esta regla se pone exactamente en ese lugar, se bloquea todo el trafico del EoIP. Si se pone por delante del "drop invalid" funciona perfecto, por lo que probé dos cosas que si funcionaron, poner delante o dejar como está, pero añadir al "dorp invalid" que ignore el protocolo 47.

Salu2!! ;)
 
Esa regla no es necesaria. El tráfico GRE entra en el router sin ella. Me di cuenta después de mucho jugar con los túneles
¿No está corregido en este manual? Me lo apunto para hacerlo.

Por otro lado, si los comentarios del quick set no han cambiado, la instrucción del place-before junto con el find del comentario de la regla del ICMP, deberían situar esa regla delante del drop invalid.

Saludos!
 
Hola
Por un lado tengo un hex S configurado y funcionando correctamente con Movistar y TV y 2 VPNs (Todo funciona Ok)
Por otro lado tengo un router wAP R (LTE+WIFI+1 Puerto). Estoy intentado llavar la TV del hex S al wAP R
Lo primero que he hecho es poner en funcionamiento el wAP R con la configuración por defecto, he activado los datos moviles y la WIFI y todo OK, me puedo conectar por wifi al router y navegar sin problemas
He Creado el Tunel EoIP entre los 2 Routers y estás running
He Añadido las Interfaces EoIP al bridge en los dos lados
Pero no se comunican
El hex S tiene la IP 192.168.15.1 y el wAP R la 192.168.15.2
En el firewall he permito el trafico gre en los 2 Routers
¿Hay que hacer algo más?
 
Si te quieres llevar la TV, te diría que tires por el otro manual, no por el site to site. El manual de llevarte la red a cuestas directamente te mete dentro del mismo dominio de broadcast, es decir, estás conectado con una IP asignada desde el router principal y en su mismo segmento. Si quieres hacer eso con un site to site, habría que enrutar el tráfico del IPTV por el router, y eso no lo he probado.

@furny tiene montado este esquema para llevarse la TV, pero siguiendo el manual del llevarte la red a cuestas. Con este creo que no lo hemos probado aún.

Saludos!
 
Si te quieres llevar la TV, te diría que tires por el otro manual, no por el site to site. El manual de llevarte la red a cuestas directamente te mete dentro del mismo dominio de broadcast, es decir, estás conectado con una IP asignada desde el router principal y en su mismo segmento. Si quieres hacer eso con un site to site, habría que enrutar el tráfico del IPTV por el router, y eso no lo he probado.

@furny tiene montado este esquema para llevarse la TV, pero siguiendo el manual del llevarte la red a cuestas. Con este creo que no lo hemos probado aún.

Saludos!
Gracias.
Lo he visto y ya estoy con el otro, pero el problema es el mismo El tunel EoIP está running pero no hay trafico
Siguo mirando donde está el problema y me voy al otro Manual
Gracias
 
Arriba