It can be done, but most connections (uplink) are too slow for moderate traffic sites. Also, running e-mail is a bit of a hassle, and your IP could change at any time (meaning downtime, usually a few hours, every time it does).
Personally, I would not even bother with it. You are much better off purchasing a small package from a hosting company.
heh, i forgot about ARIN here in Europe we have more freedom with ip's. But, for dynamic ip i can recommend no-ip.com. They offer good solution to them who want use domain or subdomain on dynamic ip's.
Rustelekom LLC Dedicated server since 2002, RIPE NCC member, LIR, AS51168
You can always point mydomain.tld -> CNAME mydomain.dyndns.org -> IP
but the others are right, the changing dynamic IP will screw up your email.
Especially since it will be more difficult to e-mail anyone using spam filtering and RBLs. Spam filtering systems are much harder on e-mails when they originate from a server using a dynamic IP address.
There is also the little fact that most ISP's prohibit running a dedicated server through your home internet connection. You can probably get away with it if you want to just play around to see how things work, but for long term, constant traffic, you'll probably end up getting a letter or phone call from your ISP at some point.
I know some people who do it, but they have business accounts. And, as others have stated, for that cost, you can buy dependability, security and battery-backup in a data center for less money.
The Cable companies especially don't like it, since they are hurt the most because their bandwidth is shared among everyone on your subnet. If you're lucky, your cable company has it's network load thinned out, but I doubt it, since bandwidth costs money. They might not act until traffic gets out of control, usually in the early afternoon or evening, when everyone is home and surfing. If they don't monitor it, and react accordingly, internet traffic can crawl to a standstill. That's why most cable companies use DHCP, so they have better control of their network. If they need to move you to a different subnet, they just move you.
You might want to check with your ISP, though, as most offer static IP addresses. I have a DSL and a cable connection, and both are static IP addresses... mostly because it didn't cost significantly more.. maybe a dollar or two a month.
I did it and learned a lot, when I did it, I took a old cpu, I installed linux, apache, mysql, php, etc. etc, after several days finally I get my server online. I used a cable connection of 300k of download and 150k upload and from my mother house (in the other side of my town) my site loaded faster than the rest of sites.
I think if you are consider begin in the web hosting world, you can start to learn in this way, you will spend more money and more time, especially time, but at the end of the day you will feel good and prepared to manage a VPS o dedicated server in the future.
After a few months and huge work I changed to shared hosting.