Ejecutar DNS localmente para la red doméstica

102

Tengo una pequeña red doméstica que se hizo más grande (nueva compañera de habitación, mi compañera de habitación actual tenía una computadora portátil (encima de su computadora), mis amigos vinieron con computadoras portátiles, etc.).

Me gustaría ejecutar un servidor DNS local para búsquedas de mis cosas red local ( fileserver.local, windowsTV.local, machineA.local, machineB.local, appletv.local). Solía ​​tener una línea comercial con una IP estática, y ejecutaba bind / named internamente. Sin embargo, ahora tengo una cuenta normal.

Los servidores DNS de mi ISP cambian constantemente (por cualquier motivo, a mi ISP no le gusta mantener el mismo rango de IP por mucho tiempo). Necesito que mi DNS local se actualice automáticamente para usar el DNS de mi ISP para el tráfico externo, pero poder mantener un servidor DNS interno (actualizar el archivo de hosts es una molestia con cada máquina nueva además de reconstruir máquinas existentes con win7 o Ubuntu 9.04).

Además, los servidores DNS de mi ISP a menudo se bloquean o dejan de responder. ¿Hay servidores DNS abiertos que sean confiables (no quiero reconfigurar todos los días) que pueda usar como mi principal, luego, si fallan, use mis ISP?

ACTUALIZACIÓN: también buscando que cada estación de trabajo pueda usar dhcp para conectarse, pero en lugar de obtener servidores DNS de ISP, obtener mi interna ...

Roy Rico
fuente
2
Aquí hay al menos 2 preguntas: configuración de DNS local, servidores DNS públicos. Publica 2 preguntas la próxima vez.
hyperslug
17
Estoy de acuerdo, pero estoy buscando una solución general. cada pregunta por sí sola tendría una respuesta correcta, pero puede que no coincida, estoy tratando de buscar una solución a ambos problemas que funcionen juntas.
Roy Rico
@RoyRico ¿Alguna vez encontraste una buena solución? Estoy tratando de hacer lo mismo con un enrutador de tomate y me encuentro con paredes en todas las direcciones.
Jeff
Si tiene una caja de Linux, aquí le mostramos cómo configurar DNSMASq en detalles: sfxpt.wordpress.com/2011/02/06/…
xpt
Los nuevos servidores DNS de Google son 8.8.8.8 y 8.8.4.4 en caso de que alguien se preguntara ...
Tmanok

Respuestas:

16

Si desea que funcionen los dominios falsos internos, no puede configurar sus estaciones de trabajo con ningún servidor DNS excepto el suyo. Una vez que configura BIND, puede funcionar por sí solo y no necesita en absoluto su ISP ni ningún otro servidor DNS no autorizado.

Juerga
fuente
99
Sin embargo, un buen internauta remitirá a las cachés DNS de su ISP si es posible. La carga en los servidores DNS raíz es horrenda. Especialmente para sitios pequeños como este, porque no se escalaría si cada hogar decidiera ir directamente. (Si le preocupa la manipulación del ISP, use DNSSEC).
sourcejedi
1
@sourcejedi, usted no comprende lo que realmente hace un servidor DNS de almacenamiento en caché ... ciertamente no afecta a los servidores raíz, solo los molesta tal vez una vez por semana.
milli
77
Hay una razón diferente por la que debe reenviar a los servidores DNS de su ISP ... se verá como un cliente común para ellos. Si no lo hace y ven que tiene un sistema que envía consultas DNS en todo el mundo, van a asumir que está ejecutando un servidor DNS y podrían arrojar una regla de firewall en su cara y manguera. Te costará descubrir qué se rompió y probablemente perderás horas tratando de resolverlo si eso sucede.
milli
1
Además del punto de @ milli, el DNS de su ISP también puede anular la resolución de algunos dominios a sus máquinas privadas con contenido más rápido / en caché / no medido. El uso de DNS público puede romper esos servicios o costarle más.
Walf
85

Básicamente, necesita ejecutar su propio servidor DHCP y DNS. Ya está ejecutando su propio servidor DHCP si tiene un enrutador típico que proporciona direcciones IP privadas.

Su servidor DHCP debe estar configurado para entregar la dirección IP de su enrutador como la dirección de la puerta de enlace y, obviamente, la dirección IP de su servidor DNS como la dirección del servidor DNS.

