Host your own website and dns server
My only advice is NEVER host company websites from your home no matter how low the traffic is. I'd rather choose the following options to host low traffic sites such as:
- AWS EC2 Free Tier
- OpenShift
- Google Apps (Sites)
- Google App Engine
Or, just subscribe a single Linode 512 which will only cost you USD 19.95 a month and setup your virtual hosts for all your sites. YMMV.
For hosting the DNS, you can create free accounts from HE or FreeDNS. YMMV.
If you want to run your own DNS and web servers, you need to install the required software and configure them appropriately.
Under Linux, you can run apache2/nginx as web server and bind as DNS server.
Under Windows, you can run iis as web server. For the DNS server, Windows server versions have DNS service.
You need to point your DNS domain to your public IP which should be forwarded to your configured DNS server. The DNS server will tell your clients about your web server IP (it can be the same IP).
If you want your domain to be for local use only, you don't need to register it with any registrar. You can just run your own DNS server/web server on your local machine(s).
This is what I can say given the provided information.