Currently being between jobs, I figured that I should use some of my available time to tweak my home network and brush up on some skills whilst waiting for companies to get back to me.
A while back, I replaced the router provided by my ISP with one that is basically better. After getting it setup, I soon realized that it lacked one useful feature that my previous router did. It didn’t automatically register devices in a local DNS.
This was a bit of a pain so I decided to use my Synology NAS as a DNS server, as it has a package for it. I did a very rough-and-ready job at the time, just to basically store a few local addresses and forward the rest via my router to my ISP. No reverse-lookup functionality on the internal network, though.
This was all very well for a while. It did the basic job and was certainly “good enough” for a home network. However, with jobseeking taking longer than I would like and me starting to run out of things to fill the hours with, I figured that now was the time to do a proper job of it. Finish it off so it all works nicely, even if it’s a bit overkill for a home network, and to actually increase my knowledge of how DHCP and DNS work. After all, even when I am in work, I’ve never really had the opportunity to get into the network. And even if I had, playing around with a live network just to see how it works is very much a Bad Idea.
Potentially breaking my single-user home network to improve it and learn how it works is a more acceptable risk.
What it Now Does
- DHCP (dynamic assigning of IP addresses) is done on the Router.
- I have set registered addresses for much of my home equipment.
- In some ways this is overkill, but it can be useful.
- It’s good practice.
- It means that my at-home network has fixed IP addresses for various devices but I can bring them elsewhere and have them “just work”.
- There are (currently) three items that have purely static addresses:
- The router.
- An old PC running Proxmox VE as a virtual host. (I’m wanting to brush up on my VM skills as well.)
- A very entry-level managed switch.
- My NAS is running a DNS server, which the Router is set to give out as the main DNS server for my home network.
- The DNS server will query external hostnames via my ISP’s main DNS servers but for anything on the internal-only domain, these are stored on the NAS.
- Entries for internal servers.
- A few (not all) bits of home gear.
- Reverse DNS lookup is now implemented.
- Up until now, I could only query an internal hostname to get its IP address.
- Now I can also query the IP address to get the resulting hostname.
- Not really essential on a home network but if I’m going to implement DNS at home, I might as well do it properly.
This is a step forward from what I had but still not perfect. If I have to reboot/update the NAS, or it breaks, I lose DNS resolution. Including for external sites. Not really an idea situation.
After this, I plan to implement a secondary DNS server elsewhere on the network. I am either going to use a small VM (Virtual Machine) running on the Proxmox host to run this or I shall use an old Raspberry Pi I have lying around. The latter is underpowered for any heavy lifting these days but as a backup DNS it would probably do fine.
All in all, it’s a little bit more complex than a small home network needs to be. However, it does leave everything a little more robust than just leaving it to the router.
Aside from that, the past couple of days’ geekery has given me a lot more insight into DHCP and DNS. I’d say it was definitely worth the effort.