RE: Slaves and views

2011-03-07 Thread Todd Snyder
 With a static-stub zone (new in BIND 9.8), your server would not prime its 
 cache with the bad NS
 rrset from the authoritative server. It would simply start all query 
 resolution for the domain in
 question (possibly bigger than the zone) at that server, thus bypassing the 
 bad NS rrset.

Then, what is the different between static-stub and a forwarding zone?

My understanding .. I am sure there are others here who can speak more 
authoritatively or with more correct terminology, but:

A forwarder simply forwards all queries to the indicated servers, and expects 
an answer back.

A stub will tell the resolver for any zones matching this one, use these 
nameservers.  The resolver will use them like normal NS records, not expecting 
them to give an answer necessarily (could simply give back a referral).  
Basically, it's short cutting the delegation process, but that's it, the server 
still has to do all the work.

Cheers,

Todd.



-
This transmission (including any attachments) may contain confidential 
information, privileged material (including material protected by the 
solicitor-client or other applicable privileges), or constitute non-public 
information. Any use of this information by anyone other than the intended 
recipient is prohibited. If you have received this transmission in error, 
please immediately reply to the sender and delete this information from your 
system. Use, dissemination, distribution, or reproduction of this transmission 
by unintended recipients is not authorized and may be unlawful.
___
bind-users mailing list
bind-users@lists.isc.org
https://lists.isc.org/mailman/listinfo/bind-users


IXFR manually edited zone files

2011-03-07 Thread David Coulthart
BIND Version: 9.7.3 on Solaris 9  10 (locally compiled)

Our current workflow for managing DNS involves generating master zone files 
from a database, pushing the new files to a hidden master nameserver  then 
running rndc reload on that nameserver.

Based on the ARM  a posting to bind-users[1], I enabled ixfr-from-differences 
master; on the hidden master expecting the master nameserver would generate a 
diff from the previous zone file in memory and the new one being loaded so it 
could send an IXFR to the slaves.  However, every time the slave requests an 
IXFR, it gets a non-incremental response  has to perform a full AXFR.  I've 
configured this in a test environment with a single zone file so I know the 
slave has the first version of the zone file before loading the second version 
on the master  it still results in a AXFR-style IXFR.  I've explicitly stated 
the options allow-query  allow-transfer in the config, but I do not have 
allow-updates configured, relying on the implicit default of denying all 
updates.

Is there something I'm missing to get this working?

Thanks,
Dave Coulthart

1.  https://lists.isc.org/pipermail/bind-users/2010-January/078591.html
___
bind-users mailing list
bind-users@lists.isc.org
https://lists.isc.org/mailman/listinfo/bind-users


Re: IXFR manually edited zone files

2011-03-07 Thread David Coulthart
On Mar 7, 2011, at 11:42 AM, Chris Thompson wrote:
 On Mar 7 2011, David Coulthart wrote:
 BIND Version: 9.7.3 on Solaris 9  10 (locally compiled)
 
 Our current workflow for managing DNS involves generating master zone
 files from a database, pushing the new files to a hidden master nameserver
  then running rndc reload on that nameserver.
 
 Based on the ARM  a posting to bind-users[1], I enabled 
 ixfr-from-differences
 master; on the hidden master expecting the master nameserver would generate
 a diff from the previous zone file in memory and the new one being loaded
 so it could send an IXFR to the slaves.  However, every time the slave
 requests an IXFR, it gets a non-incremental response  has to perform a
 full AXFR.  I've configured this in a test environment with a single zone
 file so I know the slave has the first version of the zone file before
 loading the second version on the master  it still results in a AXFR-style
 IXFR.  I've explicitly stated the options allow-query  allow-transfer
 in the config, but I do not have allow-updates configured, relying on
 the implicit default of denying all updates.
 
 Is there something I'm missing to get this working?
 
 Have you tested that the ixfr-from-differences is working at all at
 the hidden master? E.g. by
 
 dig ixfr=[some-old-serial] [zone-name] @[hidden-master]
 
 from the slaves (or indeed elsewhere).

In my initial testing I enabled debug level 3 on both the master  slave.  In 
the slave's log I saw the following:

transfer of 'example.com/IN' from 128.59.59.124#53: requesting IXFR for serial 
2011030701
transfer of 'example.com/IN' from 128.59.59.124#53: sent request length prefix
transfer of 'example.com/IN' from 128.59.59.124#53: sent request data
transfer of 'example.com/IN' from 128.59.59.124#53: got nonincremental response

