Quiero configurar MediaWiki en una de mis máquinas domésticas, y luego hacer que todas las solicitudes en la red local para 'wiki.home' o 'wiki.local' apunten a ese cuadro. Sé que esto se puede hacer editando cada archivo / etc / hosts de forma individual, pero quiero algo más automatizado para que, por ejemplo, si un amigo o familiar venga a mi casa, no necesiten meterse con el archivo de hosts para ver el sitio.
¿Hay una manera simple de hacer esto? Tengo el wiki en funcionamiento, y he estado buscando en dnsmasq, pero no puedo entender cómo configurar el DNS correctamente. Como quiero una solución automatizada, siento que necesito cambiar la configuración de DNS en mi enrutador, pero si cambio la configuración de DNS allí, ¿cómo puedo resolver hosts externos?
Detalles de configuracion
Enrutador: Netgear WNR2000v2. El enrutador me da la opción de especificar manualmente los servidores DNS, lo que supongo que tendré que señalar a mi cuadro de Ubuntu si quiero poner esto en funcionamiento.
Host MediaWiki y dnsmasq: ejecuta Ubuntu 12.04. He tenido algunas dificultades con la configuración de dnsmasq (principalmente debido a mi inexperiencia). Por ejemplo, no estoy seguro, pero creo que durante la instalación, Ubuntu modificó mi configuración de DNS para que
/etc/resolv.conf
ahora tuviera127.0.0.1
como único servidor DNS. En ese momento, pude resolver los hosts locales, pero nada más. He resuelto esto temporalmente modificando/etc/resolv.conf
y agregando192.168.1.1
como el servidor de nombres secundario, pero la preocupación aquí es que192.168.1.1
usará el cuadro de Ubuntu para DNS. ¿Me estoy perdiendo algo obvio aquí?Configuración de dnsmasq: descomentó las siguientes líneas:
domain-needed bogus-priv local=/local/ domain=local
Respuestas:
Con el DNS estándar, ejecutaría un servidor DNS que tenga autoridad para el dominio local (
home.
olocal.
, aunque es mejor evitarlo, vea la nota a continuación), pero que también actúe como un solucionador para todos los demás dominios.dnsmasq puede usarse para este propósito: tiene el modo recursivo habilitado por defecto y su configuración se ve bien; todo lo que se necesita es decirle qué servidores de nombres usar para dominios no locales. Normalmente esos serían leídos del
/etc/resolv.conf
archivo del sistema ; Sin embargo, ya que desea que el dominio local para trabajar en el equipo servidor DNS también, usted tendrá que crear una copia dedicada de resolv.conf que sería utilizado solamente por dnsmasq , mientras que el original resolv.conf señalaríanameserver 127.0.0.1
.Nota: Estas instrucciones son muy básicas y deben adaptarse a la distribución de Linux en uso. En particular, consulte las guías de Debian y Ubuntu en dnsmasq.
Después de esto, el enrutador debe configurarse para usar esta computadora como servidor DNS; dnsmasq manejaría todas las consultas DNS de las computadoras de su red .
(Los servidores DNS con todas las funciones, como bind9 , pueden realizar consultas recursivas por sí mismos: la configuración de servidores de nombres ascendentes se vuelve completamente opcional. Así es como funcionan los servidores de nombres de su ISP, por ejemplo. Sin embargo, alojar su propio dominio con bind9 es bastante complicado al principio, en comparación con el simple dnsmasq .)
Nota: Si tiene Avahi (también conocido como Bonjour) configurado en cualquier computadora en la red (que Ubuntu tiene, por defecto), es mejor si evita
local.
en DNS y elige algo asíhome.
,name.local
ya que Avahi ya maneja los nombres en forma de .(Aunque Avahi normalmente solo responde
current-hostname.local
, en realidad es posible publicar entradas adicionales comowiki.local
; sin embargo, necesitarán agregar direcciones IP adicionales debido a la forma en que funciona mDNS. Debido a esto, usar Avahi en lugar de DNS centralizado no funciona) ofrece más ventajas, así que no lo estoy sugiriendo).fuente
Encontré que el demonio Avahi es la forma más fácil de hacer esto. Nota: si está utilizando máquinas Windows para conectarse al dominio .local, debe asegurarse de que esas máquinas tengan instalado iTunes u otro cliente Bonjour.
Consulte este enlace para obtener más información: http://www.howtogeek.com/167190/how-and-why-to-assign-the-.local-domain-to-your-raspberry-pi/
Aunque ese enlace es específico para Raspberry Pi, debería funcionar en las máquinas Ubuntu de la misma manera. Para otras distribuciones de Linux que no usan
apt-get
, simplemente ajústeloapt-get
a su administrador de paquetes apropiado, por ejemplo,yum
para Fedora y CentOS)Estos son los comandos exactos que ejecuté para que esto funcione en mi servidor de medios Raspberry Pi:
sudo apt-get update && sudo apt-get upgrade sudo apt-get install avahi-daemon
A partir de ahí, automáticamente comienza a usar el nombre de host de su computadora más la
.local
extensión como nombre de dominio. Entonces, si el nombre de host de su máquina esmediaserver
, entonces puede acceder a él en la red escribiendomediaserver.local
en la barra de URL de cualquier máquina que tenga Bonjour / Avahi (es decir, todas las Mac, más las máquinas Windows con iTunes instalado).fuente
La resolución de nombre local es una característica simple y ha sido parte de la mayoría de los enrutadores que utilicé. También se implementa en el firmware DD-WRT. Netgear no se preocupa por esta característica que se solicita constantemente .
Entonces, la respuesta es mucho más simple que las otras publicadas aquí: evite los problemas y cambie su enrutador Netgerat a algo que admita la resolución de nombres locales. O, si esa no es una opción, y siente la fuerza y tiene el tiempo, aplique DD-WRT.
fuente