Usando un servidor DNS con ZeroTier

Usando un servidor DNS con ZeroTier

He configurado mi propio controlador Zerotier usandoztncuiy funciona muy bien, pero hay una parte de mi configuración que parece que no puedo hacer funcionar y es que los clientes usen el DNS que configuro para la red ZeroTier. El DNS se configura de la siguiente manera:

{
  "domain": "",
  "servers": [
    "10.10.14.26"
  ]
}

¿Dónde 10.10.14.26está la dirección IP ZeroTier del servidor DNS (al igual que el servidor Linux que ejecuta dnsmasq reenvía al enrutador local)? Siempre que pruebo las respuestas del servidor DNS directamente en un cliente ZeroTier, obtengo los resultados correctos (por ejemplo, configurar mi DNS para usarlo directamente o especificar el servidor DNS cuando uso dig), sin embargo, cuando selecciono "Permitir configuración de DNS" en la clientes, todavía se niegan a resolver nombres de host que sí se resuelven cuando preguntan directamente al servidor DNS.

También intenté usar la dirección IP local del servidor DNS en lugar de la IP ZeroTier, con los mismos resultados (el reenvío de IP está configurado en ese mismo servidor Linux para que los clientes también puedan acceder a las IP locales).

¿Qué debo hacer para asegurarme de que mis clientes ZeroTier utilicen el servidor DNS que he configurado?

Mi plan de respaldo es simplemente escribir varios scripts para las diferentes plataformas que necesito soportar y hacer que sobrescriban y restauren el DNS global al conectarme y desconectarme de mi red ZeroTier respectivamente, pero entonces, ¿para qué sirve la opción "Permitir configuración de DNS"? .

Sé que la función DNS no funciona para clientes Linux, pero seré el único cliente Linux, así que esto no es un gran problema para mí. El resto de los clientes utilizarán Windows o MacOS, para los cuales esta característica esreportado a trabajar:

Actualmente, el DNS administrado ZeroTier solo es compatible con Windows, MacOS, Android e iOS. El soporte para Linux está disponible próximamente, pero puede estar limitado a configuraciones comunes de resolución de DNS de Linux, como las que se encuentran en Debian y CentOS/RHEL.

Respuesta1

Aunque esta no es una respuesta adecuada a mi propia pregunta, resolvió mis necesidades. Como se describe enesta publicaciónTerminé forzando al servidor VPN a través de iptablescomandos adicionales:

iptables -t nat -A PREROUTING -s vpn_network -p udp --dport 53 -j DNAT \
    --to-destination your_DNS_server
iptables -t nat -A PREROUTING -s vpn_network -p tcp --dport 53 -j DNAT \
    --to-destination your_DNS_server

Nota: La máquina con Windows 10 en la que probé esto no mostró inmediatamente los resultados correctos, pero después de restablecer la mayoría de mis cambios experimentales, siguió funcionando correctamente. Cuando lo probé en una máquina limpia, funcionó de inmediato.

información relacionada