I just tested again using dig as you described above and still got a full AXFR 
even when specifying the serial # that was in the zone file before the reload.  
From the master's log:

client 127.0.0.1#34246: zone transfer 'example.com/IXFR/IN' approved
client 127.0.0.1#34246: transfer of 'example.com/IN': AXFR-style IXFR started
client 127.0.0.1#34246: transfer of 'example.com/IN': AXFR-style IXFR ended

 There is also a named-journalprint utility which you can apply to the
 journal file on the master to check it contains what you hope for.

I don't see a journal file being created on the master after I do the reload.  
The only messages in the master's log about a journal are on initial startup:

zone example.com/IN: starting load
zone example.com/IN: number of nodes in database: 256
no journal file, but that's OK
zone example.com/IN: journal rollforward completed successfully: no journal
zone example.com/IN: loaded
decrement_reference: delete from rbt: 2468d0 example.com
zone_settimer: zone example.com/IN: enter
zone example.com/IN: loaded serial 2011030701

On rndc reload, I don't see any mention of a journal being created or destroyed:

zone example.com/IN: starting load
dns_zone_maintenance: zone example.com/IN: enter
zone_settimer: zone example.com/IN: enter
zone_loaddone: zone example.com/IN: enter
zone example.com/IN: number of nodes in database: 766
zone example.com/IN: loadeddecrement_reference: delete from rbt: 246ed0 
example.com
replacing zone database
calling free_rbtdb(example.com)
adjust_quantum - 325
zone_settimer: zone example.com/IN: enter
zone example.com/IN: loaded serial 2011030702 
done free_rbtdb(example.com)

Based on the description of ixfr-from-differences in the ARM, I think a journal 
file should be created.  I have named running as user named, but I've checked 
permissions on the directory  zone file  confirmed that named can create 
files in the directory containing the zone file.

 If those look OK, then it's something else in the configuration of
 either master or slaves. I take it you aren't doing anything as
 obvious as specifying request-ixfr no or provide-ixfr no in
 server statements.

I do not explicitly set these options in my config, relying on them defaulting 
to yes.

Thanks for your help Chris.

Dave Coulthart
___
bind-users mailing list
bind-users@lists.isc.org
https://lists.isc.org/mailman/listinfo/bind-users


Re: different behavior: A Records in DNS answer, when query of type any (existing CNAME)

2011-03-07 Thread Kevin Darcy

On 3/7/2011 6:36 AM, Diezig Adrian wrote:


Hi,

I have a question concerning answers from DNS servers, when I query a 
name with type any and the name is a CNAME.


I have the following example (works also in Internet) with an ISC BIND 
server (BIND 9.7.0-P1):


;  DiG 9.3.6-P1-RedHat-9.3.6-4.P1.el5_4.2  
@newton.genesiscom.ch dns.ipam.ch


; (1 server found)

;; global options:  printcmd

;; Got answer:

;; -HEADER- opcode: QUERY, status: NOERROR, id: 25078

;; flags: qr aa rd; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:

;dns.ipam.ch.   IN  A

;; ANSWER SECTION:

dns.ipam.ch.600 IN  CNAME   www.ipam.ch.

www.ipam.ch.600 IN  A   81.18.25.238

;; Query time: 1 msec

;; SERVER: 10.10.3.13#53(10.10.3.13)

;; WHEN: Mon Mar  7 11:52:38 2011

;; MSG SIZE  rcvd: 63

As you can see, we have a CNAME dns.ipam.ch that points to www.ipam.ch.

www.ipam.ch is an A-Record to 81.18.25.238.

When I do the following query (type=any to dns.ipam.ch), only the 
CNAME itself will be in the answer section (the A-Record not):


;  DiG 9.3.6-P1-RedHat-9.3.6-4.P1.el5_4.2  
@newton.genesiscom.ch dns.ipam.ch any


; (1 server found)

;; global options:  printcmd

;; Got answer:

;; -HEADER- opcode: QUERY, status: NOERROR, id: 46532

;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:

;dns.ipam.ch.   IN  ANY

;; ANSWER SECTION:

dns.ipam.ch.600 IN  CNAME   www.ipam.ch.

;; Query time: 1 msec

;; SERVER: 10.10.3.13#53(10.10.3.13)

;; WHEN: Mon Mar  7 11:53:21 2011

;; MSG SIZE  rcvd: 47

That's valid response, albeit a little stingy. You asked about all 
records matching the name dns.ipam.ch, and it gave you all records.


