To run a webserver, you must have a decent, stable, and always-on connection to the Internet. I've seen magazine articles that say you can run a webserver on a 56k modem, but that's really not feasible. What you need is cable modem connection or any of the flavors of DSL. Some people still have ISDN, but that is rapidly being dropped by home users since DSL is faster and cheaper than ISDN. 

Acceptable Usage, Blocked Ports, and Terms of Service (TOS)
Before we even talk about what kinda connection you end up choosing, we need to talk about "Acceptable Usage, Blocked Ports, and Terms of Service (TOS)".  Simply stated, most ISP's DO NOT want people to run servers on their networks.  There are many reasons for this, here are just a few:

  • First of all they don't want people sucking up bandwidth which is expensive
  • Many servers run by inexperience people become a security liability
  • Virus and worms like Code Red prey on unsecured servers
  • They don't want to help you troubleshoot server problems
  • They can charge you more for "business class" DSL or Cable modem
In order to prevent people from running servers, ISP's put notices in their contracts and Terms of Service.  In the past few years, they have been much more proactive and started to block certain port numbers that servers need to access the Internet.  For example, most ISP's block port 80 because that's the webserver port.  They usually also block port 25 to curb people from sending SPAM intentionally or unintentionally.

Having said that, if you want to run a server, choose an ISP provider that allows servers.  Look through their FAQ's and Terms of Service.  You don't want to get into any trouble for running your server.  Most big provider companies won't allow servers, but many 3rd party providers do allow people to run servers.  The 3rd party providers buy or lease the DSL/Cable modem lines from the major provider and then resell them to you with other features such as static ip address or freedom to run webservers.  These 3rd party companies are usually smaller, less well known, local companies.  Since they have to compete with the major provider, they usually are fairly reasonable in pricing, but typically still charge more so that they can offer static ip addresses and open port numbers.  Your best bet is to call the company before you sign up and directly ask them if they allow servers or not.

If you know your ISP doesn't allow servers and you still choose to run one, you do so at your own risk.  This website takes no responsibility for your decision to do so.

Cable modem or DSL?
If you already have one or the other, then you can skip ahead, but if you are still deciding between the two, read on. Did you know that three fourths of all home broadband connections are cable modems while DSL only has about a fourth of the home high-speed market? The reason is that cable was here first and most people already have cable television (not me, TV rots your brain) so adding Internet access over cable was pretty simple. DSL came later and is still evolving.

What are the major differences between cable modem and DSL?
Cable modem is faster DOWNSTREAM - When you are surfing the web and downloading huge files, cable has the potential to be faster than DSL. In some areas, cable modem is 5-10x faster than DSL. But DSL is no slouch either. Depending on how much you want to pay, you can get up to 1.5Mbps downstream on DSL.

However, if you're running a webserver, you want to pay more attention to UPSTREAM speed, that is, how fast you can send files from your server to the Internet. Most cable or DSL connections are asymmetric with a much faster download speed than upload speed. This makes sense for most people since they don't really upload anything to the Internet. But this is actually the most important aspect to webserving. Both DSL and cable modem connections have about the same upload speed. However, with DSL, you can choose certain speed packages that vary the speed downstream and upstream.

