Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

If we have an IP-based system of identifying nodes on the Internet why is there a need for DNS?

share|improve this question

migrated from stackoverflow.com Aug 13 '09 at 20:26

This question came from our site for professional and enthusiast programmers.

47  
Because www.google.com is just a TAD easier to remember then 74.125.67.100? –  ChssPly76 Aug 13 '09 at 20:20
6  
I absolutely love that three of us immediately pinged Google in response to this question. –  Eric Aug 13 '09 at 20:21
5  
Sounds more like material for 69.59.196.212 erm... I mean serverfault.com. There, they can explain about how DNS names are easier to memorize, complain about the complexity of IPv6 and talk about how load balancing allows mapping one host name to X servers, how host headers work etc. etc. :-) –  Michael Stum Aug 13 '09 at 20:21
5  
Before DNS was invented, people didn't memorize IP addresses -- they exchanged /etc/hosts files. –  Josh Sep 22 '09 at 2:37

18 Answers 18

Because www.google.com is a lot easier to remember than 64.233.169.147?

It also adds transparency to a services location. You can move both geographically and between IP blocks and the rest of the world doesn't have to be notified of that change to continue using your service.

share|improve this answer
8  
Well, ain't you fancy. –  Eric Aug 13 '09 at 20:24
6  
There is more than one google server. People will get different numbers depending on where they are and which server responds. –  Troggy Aug 13 '09 at 20:38
2  
@Troggy: Smartass. :P –  Sasha Chedygov Aug 13 '09 at 20:46

Although everybody else suggests that DNS is not necessary for the internet to work, I disagree. DNS is not necessary for an IP based network to work but for the Internet as we know it today it is absolutely necessary!!

share|improve this answer
11  
+1. There is a HUGE number of name-based virtual hosts that will not work without DNS –  ChssPly76 Aug 13 '09 at 20:24
1  
+1 again :-) I wonder whether that's a bug (that I can up-vote again after migration)? –  ChssPly76 Aug 13 '09 at 20:31
1  
You could use host files :) –  Matthew Whited Aug 13 '09 at 20:31
7  
Pls send me the latest copy of the Internet's host file. Mine is missing a few sites. –  Kevin Panko Aug 25 '09 at 19:14

If I register a domain name with godaddy and don't like godaddy anymore I can go to another provider and keep my domain name.

The same thing isn't possible with IP addresses as IP addresses are alocated to specific companies and are nothing that you can take with you.

share|improve this answer
1  
This; IP addresses are bound to network topology. –  Tobu Jun 26 '10 at 19:53

Not only does DNS map human-readable names to IP addresses, it also decouples the client from specific details of the network endpoint it wants to connect to.

That allows providers of services to implement high availability systems and change implementation details without impacting their clients.

share|improve this answer

Absolutely it could! But you'd have a huge list of entries in /etc/hosts.

Seriously, though. "the internet" (the system of machines which deliver content to a user) would continue to work fine. "the web" (the collection of easy to find information transported over "the internet") would quickly break down because nobody (except the true geeks) would remember the IP Address to get to Google.

share|improve this answer
6  
+1 for the differentiation between the internet and the web –  hasenj Aug 25 '09 at 20:34

Because I don't want to remember that Google is 74.125.45.100.

share|improve this answer

You only need DNS to translate a domain name (e.g. www.google.com) into an IP (74.125.45.100). If everything is IP based, then you don't need DNS.

share|improve this answer

With DNS, one IP address can serve websites for multiple domains. (At least if they are running HTTP/1.1.) Without DNS, every website would basically require a dedicated IP address, and those would run out pretty fast.

share|improve this answer
1  
...and we're thankful for that indeed! I remember having a quarter of an old Class C tied up just on one computer, hosting a bunch of simple static websites. We were so happy when virtual hosting became available and we could collapse that down to a single IP! –  Brian Knoblauch Jun 24 '10 at 17:28

The difference between an IP and a DNS name is that the IP specifies the servers location, while the DNS name allows you to specify the service itself. The big win that you get by DNS isn't so much that an DNS name is easier to remember, but that you have an layer of abstraction between the service and its implementation. So the underlying implementation can change, the servers can move around without the user noticing it.

Could the Internet work without it? Not for long, as one of the first things to do would be to implement a DNS-like service to workaround all the trouble that a lack of DNS would produce. Without DNS hyperlinks to other webpages would for example break way to easily, so that the world wide web wouldn't be able to function properly.