Note that RFC 1034's nameserver algorithm (section 4.3.2) specifies 
that a query should be restarted if QNAME owns a CNAME RR and QTYPE 
doesn't match CNAME. In a normal case, e.g. QTYPE=A, this means that 
the CNAME gets added to the Answer Section and then the query is 
restarted, as if the target of the alias were QNAME. It either 
produces A records or it doesn't. But in this *special* case, QTYPE=* 
does in fact match the CNAME record found by the nameserver, therefore 
the query is not restarted. The nameserver just returns what is has -- 
i.e. the CNAME record -- and its job is done. It jumps to Step 6 of the 
algorithm: return the records along with any Additional Records that it 
deems helpful, and exit.


When I do a comparable query (also with type=any) to another DNS 
Server (eg. google.com)


;  DiG 9.3.2  @ns1.google.com. www.google.com. any

; (1 server found)

;; global options:  printcmd

;; Got answer:

;; -HEADER- opcode: QUERY, status: NOERROR, id: 1636

;; flags: qr aa rd; QUERY: 1, ANSWER: 6, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:

;www.google.com.IN  ANY

;; ANSWER SECTION:

www.google.com. 604800  IN  CNAME   www.l.google.com.

www.l.google.com.   300 IN  A   74.125.232.114

www.l.google.com.   300 IN  A   74.125.232.115

www.l.google.com.   300 IN  A   74.125.232.116

www.l.google.com.   300 IN  A   74.125.232.113

www.l.google.com.   300 IN  A   74.125.232.112

;; Query time: 46 msec

;; SERVER: 216.239.32.10#53(216.239.32.10)

;; WHEN: Mon Mar 07 09:44:32 2011

;; MSG SIZE  rcvd: 132

... I will get also the associated A Records.

Well, ns1.google.com coincidentally *happens* to also be authoritative 
for l.google.com, so it was able to provide the A records. It's 
arguable, however, whether it should have restarted the query or not 
(in the sense described above).


Does anybody have an idea, why the behavior is different? Can I 
configure this on my DNS Server (ISC BIND)?


FYI:

dig @ns1.hp.com. www.hp.com. any

and

dig @ns1.yahoo.com. www.yahoo.com any

Understand that ns1.hp.com is *not* authoritative for any A records 
owned by www.hp.com (the name is an alias to www.hpgtm.nsatc.net so the 
authoritative A records would be given from something hosting some 
descendant of nsatc.net), and ns1.yahoo.com is *not* authoritative for 
any A records owned by www.yahoo.com (which is an alias to 
fp.wg1.b.yahoo.com, at least when I query it; the exact target of the 
alias might depend on who is querying it).



will also answer without any A-Records (like me).

I have the following questions:

-which one is correct (RFC)?

An ANY query should return A records if the nameserver being queried is 
actually authoritative for the name being queried and the name owns A 
records. But if -- as in your examples above -- the nameserver only 
holds an alias, it is under no obligation to go and fetch those A 
records on your behalf.


-is it configurable in ISC BIND?


Nope.


-does the behavior depends on different BIND version?


Nope. As far as I know, BIND has always been this way.


I know that 

Re: different behavior: A Records in DNS answer, when query of type any (existing CNAME)

2011-03-07 Thread Mark Andrews

