Speeding Up Your Home / Small Office Network

This will be the first in a multi-part post targeted at making suggestions as to how you can improve the performance of your home and / or small office network.

None of these recommendations require a rocket scientist, and if there are questions on any of these topics I’ll try and take the time to put together a HOW-TO post to cover those areas.


The Intenet, and your home network use TCP/IP, and while it was designed to withstand a nuclear attack, it isn’t necessarily always the most efficient protocol.

DNS (Domain Name Service) is built on top of TCP/IP and it’s purpose is to provide a way to refer to nodes on the “network” by name rather than remembering the address (in dotted quad notation).

Most modern computers are capable of caching DNS resolutions, so that you don’t have to continually resolve the addresses, and that’s important for a browser since it will often load many parts of a page from the same address.  However, if you have more than one computer on your network, those computers do not share the information they have (some routers will also do DNS caching).

A good way to improve the performance of your network is to implement a local caching DNS server; that type of server basically only knows how to do resolutions, it doesn’t have any addresses stored locally (that makes it easy to install and maintain — since you really don’t need to do anything to it once it’s setup except check for security updates).

If you happen to have a Windows server machine (2000, 2003, or 2008) then you can just install Microsoft’s DNS server and use it.  However if you only have Windows workstations (home, professional, etc) then a good option is BIND from ISC — it’s totally free, and is the reference platform for DNS.  For a novice BIND can be a little daunting, but you can download everything you need to setup a caching only name server.  If you have a *nix machine around (that’s BSD, Linux, OS-X) then you can also run BIND on it, and odds are there are some ready to run configuration files with your distribution.

After you have BIND installed you will need to tell each of your machines to use your local DNS server rather than the current server they use; odds are your router does DHCP (Dynamic Host Configuration Protocol) and issues IP addresses as well as gateways and dns information to each of your machines.  Just change your router so that it provides the address of your local dns server rather than the ones it currently does and you should be good to go.

Now with BIND installed locally, you can also create your own zone and name your machines — but more about that in a future post.

Originally posted 2009-01-09 12:00:12.