I'm working on setting up a home intranet for me and my roommates. My idea is that we'll be able to store things like past utility bills in a place that's more accessible than a drawer in the kitchen etc. Anyway, I have Apache 2 running on a Raspberry Pi, on my LAN, and if I use its IP address, I can access pages being served on the Pi. Since I'm doing this project more to learn about networking as to provide a service to my apartment, I thought it would be cool if my network could provide hostname resolution for my LAN. So rather than point my browser to 192.168.1.151, the Pi's IP address, I could point it to oberon (its hostname) and view the web pages served by the Pi.Now I knew I was not the first person to want to do this, so I started by Googling. This question, also on Unix & Linux, has helped me immensely: How to make a machine accessible from the LAN using its hostname. At this point, I've tried everything in the verified answer. I thought about using the hosts file, but that would mean I would have to tell my roommates to configure their machines, which I don't want to them to have to do. I tried to reserve a DHCP lease for the Pi on my router (a NETGEAR WNR1000v2 (aka an N150)), and while the reservation worked, hostname resolution does not. This kind of frustrates me because I told my router the IP of the Pi and its hostname, yet it still does not provide this information to clients on my LAN.With these two methods not working, I decided to install dnsmasq on the Pi. It seemed simple to configure and I would be happy to learn a new tool. I installed and have it running just fine (it seems). I can dig or nslookup the Pi's nicknames (which I set in /etc/hosts to oberon and homenet) and get the correct results. I can do the same for internet names like yahoo.com and get correct answers because I set up Google's 8.8.8.8 and 8.8.4.4 as backup servers in /etc/dnsmasq.conf. See this: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: 40Note that the SERVER is 127.0.0.1: oberon is looking up its own IP address on itself. This is what I expected to see. Output is the same if I do dig oberon @localhost. Because of this output, I'm thinking that dnsmasq is working fine. So to bring it to the next level, I want all clients on my LAN to be able to be able to type oberon in their browser and be taken to oberon's index page. For this I know I need to configure my router (apologies if this veers away from strictly Unix & Linux territory).I have a Netgear WNR1000v2 that I am fairly familiar with. I have configured port forwarding so I can SSH into the Pi, and I've poked around in other settings as well. I know that before I started this project, I was getting my DNS servers from my ISP, but now I want to use those DNS servers primarily but also use 192.168.1.151 as a last check. So I changed my router's DNS config to the following:So with this config, I expected to be able to do nslookup oberon on my (Windows) desktop and get a result of 192.168.1.151. But this does not happen. This is what does happen:C:\Users\me>nslookup oberonServer:  UnKnownAddress:  fe80::226:f2ff:fefa:bea*** UnKnown can't find oberon: Non-existent domainResetting or dnsflushing the network adapter on my Windows machine does not change anything.Now here's why I'm kind of tearing my hair out here:C:\Users\me>nslookup oberon 192.168.1.151Server:  oberon.lanAddress:  192.168.1.151Name:    oberonAddress:  192.168.1.151Clearly, dnsmasq is working just fine. If I tell my Windows box to use 192.168.1.151 to resolve the name oberon, everything is fine (the .lan domain was part of the configuration of dnsmasq, so I expected to see it there). If I could just get my router to tell my Windows machine to use 192.168.1.151 when it makes DNS queries, I should be good!So it seems to me that the problem is in my router, but I just can't figure out what to do beyond changing the DNS servers to include 192.168.1.151 like I already have. Can anyone help me here? I will try to provide any further information desired.
Using DNSMasq for Local Hostname Resolution
dns;raspberry pi;hostname;dnsmasq