What are DNS Resolvers and How Do They Work?

This short post is about how a DNS resolver works. I also quickly cover the best way to obtain a DNS resolving service.

Please note that I am not going into the specifics on how to setup a DNS resolver. There are plenty of online tutorials for you to follow if you wish to pursue that option.


What is a DNS resolver? Simply put, a DNS resolver contacts a domain name’s DNS server and asks it for information.

A DNS resolver will also do something called caching. When a DNS resolver caches, it is “remembering” the information it previously obtained from a DNS server.

A DNS resolver that caches can save a lot of time that would be wasted looking up a domain name that had just been looked up earlier.

DNS caching is like writing down information on a sticky note, so you can quickly look at it later, instead of having to ask the person for the info all over again.


Here is a simplified example of how a DNS resolver works:

1.   Alex types into his web browser example.com

2.   Alex’s web browser then contacts the DNS resolver (that his computer is set to use).

3. The DNS resolver goes to a root server and get the IP address for the TLD (e.g., com, net, org, etc.) server it needs to access.

3.   The DNS resolver then goes to ns1.example.com (the DNS name-server that the TLD server provided), and asks the name-server for the IP address of example.com

4.   The DNS resolver then relays the information it receives to Alex’s computer. In addition, the DNS resolver caches the retrieved information for later use.

5.   Alex’s web browser now knows where example.com is located (the IP address), and starts retrieving the website.


Posted in Computers, Internet and Servers, Operating Systems

When Should You Update Software?

Software updates are one of the things that can cause pain for server and network administrators.  They do not have the luxury to just click an “upgrade to next version” button like you would see on a WordPress website.  There is usually more involved when updating software.

When you have a new software (or operating system) you can upgrade to, there are a few things to check out first.

(Not an exhaustive list)

  1. Does it have any features that are beneficial to my daily work?
  2. Does it have any features that have been removed?
  3. Will the currently running software work with the new OS, or have people complained about the software not working correctly?
  4. Will your hardware work with the new software?
  5. How much downtime will an upgrade incur?
  6. If a lot of downtime will occur, is there a way to minimize the downtime?

Whenever you want to use a newer OS, you should always perform a fresh install on the computer. Never just do an in-place upgrade.  This is a very good way to mess things up on the computer.  Even if the in-place upgrade (not a fresh install) seems to work fine, there may be small issues that will pop-up later that you are not aware of.  Then you will wish you had done a fresh install in the first place. 🙂

Also, whenever you want to update a piece of software, always make sure you are using a “stable” release of the software.  Never run Beta, RC, Alpha, or any “not finished” software in production.  This can cause you grief that you could have avoided.


Posted in Computers, Internet and Servers, Operating Systems, Programming, Software

Always Check Your System for Memory Problems

Have you ever tested your computer’s memory (RAM) before for errors? If not, it would be a good idea to. Why? I’ll explain.

System memory stores temporary information for programs to quickly access. System memory is 100+ times faster than conventional hard drives, and thus minimizes delays in programs that you are running.

Programs depend upon the memory to be reliable, otherwise program malfunctions may occur (sometimes serious malfunctions).

For instance, say one of your memory sticks is bad, and this memory stick happens to be storing information containing an online order you are submitting to an online retailer. Now since this memory stick is bad, the debit card # you entered (e.g., 1111 2222 3333 4444) ends up being (e.g., 1111 2222 3333 4445)!

You see what happened? The last digit [ 4 ] became a [ 5 ]!  This would obviously cause a problem with your order. This is just one example of many potential problems you may have when dealing with bad system memory.

Other symptoms of bad memory are:  Blue Screen of Death (or Kernel Panic on Linux), outright programs crashes, and corrupt files.

So what can you use to test your system memory? Well a couple of programs I have used are MemTest86+  or  PassMark’s MemTest V7.1. These programs do not run in Windows. These programs require to be run by CD, USB drive, or any other bootable device.  You can Google these programs to find the downloads.

In my opinion, you need to run these tests for at least 3 complete passes* (with no errors) before considering your system memory to be reliable.

* A “pass”  =  a complete system memory test; so 3 “passes” means 3 complete tests


Posted in Computers, Internet and Servers, Operating Systems, Software

Gone Full-SSL Encryption on My Blog

I have finally gone full-SSL encryption on my blog. You should notice the lock symbol to the left (maybe right…depends upon the web browser you are using) of the URL in your browser.

What this means is that all your communication to my server is encrypted and the chance of someone decrypting your communication to my server is small.

More and more the World Wide Web is going SSL-only (encryption) for communications, regardless of the actual confidentiality of the information being transmitted.

Since there are people and organizations out there trying their hardest to invade people’s privacy, SSL encryption all the more has become necessary.


Posted in Computers, General, Internet and Servers, Operating Systems, Software