Estoy trabajando para configurar una intranet doméstica para mí y mis compañeros de cuarto. Mi idea es que podamos almacenar cosas como facturas de servicios públicos anteriores en un lugar que sea más accesible que un cajón en la cocina, etc. De todos modos, tengo Apache 2 ejecutándose en una Raspberry Pi, en mi LAN, y si uso su dirección IP, puedo acceder a las páginas que se sirven en el Pi. Como estoy haciendo este proyecto más para aprender sobre la creación de redes y proporcionar un servicio a mi departamento, pensé que sería genial si mi red pudiera proporcionar una resolución de nombre de host para mi LAN. Entonces, en lugar de apuntar mi navegador a 192.168.1.151la dirección IP del Pi, podría apuntarlo oberon(su nombre de host) y ver las páginas web que sirve el Pi.
Ahora sabía que no era la primera persona en querer hacer esto, así que comencé buscando en Google. Esta pregunta, también en Unix y Linux, me ha ayudado inmensamente: cómo hacer que una máquina sea accesible desde la LAN utilizando su nombre de host . En este punto, he intentado todo en la respuesta verificada. Pensé en usar el hostsarchivo, pero eso significaría que tendría que decirles a mis compañeros de cuarto que configuren sus máquinas, lo que no quiero que tengan que hacer. Traté de reservar un contrato de arrendamiento de DHCP para el Pi en mi enrutador (un NETGEAR WNR1000v2 (también conocido como N150)), y aunque la reserva funcionó, la resolución del nombre de host no funciona. Esto me frustra porque le dije a mi enrutador la IP del Pi y su nombre de host, pero aún no proporciona esta información a los clientes en mi LAN.
Con estos dos métodos que no funcionan, decidí instalar dnsmasqen Pi. Parecía simple de configurar y estaría encantado de aprender una nueva herramienta. Lo instalé y lo tengo funcionando bien (parece). Que pueda digo nslookupapodos del Pi (que yo pongo en /etc/hostsa oberony homenet) y obtener los resultados correctos. Puedo hacer lo mismo para nombres de Internet como yahoo.comy obtener respuestas correctas porque configuré Google 8.8.8.8y 8.8.4.4como servidores de respaldo /etc/dnsmasq.conf. Mira esto:
me@oberon~$ dig oberon
; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> oberon
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 10787
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;oberon. IN A
;; ANSWER SECTION:
oberon. 0 IN A 192.168.1.151
;; Query time: 10 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Sun Oct 6 18:59:18 2013
;; MSG SIZE rcvd: 40
Tenga en cuenta que SERVERes 127.0.0.1: oberonestá buscando su propia dirección IP en sí mismo. Esto es lo que esperaba ver. La salida es la misma si lo hago dig oberon @localhost. Debido a este resultado, creo que dnsmasqestá funcionando bien. Entonces, para llevarlo al siguiente nivel, quiero que todos los clientes en mi LAN puedan escribir oberonen su navegador y acceder a oberonla página de índice. Por esto sé que necesito configurar mi enrutador (disculpas si esto se aleja estrictamente del territorio de Unix y Linux).
Tengo un Netgear WNR1000v2 con el que estoy bastante familiarizado. He configurado el reenvío de puertos para que pueda SSH en el Pi, y también he hurgado en otras configuraciones. Sé que antes de comenzar este proyecto, estaba obteniendo mis servidores DNS de mi ISP, pero ahora quiero usar esos servidores DNS principalmente, pero también los uso 192.168.1.151como último control. Así que cambié la configuración de DNS de mi enrutador a lo siguiente:

Entonces, con esta configuración, esperaba poder hacerlo nslookup oberonen mi escritorio (Windows) y obtener un resultado 192.168.1.151. Pero esto no sucede. Esto es lo que sucede:
C:\Users\me>nslookup oberon
Server: UnKnown
Address: fe80::226:f2ff:fefa:bea
*** UnKnown can't find oberon: Non-existent domain
Restablecer o dnsflushingel adaptador de red en mi máquina Windows no cambia nada.
Ahora he aquí por qué me estoy arrancando el pelo:
C:\Users\me>nslookup oberon 192.168.1.151
Server: oberon.lan
Address: 192.168.1.151
Name: oberon
Address: 192.168.1.151
Claramente, dnsmasqestá funcionando bien. Si le digo a mi cuadro de Windows que use 192.168.1.151para resolver el nombre oberon, todo está bien (el .landominio era parte de la configuración de dnsmasq, por lo que esperaba verlo allí). Si pudiera hacer que mi enrutador le diga a mi máquina Windows que use 192.168.1.151cuando realiza consultas DNS, ¡sería bueno!
Entonces, me parece que el problema está en mi enrutador, pero no puedo entender qué hacer más allá de cambiar los servidores DNS para incluir 192.168.1.151como ya lo he hecho. ¿Me puede ayudar alguien? Intentaré proporcionar cualquier información adicional que desee.