OpenSuse 11.1 Current Host Dns Server Address

Hi All,

Please could someone help me figure out how to list my hosts current DNS setup. It’s driving me a little nuts :wink:

Situation is as follows:

Host is multihomed, one static IP - my internal network, one Dynamic - assigned by my ISP.

I am runing my own DNS Server on the same host. Recently my ISP seems to have have some issue or other and relocated their DNS servers, as such my staic forwarders no longer worked. Removing the entry fixed the problem, however i’d really like to know where the requests are now forwarded to.

I’ve looked in both resolver.conf, and named.conf, neither of which list ipaddresses of the DNS servers (resolf.conf simply has the “search” entry and nothing else, named.conf has the forwarders section commented out.)

Is there some way of finding out exactly where my names are being resolved? I’m sure there must be and i’m just being dumb :smiley:

Thanks in advance

Colin

On Thu, 2009-09-10 at 18:56 +0000, ColJay wrote:
> Hi All,
>
> Please could someone help me figure out how to list my hosts current
> DNS setup. It’s driving me a little nuts :wink:

cat /etc/resolv.conf

for DNS. Others sources of host resolution available/searched might be
configured inside of /etc/nsswitch.conf

>
> Situation is as follows:
>
> Host is multihomed, one static IP - my internal network, one Dynamic -
> assigned by my ISP.
>
> I am runing my own DNS Server on the same host. Recently my ISP seems
> to have have some issue or other and relocated their DNS servers, as
> such my staic forwarders no longer worked. Removing the entry fixed the
> problem, however i’d really like to know where the requests are now
> forwarded to.

If your DNS doesn’t contain the data (cached or otherwise), then the
process begins with the top and goes down the zones in the “domain” of
the thing your searching for. Normal DNS behavior.

>
> I’ve looked in both resolver.conf, and named.conf, neither of which
> list ipaddresses of the DNS servers (resolf.conf simply has the “search”
> entry and nothing else, named.conf has the forwarders section commented
> out.)

resolv.conf

>
> Is there some way of finding out exactly where my names are being
> resolved? I’m sure there must be and i’m just being dumb :smiley:

Uh… yes and no on that one. DNS finds it… that’s all you’re really supposed to know. However, as I said, bascially it starts at the top finds the tld part, then the next, etc until you get some kind of answer back from a DNS server that “knows” the info… which may or may not be authoritative data (gets complicated). It’s designed to be hierarchical with caching so that lookups don’t get really inefficient… makes it scale pretty far.

If your isp is changing dns server addresses, either use a different forwarder address or change the local dns server to ‘ppd daemon sets forwarders’.
(This will make your dns server start at the tld server and work down.)
or
use a known dns server that is more stable.

To simplify what cjcox said:
The dns server starts at the top and asks the question:
What is the ipaddress of xxx domain?
The tldp server for the domain (.com, .co.uk, .net, etc.) has a choice of 2 answers:
Yes I know, it is ipaddress …
or
I don’t know but this server does.
This is repeated down the line until an answer is reached.
That is why there can only be one authorative server for the domain that knows all the answers for your domain.
Once it has discovered the answer, your local dns will cache/store the information for the length of time specified in the ttl (time to live) that has been set. If the ipaddress seldom changes, it will be a long time (weeks, say) but if it is a ddns (dynamic dns) it could be hours.
After the ttl, the server will repeat the process to find the new address.

ColJay wrote:
…]
> Is there some way of finding out exactly where my names are being
> resolved? I’m sure there must be and i’m just being dumb :smiley:

With ‘dig’ you can
E.g.
$dig +trace lists.opensuse.org

