Operating System - Linux
1823058 Members
3137 Online
109645 Solutions
New Discussion юеВ

what's exact difference between name server and resolver in BIND9 ?

 
SOLVED
Go to solution
'chris'
Super Advisor

what's exact difference between name server and resolver in BIND9 ?

hi

what's exact difference between Name Server and Resolver in BIND9 ?

what's stub resolver ?

kind regards
chris
5 REPLIES 5
Stuart Browne
Honored Contributor

Re: what's exact difference between name server and resolver in BIND9 ?

A few more details would help here.

A Name Server is something that a system's resolver queries. 'bind' is a name server.

Is there a specific place where the distinctions are confusing you? Give us the details we'll try to clear them up.
One long-haired git at your service...
Steven E. Protter
Exalted Contributor
Solution

Re: what's exact difference between name server and resolver in BIND9 ?

Chris,

This sounds like a language issue.

Name server is the box that turns names into numeric ip addresses

name resolver does the same thing, but may not be the box you are working on. Name resolvers are defined in /etc/resolv.conf

SEP
Steven E Protter
Owner of ISN Corporation
http://isnamerica.com
http://hpuxconsulting.com
Sponsor: http://hpux.ws
Twitter: http://twitter.com/hpuxlinux
Founder http://newdatacloud.com
'chris'
Super Advisor

Re: what's exact difference between name server and resolver in BIND9 ?

hi

that means, that name server will be configured
via named.conf and resolver via resolv.conf ?

is it wrong to put 127.0.0.1 to resolv.conf :

nameserver 127.0.0.1
nameserver 195.X.X.X
nameserver 195.X.X.X

by resolver ?

what does it do the resolver when can't find a DNS query by nameserver in resolv.conf ? does it look by forwarders at named.conf ?

is it "caching-only name server" a resolver
or name server ?

greeting
chris


Steven E. Protter
Exalted Contributor

Re: what's exact difference between name server and resolver in BIND9 ?

resolv.conf

Tells the box where to resolve names it can not resolve itsself. Usually it points to a public DNS server on the Internet so that if you need to visit Red Hat or Yahoo its possible.

You do not need BIND installed at all to get name resolultion by resolv.conf.

That is a function that has been built into the operating system for some years.

>>
what does it do the resolver when can't find a DNS query by nameserver in resolv.conf ?
>>
This means that a request for resolution was made and the three sources of that resolution in resolv.conf were not able to get an answer. This can be due to the inability to access the servers in resolv.conf or the request was simply not for a name that exists anywhere on the Internet.

>>
does it look by forwarders at named.conf ?
>>

No, when nslookup, the os or dig tries to resolve a name resolution request they do not necessarily look at fowarders in the resolv.conf file.

That configuration is designed to tell the DNS/BIND named server how to resolve requests that its supposed to resolve, usually internal domain names.

Its entirely possible to have issues without BIND installed.

I'll give you a scenario:
1) no BIND, you get the error, it has nothing to do with this machine
2) This server has BIND but does not list itself in resolv.conf as a name resolver so the error STILL has nothing to do with itself
3) The server lists itself as a name resolver, but not the first and one of the earlier listed servers has a problem, generates the error and it STILL has nothing to do with this server.
4) This server lists itself as a primary name resolver and it gets the error for a Domain it does not server. In this scenario the problem is STILL not on this box.
5) This server lists itself as a Name server and there is a problem with one of the domains it servers. Then a a configuration issue in named.conf can be involved. If however this box just caches, the problem is more likely to be in the MASTER server than this box.

The key thought to understand is that resolv.conf works without BIND installed locally. How it behaves can have nothing to do with named.conf but might. Whether or not it does depends on what kind of server it is and what it is supposed to do.

SEP
Steven E Protter
Owner of ISN Corporation
http://isnamerica.com
http://hpuxconsulting.com
Sponsor: http://hpux.ws
Twitter: http://twitter.com/hpuxlinux
Founder http://newdatacloud.com
Andrew Cowan
Honored Contributor

Re: what's exact difference between name server and resolver in BIND9 ?

"is it wrong to put 127.0.0.1 to resolv.conf :

nameserver 127.0.0.1"

This is not wrong it simply means that this machine is running DNS/named. In this case it makes perfect sense to try the localhost first as its bound to be faster than having to access the net.

"what does it do the resolver when can't find a DNS query by nameserver in resolv.conf ? does it look by forwarders at named.conf ?

is it "caching-only name server" a resolver
or name server ?"

A caching-only server is one that holds no direct data, and simply caches the results of previous queries, whereas primary and secondary servers actually store a complete database for any domains that they hold authority for.

The resolver should consult each server as listed in order from "/etc/resolv.conf", passing to the next once a request times-out. Each nameserver should have a cache-hints file that contains a list of the root-nameservers. When a nameserver sends a reply saying that it does not hold data for a particular domain, it should trigger a recursive lookup that will be forwarded to a root name server, which should then generate another query that references the next domain level. These requests are repeated until the nameserver that holds the SOA record for the target domain is located. That nameserver should then answer the actual query and return the IP-address of the target.

If this does not appear to be happenning, you should use "nslookup" or "dig" using the debug option to see the point at which your query is failing.