Como configurar el Mikrotik para dirigir el puerto 53 a un DNS con seguridad RPZ

Introduccion

Para configurarlo puede hacerlo de 2 maneras, por cli o por gui. Paso a explicar cada una:

Por cli hay dos soluciones:

Solucion 1:

# Configuración para redirigir el tráfico DNS (UDP y TCP) al puerto 53
/ip firewall nat add chain=dstnat protocol=udp dst-port=53 action=redirect to-ports=53
/ip firewall nat add chain=dstnat protocol=tcp dst-port=53 action=redirect to-ports=53

# Configuración del servidor DNS del MikroTik para utilizar la IP xxx.xxx.xxx.xxx
/ip dns set servers= xxx.xxx.xxx.xxx

# Habilitar el uso de caché DNS en el router para permitir solicitudes remotas
/ip dns set allow-remote-requests=yes

Solucion 2: No requiere conntrack ni NAT

# 1. Disable conntrack for IPv4 DNS
/ip firewall raw
add chain=prerouting protocol=udp dst-port=53 action=notrack
add chain=prerouting protocol=tcp dst-port=53 action=notrack

# 2. Routing-mark for IPv4 DNS
/ip firewall mangle
add chain=prerouting protocol=udp dst-port=53 action=mark-routing new-routing-mark=dnsroute
add chain=prerouting protocol=tcp dst-port=53 action=mark-routing new-routing-mark=dnsroute

# 3. Routes for intercepted IPv4 DNS
/ip route
add dst-address=0.0.0.0/0 gateway=xxx.xxx.xxx.xxx routing-mark=dnsroute

# 4. Disable conntrack for IPv6 DNS
/ipv6 firewall raw
add chain=prerouting protocol=udp dst-port=53 action=notrack
add chain=prerouting protocol=tcp dst-port=53 action=notrack

# 5. Routing-mark for IPv6 DNS
/ipv6 firewall mangle
add chain=prerouting protocol=udp dst-port=53 action=mark-routing new-routing-mark=dns6route
add chain=prerouting protocol=tcp dst-port=53 action=mark-routing new-routing-mark=dns6route

# Exclusions (optional but recommended)
add chain=prerouting src-address=2a0c:xxxx:xxxx::66 action=accept
add chain=prerouting src-address=2a0c:xxxx:xxxx::67 action=accept

# 6. Routes for intercepted IPv6 DNS
/ipv6 route
add dst-address=::/0 gateway=2a0c:xxxx:xxxx::66 routing-mark=dns6route
add dst-address=::/0 gateway=2a0c:xxxx:xxxx::67 routing-mark=dns6route

Advertencia

Esta configuracion NO requiere NAT ni conntrack

Donde dice gateway=xxx.xxx.xxx.xxx, src-address=2a0c:xxxx:xxxx::66 y src-address=2a0c:xxxx:xxxx::67 se refiere a las ipv4 e ipv6 del resolver

Por gui seria de la siguiente manera:

Estas imagenes corresponderian a la redireccion del trafico DNS

../_images/mkt1.png ../_images/mkt2.png ../_images/mkt3.png ../_images/mkt4.png

Esta imagen corresponde a la configuracion de la ip del RPZ como la habilitacion del uso del cache

../_images/mkt5.png

Breve resumen de las opciones antes mencionadas

1- Redirección del tráfico DNS al puerto 53: Configura reglas de firewall para capturar todo el tráfico DNS (tanto UDP como TCP) que utiliza el puerto 53 y redirigirlo hacia el propio router. Esto asegura que todas las solicitudes de resolución de nombres pasen a través del router, independientemente del servidor DNS que los dispositivos de la red intenten usar.

2- Configuración del servidor DNS en el MikroTik: Especifica el servidor DNS que el router usará para resolver las solicitudes DNS. Esta configuración permite que el MikroTik actúe como intermediario, redirigiendo las solicitudes al servidor DNS configurado (por ejemplo, un servidor DNS público o privado).

3- Permitir solicitudes remotas y uso de caché DNS: Habilita el router para aceptar solicitudes de resolución de DNS desde los dispositivos conectados a la red local. Al hacerlo, el MikroTik puede actuar como un servidor DNS para la red, resolviendo las consultas y almacenando las respuestas en caché para mejorar el rendimiento.