In message 1dd28595e6555e498a4eed9cf13f8abf07be207...@svcstccrmb01.devoteam.co
m, Diezig Adrian writes:
 
 Hi,
 
 I have a question concerning answers from DNS servers, when I query a name =
 with type any and the name is a CNAME.
 I have the following example (works also in Internet) with an ISC BIND serv=
 er (BIND 9.7.0-P1):
 
 ;  DiG 9.3.6-P1-RedHat-9.3.6-4.P1.el5_4.2  @newton.genesiscom.ch dn=
 s.ipam.ch
 ; (1 server found)
 ;; global options:  printcmd
 ;; Got answer:
 ;; -HEADER- opcode: QUERY, status: NOERROR, id: 25078
 ;; flags: qr aa rd; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0
 
 ;; QUESTION SECTION:
 ;dns.ipam.ch.   IN  A
 
 ;; ANSWER SECTION:
 dns.ipam.ch.600 IN  CNAME   www.ipam.ch.
 www.ipam.ch.600 IN  A   81.18.25.238
 
 ;; Query time: 1 msec
 ;; SERVER: 10.10.3.13#53(10.10.3.13)
 ;; WHEN: Mon Mar  7 11:52:38 2011
 ;; MSG SIZE  rcvd: 63
 
 
 As you can see, we have a CNAME dns.ipam.ch that points to www.ipam.ch.
 www.ipam.ch is an A-Record to 81.18.25.238.
 
 
 When I do the following query (type=any to dns.ipam.ch), only the CNAME i=
 tself will be in the answer section (the A-Record not):
 
 ;  DiG 9.3.6-P1-RedHat-9.3.6-4.P1.el5_4.2  @newton.genesiscom.ch dn=
 s.ipam.ch any
 ; (1 server found)
 ;; global options:  printcmd
 ;; Got answer:
 ;; -HEADER- opcode: QUERY, status: NOERROR, id: 46532
 ;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
 
 ;; QUESTION SECTION:
 ;dns.ipam.ch.   IN  ANY
 
 ;; ANSWER SECTION:
 dns.ipam.ch.600 IN  CNAME   www.ipam.ch.
 
 ;; Query time: 1 msec
 ;; SERVER: 10.10.3.13#53(10.10.3.13)
 ;; WHEN: Mon Mar  7 11:53:21 2011
 ;; MSG SIZE  rcvd: 47
 
 
 
 
 When I do a comparable query (also with type=any) to another DNS Server (=
 eg. google.com)
 
 ;  DiG 9.3.2  @ns1.google.com. www.google.com. any
 ; (1 server found)
 ;; global options:  printcmd
 ;; Got answer:
 ;; -HEADER- opcode: QUERY, status: NOERROR, id: 1636
 ;; flags: qr aa rd; QUERY: 1, ANSWER: 6, AUTHORITY: 0, ADDITIONAL: 0
 
 ;; QUESTION SECTION:
 ;www.google.com.IN  ANY
 
 ;; ANSWER SECTION:
 www.google.com. 604800  IN  CNAME   www.l.google.com.
 www.l.google.com.   300 IN  A   74.125.232.114
 www.l.google.com.   300 IN  A   74.125.232.115
 www.l.google.com.   300 IN  A   74.125.232.116
 www.l.google.com.   300 IN  A   74.125.232.113
 www.l.google.com.   300 IN  A   74.125.232.112
 
 ;; Query time: 46 msec
 ;; SERVER: 216.239.32.10#53(216.239.32.10)
 ;; WHEN: Mon Mar 07 09:44:32 2011
 ;; MSG SIZE  rcvd: 132
 
 
 ... I will get also the associated A Records.
 Does anybody have an idea, why the behavior is different? Can I configure t=
 his on my DNS Server (ISC BIND)?
 
 FYI:
 dig @ns1.hp.com. www.hp.com. any
 and
 dig @ns1.yahoo.com. www.yahoo.com any
 
 will also answer without any A-Records (like me).
 
 I have the following questions:
 
 -  which one is correct (RFC)?
 
 -  is it configurable in ISC BIND?
 
 -  does the behavior depends on different BIND version?
 
 I know that it is not very common to do queries with type any. The problem =
 we have is the following:
 A Device/Application in our network is doing always queries from type any=
 .
 From our side it's not possible to change the type, because it's hard-coded=
 in the software.

Go back to your vendor and demand a fix.  Applications which make
ANY queries and don't followup with specific type the application
needs when it isn't returned are broken.  ANY queries are handled
differently to normal queries.  Similarly CNAME queries are handled
differently to normal queries.

Mark

 Kind regards
 
 Adrian
-- 
Mark Andrews, ISC
1 Seymour St., Dundas Valley, NSW 2117, Australia
PHONE: +61 2 9871 4742 INTERNET: ma...@isc.org
___
bind-users mailing list
bind-users@lists.isc.org
https://lists.isc.org/mailman/listinfo/bind-users


What should I put as Primary DNS and Secondary DNS when building our DNS Servers

2011-03-07 Thread Samad Agha
Hi All,

I'm building our DNS servers from scratch with Red Hat 5.5. Part of the
installation asks for Primary DNS and Secondary DNS, since these two
servers will act as our DNS servers, should I put their own IP? Does that
create any problems? If it does, is there any workarounds?

Many thanks in advance,

Samad
___
bind-users mailing list
bind-users@lists.isc.org
https://lists.isc.org/mailman/listinfo/bind-users

rndc: 'reload' failed: not found

2011-03-07 Thread ShanyiWan
Cent OS+BIND 9.7.3+DLZ(BDB as backend)

# rndc reload 2mysite.net
rndc: 'reload' failed: not found

rndc reload not work correctly,why?

--
ShanyiWan
2011-03-08

___
bind-users mailing list
bind-users@lists.isc.org
https://lists.isc.org/mailman/listinfo/bind-users