Su servidor DNS debe estar configurado para resolver un dominio de nivel superior no oficial localmente, como .localy luego enviar cualquier otra solicitud a otro DNS. En BIND, debe agregar una forwarders { }sección a sus `/etc/bind/named.conf.options 'que contiene los servidores DNS públicos que desea utilizar para resolver direcciones no locales. Como sugieren otros comentarios, si no desea reenviar a los servidores DNS de su ISP, puede usar OpenDNS, los servidores DNS públicos de Google o 4.2.2.1/4.2.2.2 (se me olvida quién los hace).

Si está ejecutando su propio servidor DNS, necesita un cuadro que estará encendido todo el tiempo, ya que todas las consultas DNS en su red doméstica lo revisarán. Este cuadro necesita una IP fija en la subred de su hogar. Asegúrese de que DHCP no pueda demolerlo, y que la caja en sí no debería recibir una IP a través de DHCP. Si su DHCP está configurado para repartir direcciones de 192.168.1.1 a 192.168.1.100, por ejemplo, entonces proporcione a su servidor DNS la IP 192.168.1.101. En la situación habitual de los enrutadores domésticos, solo tiene que decirle al enrutador que el servidor DNS es 192.168.1.101 y reiniciar.

Si puede obtener un DNS local ejecutándose en su enrutador de banda ancha, excelente, pero un servidor DNS podría beneficiarse de una gran cantidad de RAM para almacenar en caché las consultas, dependiendo del software DNS que utilice. En mi red solo uso BIND directo . Parece que podrías tener un poco de experiencia con eso y para mí funciona muy bien.

LawrenceC
fuente
3
4.2.2.1/4.2.2.2/4.2.2.3 son de la Capa 3.
Hengjie
1
Excelente respuesta! Gracias por la información completa y clara. Intentaré configurar esto en mi red local pronto.
Formulario
2
¡Éxito! Este enfoque es sólido. Establecer una IP fija fuera del rango direccionable / evitar DHCP para el cuadro DNS es especialmente relevante. ¡Gracias!
Formulario
@Hengjie, ¿qué es la capa 3?
Jonathan
Layer 3 es un proveedor de centros de datos, así como un proveedor de red. También proporcionan servidores DNS sólidos como una roca.
Hengjie
15

¿Hay servidores DNS abiertos que sean confiables?

Lo dijiste: OpenDNS .

208.67.222.222
208.67.220.220
hiperslug
fuente
3
También miraría aboutdebian.com/dns.htm para obtener una buena visión general de las diferentes formas en que puede configurar su propio servidor dns.
Kenneth Cochran
1
+1 para OpenDNS. Lo uso tanto en el trabajo como en casa. Fantástico servicio.
DWilliams
44
Tenga cuidado de que los servidores de nombres OpenDNS sean mentirosos: reescriben las respuestas DNS, para dirigirlo a un servicio de anuncios o para censurar algunos destinos.
bortzmeyer
1
@bortz, no los he visto mentir al respecto, pero sí redirigen a su página de destino + anuncios en caso de URL mal formadas. La censura es opcional y está desactivada de manera predeterminada.
hyperslug
12
Los servidores DNS públicos de Google en 8.8.8.8 y 8.8.4.4 también son bastante buenos.
LawrenceC
6

Si está ejecutando Windows, debería echar un vistazo a Simple DNS Plus , es un servidor DNS completo que también viene con un complemento de servidor DHCP, y tiene una GUI fácil de usar.

[Nota: el producto es desarrollado por el autor de esta publicación]

Jesper
fuente
Estoy ejecutando Windows como una de mis máquinas, pero no siempre está activado. La máquina Linux generalmente está encendida.
Roy Rico
Solo mencionar esto no es una solución gratuita. Se ofrecen licencias de prueba y educativas de 14 días. De lo contrario, sacará masa en algún lugar entre $ 70> $ 300
CyberFox
5

Unbound es bastante fácil, admite archivos de configuración de estilo de enlace y bastante confiable. Si el servidor será un cuadro de tipo 'puerta de enlace' independiente, y desea algunas sutilezas adicionales, es posible que también desee echar un vistazo a la distribución de firewall / puerta de enlace llamada desenredar.

Journeyman Geek
fuente
4

Si tiene una caja de Linux, entonces desea configurar DNSMASq para obtener sus direcciones locales y usarlo como servidor DNS de reenvío / almacenamiento en caché para direcciones externas. Esto también es a menudo lo que se usa en las distribuciones de Linux para enrutadores domésticos como openwrt / ddwrt / tomato.

Alternativamente, en la mayoría de las redes Apple / Mac estarías usando Bonjour / Zeroconf, en el cual las computadoras Linux y Apple pueden comunicarse para una resolución de servicio / DNS a nivel de transmisión.

Dicho esto, en una red puramente híbrida con los tres sistemas operativos en ejecución, definitivamente querrá un servidor DNS local con reenvío a OpenDNS, GoogleDNS o su ISP DNS local dependiendo de su ubicación / necesidades.

jonathanserafini
fuente
2

4.2.2.1 y 4.2.2.2 son lo que uso

editar: es decir, con respecto a los servidores públicos. Fácil de recordar y no creo que los haya visto fallar desde que los he estado usando.

DHayes
fuente
Ya los he visto antes. ¿Quién dirige esos? ¿Se le permite al público usarlos? ¿Qué tan confiables son?
Roy Rico el
Verizon Parece que no les importa. Muy.
hyperslug
Son servidores DNS abiertos, gratuitos para uso público. Ambos son rápidos y confiables.
Walter
3
He visto que 4.2.2.2 falla lo suficiente para nuestros clientes (que requieren un DNS confiable para el procesamiento de tarjetas de crédito) que siempre los cambio al DNS público de Google o OpenDNS cada vez que los veo. Al alejarse de los servidores de Verizon siempre se borra este problema de inmediato.
Stephen Jennings
2

Cualquier enrutador de banda ancha ofrece servicios DNS y DHCP para la red local. Si desea conexiones INcomming de Internet a máquinas locales, necesita un enrutador que también sea compatible con DynDNS e Incomming PortForwarding.

Si elige uno de la lista de hardware compatible con DD-wrt , puede actualizarlo con ese firmware y admitirá cualquier función que pueda necesitar en su pequeña red.

Nikolaas
fuente
44
No creo que la mayoría de los enrutadores de banda ancha brinden servicios de DNS, al menos no con el firmware proporcionado. La mayoría solo proporciona DHCP y lo usa para decirle a sus sistemas que usen los servidores DNS de su ISP. Ahora, si utiliza un firmware de terceros como DD-WRT, OpenWRT o Tomato, también pueden proporcionar servicios de DNS.
Afrazier
1

Para ejecutar un servidor DNS en su LAN, eche un vistazo a 'pdnsd', que es un servidor de nombres para * nix.

Zuu
fuente
1

Algunos servidores DNS gratuitos que puede usar para reenviar:

1.1.1.1 - Cloudflare
1.0.0.1 - Cloudflare
4.2.2.1 - Layer 3
4.2.2.2 - Layer 3
4.2.2.3 - Layer 3
8.8.8.8 - Google
8.8.4.4 - Google
208.67.222.222 - OpenDNS
208.67.220.220 - OpenDNS
JCA122204
fuente
0

Si descarga el programa de referencia DNS del texto del enlace , comparará una lista de servidores DNS públicos, así como su servidor DNS local. Después de ejecutar este programa, intente colocar una copia de los servidores más rápidos en la configuración de DNS de su enrutador y luego renueve su sesión de DHCP y vuelva a ejecutar la prueba.

Si su enrutador lo permite, agregue el enrutador y uno de los servidores DNS externos rápidos a la lista de servidores DNS que entrega al cliente DHCP (pero elija uno diferente del que ingresó para las direcciones del servidor DNS del enrutador).

Walter
fuente
0

Tuve un problema similar. Compré un enrutador compatible con OpenWRT e instalé OpenWRT. Ofrece enlace IP estático junto con resolución de nombre en el enrutador, lo que me permitió dar nombres a mis computadoras y dispositivos en la red como lo deseo.

Chico
fuente
-1

Tal vez estoy diciendo algo estúpido. En este caso, simplemente agregaría IP y nombres a los archivos hosts en las máquinas individuales.

192.168.0.120 tv.local

192.168.0.80 studiopc.local

Stefano
fuente