DNS is the process of converting names to numbers (IP addresses).

What is DNS?

Note: This is a very high level overview for end users. It is not a tech guide.

When you open your browser and type in www.google.com, your computer uses DNS to work out (look up) the IP address.

To put it another way, it's very similar to making a call on your mobile phone. If you type in 'Mum Home' on your mobile it won't be able to make the call unless it knows what the dial code and phone number is for 'Mum Home'.  Your mobile phone works this out by checking 'Mum Home' in the phone book (on your phone) and then dials the number. If it's not in the phone book you would use a directory service like 118118 - other services are available ;-)

DNS is a little more advanced though. Your compute first checks it's local DNS cache. If this doesn't have the number (IP address), it asks the next device (usually a Server or Router) on your network. If these don't know, it will ask your ISP.  If your ISP doesn't know it looks up the Name Server for the domain name you are querying.

It wouldn't be much fun having to remember loads of IP addresses. Just the same as it wouldn't be very user friendly if you had a mobile phone with 100's of phone numbers and no names against them.

What is TTL used for in DNS?

The TTL value (Time To Live) tells a name servers how long a DNS record should be stored locally for before checking again if the data has changed.  It would be like having a list of phone numbers and names on your phone with some having a low TTL (e.g. Checking every 15 minutes if Dave's mobile number has changed and others like 'Mum Home' with a long TTL, effectively saying, only check once a month if Mum's Home phone number has changed.

TTL's are set in seconds. Here's a few examples of the most common TTL values used.

300 seconds = 5 minutes
900 seconds = 15 minutes
1800 seconds = 30 minutes
3600 seconds = 1 hour
10800 seconds = 3 hours
86400 = 24 hours