# Explaining Domain Name Service

**URL:** <https://boards.straightdope.com/t/explaining-domain-name-service/553395>\
**Category:** Factual Questions\
**Created:** [September 11, 2010, 12:43pm UTC](https://boards.straightdope.com/t/explaining-domain-name-service/553395 "2010-09-11T12:43:26Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![rbroome](https://avatars.discourse-cdn.com/v4/letter/r/838e76/32.png) [@rbroome](https://boards.straightdope.com/u/rbroome)\
**Post date:** [September 11, 2010, 12:43pm UTC](https://boards.straightdope.com/t/explaining-domain-name-service/553395/1 "2010-09-11T12:43:26Z")

</div>

I do not understand how our modern domain name service (of course: DNS) works.

Hopefully some knowledgable dopers will fight my ignorance and explain the workings.

For background, here is the wikipedia page:

> **[Domain Name System](https://en.wikipedia.org/wiki/Domain_Name_System)**
>
> The Domain Name System (DNS) is a hierarchical and distributed naming system for computers, services, and other resources in the Internet or other Internet Protocol (IP) networks. It associates various information with domain names (identification strings) assigned to each of the associated entities. Most prominently, it translates readily memorized domain names to the numerical IP addresses needed for locating and identifying computer services and devices with the underlying network protocols....

Here are some questions.

What software on my computer actually does the work of translating names to IPs? Since this function has to happen on any networked computer, I am hoping we can keep the answers OS independant.

When my computer sends out a DNS resolution request, it is a specially formed packet is it not? Of course it is TCP, but isn’t it recognizable at the packet addressing level (a router doesn’t have to open the packet to know what it is). The reason I ask is it seems in my experience ISPs don’t make it easy to use other DNS servers. And if they are so concerned, they could program their routers to resolve DNS requests themselves regardless of what the destination address on the packet is.

I have another thread where I am troubleshooting a DNS problem for a new DSL setup.

> **[DSL blocked by Direct TV?](https://boards.straightdope.com/sdmb/showthread.php?t=577461)**
>
> In the US. My daughter just moved into an apartment where the only TV service is Direct TV. She didn’t mind because she isn’t interested in TV. However, when she went to sign up for Internet access AT&T sold her a DSL account but it will not...

There is a case where everything works except the DNS. It is as if the ISP isn’t handling the address resolution packets as I think they should.

In a modern big ISP dominated world, how do I redirect DNS resolution requests to a DNS server of my choice? Will just putting the Google DNS IP (8.8.8.8) into my network panel work? That is what I do, but I am not convinced my ISP actually honors that request.

Does anyone know whether ISPs redirect or intercept DNS requests?

Any insight or additional questions would be most appreciated.  
Thanks

---

<div class="post-metadata">

**Author:** ![qpw3141](https://avatars.discourse-cdn.com/v4/letter/q/6bbea6/32.png) [@qpw3141](https://boards.straightdope.com/u/qpw3141)\
**Post date:** [September 11, 2010, 12:57pm UTC](https://boards.straightdope.com/t/explaining-domain-name-service/553395/2 "2010-09-11T12:57:54Z")

</div>

> [@rbroome](#):
>
> The reason I ask is it seems in my experience ISPs don’t make it easy to use other DNS servers. And if they are so concerned, they could program their routers to resolve DNS requests themselves regardless of what the destination address on the packet is.

Why do you think the ISP’s make it difficult? (Or, in what way are they making it difficult?)

On my machines I just open a dialogue box and enter the dotted quad for the primary and secondary DNS. That’s all there is to it! The ISP is not involved at all.

---

<div class="post-metadata">

**Author:** ![GiantRat](https://avatars.discourse-cdn.com/v4/letter/g/e47c2d/32.png) [@GiantRat](https://boards.straightdope.com/u/GiantRat)\
**Post date:** [September 11, 2010, 12:58pm UTC](https://boards.straightdope.com/t/explaining-domain-name-service/553395/3 "2010-09-11T12:58:25Z")

</div>

The basics of DNS are pretty simple - think of a phone book. You look up Bob Smith (or Google) and you get a phone number (or IP address). It’s an idiot scheme that lets us human folks, who tend to remember words more easily than numbers.

There are some emerging technologies (OpenDNS, for example) that slightly complexify the concept, but… they’re still “phone books.”

My guess would be that, in the next 10 years or so, DNS as we know it currently will become somewhat deprecated due to security considerations. But that could just be the security guy in me worrying about DNS poisoning.

---

<div class="post-metadata">

**Author:** ![arseNal](https://avatars.discourse-cdn.com/v4/letter/a/ecae2f/32.png) [@arseNal](https://boards.straightdope.com/u/arseNal)\
**Post date:** [September 11, 2010, 1:56pm UTC](https://boards.straightdope.com/t/explaining-domain-name-service/553395/4 "2010-09-11T13:56:00Z")

</div>

> [@rbroome](#):
>
> In a modern big ISP dominated world, how do I redirect DNS resolution requests to a DNS server of my choice? Will just putting the Google DNS IP (8.8.8.8) into my network panel work? That is what I do, but I am not convinced my ISP actually honors that request.

Why aren’t you convinced of this? Simple test: does name resolution work when you have it set to 8.8.8.8? Now does it work when you have it set to 100.100.100.100? (Make sure your OS isn’t caching lookups when you perform this test.)

If you want to debug DNS issues, use a tool like nslookup or dig, depending on OS.

> [@](#):
>
> Does anyone know whether ISPs redirect or intercept DNS requests?

I suppose they could if they wanted to, but I doubt that many do.

---

<div class="post-metadata">

**Author:** ![RaftPeople](https://avatars.discourse-cdn.com/v4/letter/r/6f9a4e/32.png) [@RaftPeople](https://boards.straightdope.com/u/RaftPeople)\
**Post date:** [September 11, 2010, 5:12pm UTC](https://boards.straightdope.com/t/explaining-domain-name-service/553395/5 "2010-09-11T17:12:23Z")

</div>

> [@arseNal](#):
>
> > [@rbroome](#):
> >
> > In a modern big ISP dominated world, how do I redirect DNS resolution requests to a DNS server of my choice? Will just putting the Google DNS IP (8.8.8.8) into my network panel work? That is what I do, but I am not convinced my ISP actually honors that request.
> 
> Why aren’t you convinced of this? Simple test: does name resolution work when you have it set to 8.8.8.8? Now does it work when you have it set to 100.100.100.100? (Make sure your OS isn’t caching lookups when you perform this test.)
> 
> If you want to debug DNS issues, use a tool like nslookup or dig, depending on OS.
> 
> > [@](#):
> >
> > Does anyone know whether ISPs redirect or intercept DNS requests?
> 
> I suppose they could if they wanted to, but I doubt that many do.

I remember something on slashdot last year where comcast was intercepting dns requests even when the user was trying to use a different dns server. Not sure what the outcome of this was.

---

<div class="post-metadata">

**Author:** ![Reply](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/reply/32/15952_2.png) [@Reply](https://boards.straightdope.com/u/Reply)\
**Post date:** [September 11, 2010, 5:15pm UTC](https://boards.straightdope.com/t/explaining-domain-name-service/553395/6 "2010-09-11T17:15:19Z")

</div>

I don’t think the software on your computer does a whole lot in terms of DNS; it sends out the query to a remote DNS server, which gives you back an IP address to connect to. Your hosts file can specify manual routings, but aside from that, your system should be going with whatever your ISP or other DNS server tells you.

Like arseNal said, just try it out with either a browser or nslookup. You can also download Wireshark (a packet inspector) if you want to see the raw traffic. Here is [a page that seems to analyze a sample DNS query](http://www.firewall.cx/dns-query-format.php) (I didn’t read it).

---

<div class="post-metadata">

**Author:** ![Reply](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/reply/32/15952_2.png) [@Reply](https://boards.straightdope.com/u/Reply)\
**Post date:** [September 11, 2010, 5:16pm UTC](https://boards.straightdope.com/t/explaining-domain-name-service/553395/7 "2010-09-11T17:16:22Z")

</div>

> [@RaftPeople](#):
>
> > [@arseNal](#):
> >
> > Why aren’t you convinced of this? Simple test: does name resolution work when you have it set to 8.8.8.8? Now does it work when you have it set to 100.100.100.100? (Make sure your OS isn’t caching lookups when you perform this test.)
> > 
> > If you want to debug DNS issues, use a tool like nslookup or dig, depending on OS.
> > 
> > I suppose they could if they wanted to, but I doubt that many do.
> 
> I remember something on slashdot last year where comcast was intercepting dns requests even when the user was trying to use a different dns server. Not sure what the outcome of this was.

I think now they allow you to opt-out. Other ISPs have since started doing similar things – it’s free ad avenue for them whenever someone types in an invalid URL. Ugh.

---

<div class="post-metadata">

**Author:** ![si\_blakely](https://avatars.discourse-cdn.com/v4/letter/s/d9b06d/32.png) [@si\_blakely](https://boards.straightdope.com/u/si_blakely)\
**Post date:** [September 12, 2010, 5:36pm UTC](https://boards.straightdope.com/t/explaining-domain-name-service/553395/8 "2010-09-12T17:36:12Z")

</div>

The only way you could figure out if your ISP is transparently redirecting DNS requests is by looking at the resolver information (nslookup shows this, but is generally deprecated), or the results for a failed lookup (either a fail from a properly configured DNS of your choice, or a search page from some provider).

An ISP would do this if they make money of the search redirection, or if they feel too much DNS traffic is going off-network.

Si