; <<>> DiG 9.5.0-P2 <<>> +trace lists.opensuse.org
;; global options: printcmd
… 163001 IN NS i.root-servers.net.
… 163001 IN NS l.root-servers.net.
… 163001 IN NS f.root-servers.net.
… 163001 IN NS d.root-servers.net.
… 163001 IN NS c.root-servers.net.
… 163001 IN NS e.root-servers.net.
… 163001 IN NS m.root-servers.net.
… 163001 IN NS b.root-servers.net.
… 163001 IN NS g.root-servers.net.
… 163001 IN NS h.root-servers.net.
… 163001 IN NS j.root-servers.net.
… 163001 IN NS a.root-servers.net.
… 163001 IN NS k.root-servers.net.
;; Received 492 bytes from ::1#53(::1) in 1 ms

/* As you can see, my own DNS gave me the address of the root name servers,
(for the ‘.’ domain to be exact) but had no other data at that time. */

org. 172800 IN NS C0.ORG.AFILIAS-NST.INFO.
org. 172800 IN NS D0.ORG.AFILIAS-NST.org.
org. 172800 IN NS A0.ORG.AFILIAS-NST.INFO.
org. 172800 IN NS A2.ORG.AFILIAS-NST.INFO.
org. 172800 IN NS B0.ORG.AFILIAS-NST.org.
org. 172800 IN NS B2.ORG.AFILIAS-NST.org.
;; Received 438 bytes from 192.228.79.201#53(b.root-servers.net) in 180 ms

opensuse.org. 86400 IN NS ns.novell.com.
opensuse.org. 86400 IN NS ns.novell.co.uk.
opensuse.org. 86400 IN NS ns2.novell.com.
;; Received 110 bytes from 2001:500:e::1#53(A0.ORG.AFILIAS-NST.INFO) in 104 ms

lists.opensuse.org. 600 IN A 195.135.221.135
opensuse.org. 600 IN NS ns.novell.co.uk.
opensuse.org. 600 IN NS ns.novell.com.
opensuse.org. 600 IN NS ns2.novell.com.
;; Received 174 bytes from 130.57.32.66#53(ns.novell.co.uk) in 12 ms

The rest of the data came from the responsible name servers down the tree.
See dig(1).

Theo

Hi All,

Thanks for your answers. Most useful. resolv.conf contents:
==============================================>

/etc/resolv.conf file autogenerated by netconfig!

Before you change this file manually, consider to define the

static DNS configuration using the following variables in the

/etc/sysconfig/network/config file:

NETCONFIG_DNS_STATIC_SEARCHLIST

NETCONFIG_DNS_STATIC_SERVERS

NETCONFIG_DNS_FORWARDER

or disable DNS configuration updates via netconfig by setting:

NETCONFIG_DNS_POLICY=’’

See also the netconfig(8) manual page and other documentation.

Note: Manual change of this file disables netconfig too, but

may get lost when this file contains comments or empty lines

only, the netconfig settings are same with settings in this

file and in case of a “netconfig update -f” call.

Please remove (at least) this line when you modify the file!

search homeplace.net
==============================================>

So only searches my local network. I’m thinking that running DNS on the box seems to be bypassing my ISP, and going straight for root servers - is that what DIG is telling me? (as below)

==============================================>
; <<>> DiG 9.5.0-P2 <<>> +trace forums.opensuse.org
;; global options: printcmd
. 512797 IN NS E.ROOT-SERVERS.NET.
. 512797 IN NS F.ROOT-SERVERS.NET.
. 512797 IN NS C.ROOT-SERVERS.NET.
. 512797 IN NS G.ROOT-SERVERS.NET.
. 512797 IN NS L.ROOT-SERVERS.NET.
. 512797 IN NS D.ROOT-SERVERS.NET.
. 512797 IN NS K.ROOT-SERVERS.NET.
. 512797 IN NS A.ROOT-SERVERS.NET.
. 512797 IN NS H.ROOT-SERVERS.NET.
. 512797 IN NS I.ROOT-SERVERS.NET.
. 512797 IN NS M.ROOT-SERVERS.NET.
. 512797 IN NS J.ROOT-SERVERS.NET.
. 512797 IN NS B.ROOT-SERVERS.NET.
;; Received 500 bytes from 127.0.0.1#53(127.0.0.1) in 1 ms