Here are some samples of speeds and prices for DSL:

  • 768Kbps/128Kbps $39.95 per month 
  • 384Kbps/384Kbps $90.95 per month 
  • 768Kbps/768Kbps $125.95 per month 
  • 1.5Mbps/768Kbps $204.95 per month
  • As you can see, it's pretty costly to add upstream speed. Check your local DSL provider for the best rate plan for you. If you are on cable modem, then you have fewer choices. Most cable companies don't have different rate plans, but instead offer just one plan.

    I personally don't feel that speed is the biggest issue with choosing between DSL and cable. What made me choose DSL over cable is the fact that DSL is dedicated bandwidth while cable modem connection is shared bandwidth with your neighbors. If your neighbors are ALL sitting in front of their computers downloading MP3 files, then your cable modem connection is going to slow considerably. Cable modem has rush hours just like the freeways of a big city. It's fast in the daytime and middle of the night, but during the evening, expect delays. However, if you were on DSL, you connection would not slow down. It is a dedicated amount of bandwidth to your house. You want the connection to your webserver as stable as possible, so DSL may be better. If you already have cable, pretend you didn't just read that line.

    You want some static?
    Yes you do! (A static IP address) Your connection to the Internet will either be a static IP address or a dynamic IP address. With a dynamic IP address, every time your computer connects to the Internet, your connection provider will give your computer an IP address that MAY or MAY NOT change. This is problematic since how are your web site visitors going to find you if your IP changes every few days? The best solution would be to get a static IP address. However, not all providers give you the option of getting a static IP number, so you have to work with what you can get. 

    If you have a domain name for your website, you can connect the domain name to the IP number through DNS. You could do the same if you have a dynamic IP number, but only if that IP number doesn't change very often. One way to keep an IP number from changing is to hold onto it by making sure the computer that is connected to the DSL/Cable modem is always on or by using a hardware router that is always on. There are also several dynamic IP services that allow you to connect to host a subdomain on their servers. They allow you to log in periodically and enter the new IP number your provider has given you. It's worth a shot.

    Check out the DNS section for a more complete discussion on hosting a website from a dynamic IP address.  It can be done!

    The next thing you have to check is if your DSL or Cable provider allows you to run servers on your connection. Some providers state very specifically that you cannot run servers while other don't mention it in their terms of service. It would be best to find out what your provider allows.

    What is my external WAN IP number?
    If you have a static IP address, this is the number your ISP gave you.  However, if you have a dynamic IP address, it might be harder for you to figure out your WAN IP number.  Use this cool website appropriately called to find out your WAN IP is whether you have static or dynamic WAN IP address.

    Choosing an DSL/Cable Installation Kit
    More and more self installation kits for DSL or Cable are coming with a USB based modem.  This allows you to connect the USB DSL/Cable modem directly into the back of your PC.  The reason for this trend is because the standard method of using RJ45 connector to an Ethernet Network Adapter requires the client (that's you) to open up your computer an install a network card and fuss with TCP/IP settings.  A USB modem also makes it more difficult to share a connection among several computers using the popular DSL/Cable routers out there.  This USB trend is good for the DSL/Cable companies but is BAD for you.

    Stay away from USB modems because more than likely, you will want to use a DSL/Cable router to share your high speed line with other computers at home.  Most DSL/Cable routers use traditional RJ45 Ethernet connects.  There are a few routers that can handle USB modems.  These are slowly starting to appear on the market.  However, the choice of models is very limited, which is bad for you.  Stick with the Ethernet models.

    What if they give you an internal DSL/Cable modem?  Send it back as well!  Tell them you ran out of PCI slots, or you don't have PCI slots!  I don't understand why the DSL/Cable providers would want internal modems.  This would be more difficult to install than a network card!

    With both internal DSL/Cable modems and USB modems, you cannot use an external hardware DSL/Cable router to share your connection, but must instead use software NAT software like ICS, Wingate, or Sygate.  These software routers require that this computer must always be on, which isn't a problem if the computer is the server, but if it's not, then it's a pain.

    The best thing to do when you order DSL or Cable is to ask what type of interface they are going to send.  Tell them you want an Ethernet RJ45 based modem, not a USB or internal modem.  If they won't budge, tell them "I don't have USB ports but I do have a network card" or "I don't have any open PCI slots but I already have a network card ready for the Ethernet based modem!".

    Order of preference:

    Type of DSL/Cable Modem
    Ethernet based external modem (RJ45 connector)
    Very desired
    USB based external modem (USB connector)
    Not desired
    Internal modem (PCI connector)
    Not desired


    Additional Information
    Resources: Utilities:
    • - Use this handy website to find out what your external WAN IP address is.