I can't help but chim in here, as susposedly I'm supposed to know about IP address (I've a computer networking certification).
You supposedly are supposed to know about IP addresses. But only supposed to be
. Because some of what you said here is definitely wrong.
You made some major confusions while trying to simplify things and as a result end up with something that no longer has anything to do with the reality.
I've quoted a few of your sentences and added some technical comments to the major problems. I hope to have written this in a way that everyone can understand it, but when I get into technical stuff I lose track very easily and go way too much into detail.
Just to help out a bit and clear things up, static IP and DHCP are opposites. The "D" in DHCP is the clue. The "D" stands for Dynamic.
Static IP = the IP address never changes
Dynamic IP = the IP address automatically changes
The D in DHCP is not referring to the IP address! It's referring to the process of configuring a network device.
This process can either be static or dynamic. Static means the device that wants to connect to the network needs to know all/most settings of the network in advance and stores these itself. Even in a static IP configuration, you can change the IP address at any time.
The dynamic process requires no/very little knowledge about the network in advance. The device connects to the network and looks around to identify other devices. The DHCP server will then hand out an IP address (and a few other configuration settings, typically the netmask and the gateway address are included in a DHCP message as well, but there's a bunch of optional stuff) to the new device. This new device does not need to know that IP address (or the other network settings) in advance, but it could very well receive the same IP address every time it connects to this network.
This has nothing to do with whether the IP will change or not. The problem is that a non-changing public IP address is usually referred to as static IP, which leads to confusions like this, while actually meaning something completely different.
The public IP address is the IP address that is dealed out by your internet service provider (ISP). I can almost guarantee that the public IP address is dynamic, so it will change every so often.
That's way too general. I know at least 4 or 5 ISPs here in germany off the top of my head that deal out never-changing IP addresses. (My ISP for example maps IP addresses to MAC addresses of the device connected to my cable modem and I can get a new IP only if I fake the MAC address of my router's WAN port)
IP addresses in general do not change as long as a device is connected. Since a couple of years, especially since flatrates are the common tariff for internet connections you usually have an always-on and always-connected router device (Usually at a consumer connection you have a device that handles at least the functionality of 3 seperate technical devices: Router, Switch, NAT. It's pretty common to include one or two more functions: WLAN-Accesspoint and VoIP PBX)
A couple of years ago (at least in germany) it was commonplace to have a forced disconnect every 24 hours, but the ISPs have since noticed that this won't reduce the number of addresses in use by their customers and will most certainly not keep people from offering server-services to the internet.
In fact, this is precisely why it's good to have a router/switch, so that you can get around this issue of the public IP address changing every now and then.
If you're force-disconnected every now and then, it doesn't matter if you have a router or a single computer connected to the modem. Both will be disconnected and receive a new IP upon reconnect.
The router will also not help with offering a service like the SAM HTTP handler. You still need to make the public IP address of your home network known to the website. If you've got a changing IP address, you have 2 options. #1 Everytime the IP changes, update the config file for samHTMLweb and upload the new generated template files to the webserver. #2 Enter a dynamic hostname and let your computer or router handle the updating of the name => IP mapping. Think of hostnames/domain names as entries in a phonebook. Noone wants to remember the phone numbers when remembering names is so much easier. So you simply look up the "phone number" for google.com instead of remembering the actual number (126.96.36.199)
Dyn.com was the de-facto standard until they closed their free service to new users. Sadly dyn.com is also the only service supported in most cheap routers.
Nowadays there are hundreds of competing services available that work the same way, but just use a different base-address.
If there is no service supported in your router, you can still download the PC client software from a service of your choice and that will permanently monitor your connection and update the hostname if needed.
The biggest remaining competitor to Dyn.com seems to be No-Ip.org these days, but if you just do a web search for "Dynamic DNS" that should bring up some more to choose from.