Re: BIND 9.6.1-P1 crashing

2010-01-08 Thread JINMEI Tatuya / 神明達哉
At Tue, 05 Jan 2010 08:24:16 +0100,
Dario Miculinic dario.miculi...@t-com.hr wrote:

 I dont't have the same core dump, but this is from one that happend yesterday:

Thanks, but unfortunately the detailed stack traces don't seem to
provide a useful hint for the race.

If you can help debug this further, could you apply the patch copied
below, rebuild named and run it?  It *may* catch the race condition at
a closer point to the real cause.  (note: this patch only does
diagnose, so it will not fix the problem).

Or, if you need any workaround that *may* work, you may want to
rebuild named with disabling atomic operations.
./configure --disable-atomic [...other options]
I'm not sure if this stops the problem, but I believe it's worth
trying.

---
JINMEI, Tatuya
Internet Systems Consortium, Inc.

Index: heap.c
===
RCS file: /proj/cvs/prod/bind9/lib/isc/heap.c,v
retrieving revision 1.37
diff -u -r1.37 heap.c
--- heap.c  19 Oct 2007 17:15:53 -  1.37
+++ heap.c  8 Jan 2010 08:01:19 -
@@ -149,10 +149,12 @@
 i  1  heap-compare(elt, heap-array[p]) ;
 i = p, p = heap_parent(i)) {
heap-array[i] = heap-array[p];
+   INSIST(heap-array[i] != NULL);
if (heap-index != NULL)
(heap-index)(heap-array[i], i);
}
heap-array[i] = elt;
+   INSIST(heap-array[i] != NULL);
if (heap-index != NULL)
(heap-index)(heap-array[i], i);
 
@@ -173,11 +175,13 @@
if (heap-compare(elt, heap-array[j]))
break;
heap-array[i] = heap-array[j];
+   INSIST(heap-array[i] != NULL);
if (heap-index != NULL)
(heap-index)(heap-array[i], i);
i = j;
}
heap-array[i] = elt;
+   INSIST(heap-array[i] != NULL);
if (heap-index != NULL)
(heap-index)(heap-array[i], i);
 
@@ -217,6 +221,7 @@
 
less = heap-compare(elt, heap-array[index]);
heap-array[index] = elt;
+   INSIST(heap-array[index] != NULL);
if (less)
float_up(heap, index, heap-array[index]);
else
___
bind-users mailing list
bind-users@lists.isc.org
https://lists.isc.org/mailman/listinfo/bind-users


Re: [BUG] bind crash in statschannel.c

2010-01-08 Thread JINMEI Tatuya / 神明達哉
At Tue, 5 Jan 2010 10:00:34 +0100,
Marinescu Paul dan pauldan.marine...@epfl.ch wrote:

 bind (9.6.1-P2) dies when one tries to retrieve statistics via HTTP
 from the statistcs-channel feature if an underlying call to libxml
 fails (returns a NULL pointer) at statschannel.c:720 - writer =
 xmlNewTextWriterDoc(doc, 0);

It's clearly wrong that we do assertion failure when an libxml routine
fails (we've noticed that and have a patch, but it's not yet ready to
be merged), but in reality libxml routines normally should not fail in
a way we are using it.  The only realistic cause is memory allocation
failure within libxml, but if this happened named should have
complained about memory shortage in other places, too.  Did you see
such warnings/errors in your log?

BTW, if we trust the information in the stack trace what happened
doesn't make sense:

 #3  0x0805b5ed in assertion_failed (file=0x81e5954 statschannel.c, 
 line=721, type=isc_assertiontype_insist, 
 cond=0x81e59d0 xmlrc = 0) at ./main.c:161

Even though this indicates xmlrc = 0 was false,

 #4  0x08075e45 in generatexml (server=0xb7a2b018, buflen=0xbfd2be8c, 
 buf=0xbfd2be90) at statschannel.c:721
   boottime = 2009-12-16T19:01:48Z
   nowstr = 2009-12-16T19:02:00Z
   now = {seconds = 1260990120, nanoseconds = 623889000}
   writer = (xmlTextWriterPtr) 0x0
   doc = value optimized out
   xmlrc = 0

xmlrc is actually 0.

It's also odd that writer is NULL (it may be the reason for the error
in xmlTextWriterStartDocument(), but it still doesn't explain why
xmlrc is 0).

---
JINMEI, Tatuya
Internet Systems Consortium, Inc.
___
bind-users mailing list
bind-users@lists.isc.org
https://lists.isc.org/mailman/listinfo/bind-users


Re: Resolving an internal IP address for a domain from an external DNS server?

2010-01-08 Thread Kaya Saman
Ok I will try to explain with a diagram as I'm pretty certain that still 
no one gets what I'm on about:


+-+ 

+-+
|Remote Network| 
 |
local Network|
|DNS server |   
   |  
 radio server   |
|local subnets:  |
  |   
local subnets: |
|192.168.0.0/22|
  |
   192.168.1.0/24   |
|public IP: |
  |
   public IP:|
|81.178.2.118   
|--+--+--|
   212.156.209.87  |
||
  | Internet  |   
|  |
+--+  
   ||  
+-+

   +--+



DNS server A record: ns1.optiplex-networks.com
Radio server A record: rd1.optipelx-networks.com
DNS server IP address 192.168.1.100
Radio server IP address 192.168.1.100
DNS server connected to internet via NAT on main gateway

I have a laptop in my local network, of which the radio server is also 
on that network.


Basically I would like to know if it is possible to use the DNS server 
in the remote network to be authoritative for the radio server in the 
local network!


So that if I point my laptops /etc/resolv.conf file to 81.178.2.118 and 
do an nslookup for rd1.optiplex-networks.com it will give me a result of 
192.168.1.100


As mentioned I have already tried this and failed dramatically as I get 
an error of the server not being found. All other queries work however!


Is this even possible or do I need a local DNS server which is 
authoritative for both domains in the local network??


Currently as shown before I have 1 master zone on the remote DNS server 
with A records all pointing to the remote network but the local A 
records pointing to the local network. Also I have a separate view for 
the local network as well to be able to lookup hinted root servers as 
well as authoritative domains in the zone file.


Apologies if I'm mixing things up however I am not that advanced with 
Bind and up till now only used it for simple things!


Many thanks and best regards,

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


Re: Resolving an internal IP address for a domain from an external DNS server?

2010-01-08 Thread Kaya Saman
Ok I think I've figured this out as I did a little test to change the IP 
within the remote authoritative DNS server to 172.16.1.100.


of course there is no machine at that IP address within my networks but 
there was some address confusion as the DNS server had the same IP 
address as the radio server!!!


Which is probably main reason for nothing resolving! Badly or poorly 
designed network infrastructure on my behalf (at least this wasn't a 
fully professional production environment otherwise I would loose my job 
and be frowned at by the whole industry).


Time to change the local subnet for me!

Again apologies for poor description and messing up so poorly - just 
hope that I haven't disgraced CCNA graduates too badly :-P


Thanks for all the attempted help!!!

Best regards,

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


Re: recursion confusion

2010-01-08 Thread Chris Thompson

On Jan 8 2010, Rick Dicaire wrote:


Hi folks, whats the difference between recursion no; and
allow-recursion {none;};


Not a great deal, but recursion no; changes the default for
empty-zones-enable to no, while allow-recursion {none;};
doesn't do that. (Probably there are other niggling things I
have forgotten as well.)

--
Chris Thompson
Email: c...@cam.ac.uk
___
bind-users mailing list
bind-users@lists.isc.org
https://lists.isc.org/mailman/listinfo/bind-users