Para un entorno domestico la verdad es que los router de MikroTik tienen una relación funciones/precio imbatibles, si bien la configuración .... digamos que no es la cosa mas intuitiva que puedas hacer. Así para mostrar puertos internos de nuestra red en Internet (D-NAT) la cosa no es tan sencilla como se pudiera pensar de inicio. Para que esto funcione de modo correcto tendremos que configurar dos reglas.

Esquema de Red

Para ponernos en situación partimos de un esquema de red en donde tenemos una conexión FTTH, estamos usando la ONT de operador como modem y en el Mikrotik tenemos confiurado el ppoe de modo que la IP publica está en el MikroTik

Regla de D-NAT

Configuramos que puertos de que host queremos publicar de la red interna, en mi caso es el puerto HTTPs que es donde corre este blog. Así nos vamos a IP -> Firewall -> NAT y añadimos la siguiente regla:

  • Chain: dstnat
  • Protocol: 6 (tcp)
  • Dst. Port: 443
  • In.Interface: ppoe-out1
  • Action: dst-nat
  • To Addresss: IP_SERVIDOR
  • To Ports: 443

De este modo tenemos ya listas las conexiones entrantes, lo que llegue por el interface pppoe-out1 al puerto 443 por el protocolo TCP será enviado a la IP de IP_SERVIDOR al puerto 443. Ahora curiosamente debemos de escribir una regla de S-NAT de salida especifica, aunque ya tengamos reglas de S-NAT para nuestra red interna, estas no se aplican a esta conexion, de modo que tenemos un rutado asimetrico y no funciona. Para ello vamos a añadir esta regla.

Regla de S-NAT

Para evitar el rutado asimetrico añadimos la siguiente regla:

  • Chain: srcnat
  • Src.Address: RED_SERVIDOR
  • Dst.Address: IP_SERVIDOR
  • Protocol: 6 (tcp)
  • Dst.Port: 443
  • Action: Masquerade

Y con esto deberíamos de tener suficiente para que funcione nuestra redireccion de puertos.