org. 172800 IN NS D0.ORG.AFILIAS-NST.org.
org. 172800 IN NS A0.ORG.AFILIAS-NST.INFO.
org. 172800 IN NS B0.ORG.AFILIAS-NST.org.
org. 172800 IN NS A2.ORG.AFILIAS-NST.INFO.
org. 172800 IN NS C0.ORG.AFILIAS-NST.INFO.
org. 172800 IN NS B2.ORG.AFILIAS-NST.org.
;; Received 439 bytes from 192.203.230.10#53(E.ROOT-SERVERS.NET) in 198 ms

opensuse.org. 86400 IN NS ns2.novell.com.
opensuse.org. 86400 IN NS ns.novell.co.uk.
opensuse.org. 86400 IN NS ns.novell.com.
;; Received 111 bytes from 199.19.57.1#53(D0.ORG.AFILIAS-NST.org) in 13 ms

forums.opensuse.org. 600 IN A 130.57.4.15
opensuse.org. 600 IN NS ns.novell.co.uk.
opensuse.org. 600 IN NS ns.novell.com.
opensuse.org. 600 IN NS ns2.novell.com.
;; Received 175 bytes from 137.65.1.2#53(ns2.novell.com) in 166 ms

==============================================>

Have also found a handy output file, seems to show my IP Config…

(names and numbers have been changed to protect the numpty… )
==============================================>
cat /var/lib/dhcpcd/dhcpcd-eth0.info

IPADDR=‘122.122.122.122’
NETMASK=‘255.255.255.0’
NETWORK=‘122.122.122.0’
BROADCAST=‘255.255.255.255’
MTU=‘1500’
ROUTES=’’
GATEWAYS=122.122.122.1’
HOSTNAME=‘Boxy’
DNSSERVERS=‘123.123.123.100 123.123.124.100’
DHCPSID=‘135.124.195.85’
LEASEDFROM=‘1252454545’
LEASETIME=‘55600’
RENEWALTIME=‘276900’
REBINDTIME=‘484103’
INTERFACE=‘eth0’
CLASSID=‘dhcpcd x.x.x’
CLIENTID=‘xx:xx:xx:xx:xx:xx:xx’
DHCPCHADDR=‘xx:xx:xx:xx:xx:xx’

==============================================>

Just thought i’d add to the post. Oh and it seems like the DNS servers are actually set to what i’d manually set them before :-D. Guess things are fixed :slight_smile:

Thanks for the info again folks :slight_smile:

Colin

ColJay wrote:
> Hi All,
>
> Thanks for your answers. Most useful. resolv.conf contents:
> ==============================================>
> ### /etc/resolv.conf file autogenerated by netconfig!
…]
> search homeplace.net

Not a good thing to use a routable address or hostname as local net name.
$whois homeplace.net
…]
Contact: toho@hcm.vnn.vn

Domain name: homeplace.net

Administrative Contact:

Satoshi Shimoshita (toho@hcm.vnn.vn)
+81.9099699999
Fax:
1-12-3-304,Furuishiba
Koto-ku, TOKYO 1350045
JP

You should use a name that ends in e.g. ‘.localhost’, which is reserved for these purposes.
http://en.wikipedia.org/wiki/Top-level_domain#Reserved_domains

> ==============================================>
>
> So only searches my local network. I’m thinking that running DNS on the
> box seems to be bypassing my ISP, and going straight for root servers -
> is that what DIG is telling me? (as below)

Yup.
If you want to specify another DNS server to test, you can use:
$dig @na.me.ser.ver domaim.tld

Theo

thanks Theo,

Not my actual home network there, i’m using .myhouse as my top level :). Guess i should have thought a bt longer when editing the data prior to posting.

Cheers Again

Colin