jxself.org

Your own privacy-aware, personally controlled server, part three

Fri, 3 Aug 2012

This is part three of a series. I'm going to assume that you've already read the first and second parts.

The next part to consider is your connection to the internet.

When you're connected to the internet your computer has an IP, or Internet Protocol, address. Your ISP may assign one to you dynamically from a pool of available addresses and it will change periodically. On the other hand your IP address may be static and never change. If you're not sure whether your have a static or dynamic IP address your ISP can tell you.

While it's possible to run your server with either a static or dynamic IP address there are some additional technical considerations to be made if your IP address is going to change periodically. Since your server will receive data from the internet it needs to be possible for other machines on the internet to connect to you. I briefly mentioned DNS in my last article, explaining how it's used to to change human-friendly names like example.me into IP addresses. At a very basic level you can think of it as a mapping between domain names and IP addresses. If your IP address changes this mapping needs to be updated or other machines on the internet will no longer be able to connect to you and browse whatever websites you might host, deliver email, etc.

In addition to the need to continually update the domain name to IP address mapping whenever your IP address changes, which can be automated, it can also introduce a delay from the time when your IP address changes and when other machines on the internet are finally able to see the new IP address that your domain name maps to. This delay is because other machines on the internet will usually cache the information about what IP address a given domain name maps to, rather than look it up each time. During this time period, which you can work to minimize but never fully eliminate, other machines on the internet may be unable to connect to you. This can be compounded if your IP address changes frequently. How often a dynamic IP address changes is really up to your ISP.

In comparison, if you have a fixed IP address this need to update the the domain name to IP address mapping and the period where your server may be unavailable to others isn't an issue. Having a static IP address also means that you have one less process that could go wrong (that of updating the domain name to IP address mapping) and need troubleshooting. As servers go, "less is more."

As you plan your new server it's important to be aware of the difference between a static and dynamic IP address. As I continue to write these articles I'll be sure to address the needs of people using both kinds but I recommend using a static IP address whenever possible. Your ISP can set you up with one. They may charge extra for this but I think it's definitely worth it.