In a sense DNS is a very basic form of a content addressesable network, in that you say what you want, but not how to get there. You say www.google.com, because you know google does search, but you don't know where on the earth the server is located you end up taking to in the end, all that is abstracted away from you thanks to DNS.

share|improve this answer

Same reason you can store names in your mobile phone to reference phone numbers :)

There's no requirement for it. Its pure luxury

share|improve this answer

Everyone here seems to be forgetting that without DNS, memorizing IP addresses isn't the only option. ARPANET didn't have DNS, and that's where the hosts file originated. From Wikipedia:

The ARPANET, the predecessor to the Internet, had no distributed host name database, such as the modern Domain Name System for retrieving a host's network node address by using the host's name. Each network node maintained its own map of the network nodes that it needed to know about and assigned them names that were memorable to the user. [...] The small size of the ARPANET made the use of hosts files practical [...] however, the maintenance of the hosts file became a larger burden on system administrators [... and] the centralized and monolithic nature of host files eventually necessitated the creation of the distributed Domain Name System.

share|improve this answer

Without any sort of DNS, Google could act as a 'sort of' DNS, letting people find websites (wheras today you'd go to xyz.com, in DNS-less world you'd go to 75.125.127.100 and google xyz, and it'd give you that way)

The internet would work. Is it an internet I want to be a part of? Hell no.

share|improve this answer

There are some cases where "The internet" does not need DNS - for example, if you're exclusively using protocols which don't require DNS (Most peer-to-peer file sharing programs, for example).

Also some private internets have no need for DNS (but most use www to some extent, which usually means they do have it anyway).

share|improve this answer

There may be some webservers that have multiple sites on them that share the same IP and port for traffic so that DNS is how the different sites are used.

share|improve this answer

Here is a good reason for keeping locators (IPs) and identifiers (domain names) separate: RFC 5887. If you merge two companies and need their networks to become one, you'd better hope their networks were configured using identifiers and not locators.

share|improve this answer

Yes, the Internet "works" without DNS. IP packets are routed based on IP addresses and subnet mask. The various routers between the source and destination do not care about human readable aliases.

However, for humans, "www.google.com" is a lot easier to remember than "74.125.225.209" for the same reason that "1600 Amphitheatre Parkway" is easier to remember than "37.423156,-122.084917". In both cases the same information is being conveyed, but also in both cases one is significantly easier to remember. For humans, anyway.

share|improve this answer

The internet itself, at a low level? Certainly - the entire point of an ip address, and the entire IP stack is to help route packets from one place to another with the help of other protocols, none of which rely on the domain name system.

On the other hand, the DNS system allows for a few nice things - firstly, that it allows for human friendly ways to find a host. Secondly, for protocols that are aware of DNS like HTTP, you can choose what content to send based on the intended destination (for example, virtualhosts), which allow for more efficient use of available resources, as well as make use of things like multicasting, geographical routing to nearer servers and other fancy things that make life easier.

Will the internet 'work' without DNS? Absolutely. Will it be an utter pain? Probably - and if DNS broke tommorrow, a lot of services on the internet would be broken.

share|improve this answer

No. The Stack Exchange network can't work without DNS.

To prove it, let's find out the IP of stackoverflow.com:

$ host stackoverflow.com
stackoverflow.com has address 198.252.206.16

Go to that in your browser and you will get an error page saying:

Couldn't find 198.252.206.16

The Q&A site 198.252.206.16 doesn't seem to exist…yet.

(I'm sorry I can't link to it, Stack Exchange won't let me input a link to an IP.

This is what you get if you go to a Stack Exchange site that doesn't exist, like hsdkgujahr.stackexchange.com, except it says "The Q&A site hsdkgujahr.stackexchange.com doesn't seem to exist…yet."

Now let's check the IP of superuser.com:

$ host superuser.com
superuser.com has address 198.252.206.16

Notice that the IP addresses are exactly the same. In fact, if you do a DNS lookup for any Stack Exchange site, you get the same IP.

If a single IP is mapped to multiple websites, how does the server know which website?

The answer is that the HTTP header Host is being sent to the server with the request, and it contains the fully qualified DNS name of the server.

So, without DNS, you can't get to your favorite Stack Exchange sites (or SourceForge project sites, they work the same way).

share|improve this answer
1  
-1: Disable your DNS server, add 198.252.206.16 stackoverflow.com to your Hosts file, and then try going to stackoverflow.com and you'll find it works even though you've just disabled DNS. Practical? No way. But the internet can function without DNS. You just won't be able to get the IP for various sites. –  Josh Feb 4 at 14:09

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.