It depends on what you are trying to achieve.
If you are only trying to experiment with DNS and set it up on an internal network, then no, you don't need a registered domain name. From the sounds of what you have described, you are experimenting with this.
I would suggest as a first thing to try, that you go ahead and run the commands:
> server ipofyourdnsserver
Default server: ipofyourdnsserver
From this point you can check your A records and PTRs by typing youripaddress and computer.domain.com respectively.
The information in your /etc/resolv.conf - should have an entry similar to this:
This is what your machine uses to find the default DNS server.
If you are receiving address by DHCP, then whatever is providing DHCP needs to be configured to point computers it assigns an IP address to needs to also give the IP address of your internal DNS server. Before doing this, I'd be sure that external DNS resolves correctly by using nslookup and checking a site such as www.google.com.
Other than this little bit of help, if you are still having problems a better idea of what you are trying to accomplish would help you find a better solution.
The company I work for has several branch offices connected over VPN tunnels. We use internal DNS for intranet websites and various services such as Active Directory. Our external DNS is actually hosted with an online provider. There are lots of options depending on what you want to achieve.
Other than that, I guess you really need to clarify your overall intent of what you are trying to do.