Er, if you have enough money to have your own server (unless its run at home), you probably have enough money to purchase a domain. On your server, you'll need a DNS server, web server (Apache), PHP, MySQL, etc. for basic needs. Most of them come with control panels like cPanel and Plesk though, so it really dpends on your host. Once you get your server set up, you'll need to set up your name servers and have your domain registrar to register your nameserver with your server IP's.
I used to know a lot of good free webhosts, but I haven't been on freehosting in years, so I hardly remember anything about it.
__________________
|