Hi,
i am sorry, but there is the bug in the fix of Mrs.Brisby, too :-(
Thus, even ldapdns 2.06 does not work correctly.
It works more similar to a bind DNS-Server if the
attached patch is applied against 2.06.
Regards and thank you,
Olli
PS: @Piotr - sorry if you get this message twice,
i wanted to be sure, that Debian knows
about the state of this package, thus,
i sent this report to the corresponding
bug, too...
----- Forwarded message from Oliver Tschaeche <[EMAIL PROTECTED]> -----
From: Oliver Tschaeche <[EMAIL PROTECTED]>
To: "Mrs. Brisby" <[EMAIL PROTECTED]>
Cc: [EMAIL PROTECTED], [EMAIL PROTECTED]
Subject: Re: ldapdns behaviour in case of A-Record requests
X-Spambayes-Classification: ham; 0.00
X-UID: 830
X-Keywords:
Hi,
On Thu, Dec 30, 2004 at 10:09:51PM -0500, Mrs. Brisby wrote:
> support for this behavior has been added to 2.06
>
> which will be released by tomorrow.
Recently Debian offers ldapdns-2.06 in a package.
I tried it and i see the SOA record now. Unfortunately,
2.06 serves the SOA within the Answering-Section, but other DNS
servers provide the SOA in the Authority-Section for
A, CNAME, MX (non ANY/SOA) requests. For ANY/SOA requests,
they are okay in the answer-section.
I attached a little patch against version 2.06,
which works for me, but i am not completely sure
about it's fixed right. Would you put an eye on it?
Thank you,
Olli
> On Tue, 2004-09-07 at 16:47 +0200, Oliver Tschaeche wrote:
> > Hi Mrs. Brisby,
> >
> > we are using ldapdns-2.05-2 from Debian-Sarge.
> > We entered the following problem:
> >
> > There is a domain e.g. 'haddenbrock.de' with one SOA, several NS, one MX
> > record and _no_ A record.
> >
> > Some MUAs seem to be configured to request an A record for the sender
> > domain.
> > A caching nameserver (not ldapdns) responds with SERVFAIL, which is
> > interpreted by the MUA that the domain temporarily does not resolve.
> > Then, after 5 days the mail is sent back :-(
> >
> > This happens because ldapdns responds with NoData and the NS records,
> > but does not supply the SOA record for A record requests. According
> > to RFC 2308 this data is interpreted as referral, making the requesting
> > nameserver to request the data from a nameserver listed in the NS records,
> > but the caching nameserver already asks that nameserver...
> >
> > Our workaround is to supply an A record with each zone.
> > Of course, the proper solution would be to fix ldapdns behaviour,
> > sending the SOA record as well. Therefore, i wrote this mail.
> >
> > I would appreciate to help fixing that,
> > tell us if you need more information.
> >
> > Thank you,
> >
> > Olli
> >
--
Oliver Tsch�che Tel.: 09134/909787
Welluckenweg 4 Mobil: 0177/5369088
91077 Neunkirchen Email: [EMAIL PROTECTED]
--- engine.c.old 2005-05-09 19:54:35.000000000 +0200
+++ engine.c 2005-05-09 19:56:15.000000000 +0200
@@ -2168,7 +2168,7 @@
|| !response_addulong(c, c->minimum)) {
fatal("could not construct SOA");
}
- response_rfinish(c, RESPONSE_ANSWER);
+ response_rfinish(c, RESPONSE_AUTHORITY);
}
/* also included SOA */
@@ -2269,7 +2269,7 @@
|| !response_addulong(c, c->minimum)) {
fatal("could not construct SOA");
}
- response_rfinish(c, RESPONSE_ANSWER);
+ response_rfinish(c, RESPONSE_AUTHORITY);
}
/* also included SOA */
@@ -2337,7 +2337,7 @@
|| !response_addulong(c, c->minimum)) {
fatal("could not construct SOA");
}
- response_rfinish(c, RESPONSE_ANSWER);
+ response_rfinish(c, RESPONSE_AUTHORITY);
}
/* also included SOA */
@@ -2376,7 +2376,7 @@
|| !response_addulong(c, c->minimum)) {
fatal("could not construct SOA");
}
- response_rfinish(c, RESPONSE_ANSWER);
+ response_rfinish(c, RESPONSE_AUTHORITY);
}
/* also included SOA */
@@ -2434,7 +2434,7 @@
|| !response_addulong(c, c->minimum)) {
fatal("could not construct SOA");
}
- response_rfinish(c, RESPONSE_ANSWER);
+ response_rfinish(c, RESPONSE_AUTHORITY);
}
while ((dat = list_pop(&c->NS))) {
if (!response_rstart(c, c->request_name_zone, DNS_T_NS,
c->ttl)
----- End forwarded message -----
--
Oliver Tsch�che Tel.: 09134/909787
Welluckenweg 4 Mobil: 0177/5369088
91077 Neunkirchen Email: [EMAIL PROTECTED]
--- engine.c.old 2005-05-09 19:54:35.000000000 +0200
+++ engine.c 2005-05-09 19:56:15.000000000 +0200
@@ -2168,7 +2168,7 @@
|| !response_addulong(c, c->minimum)) {
fatal("could not construct SOA");
}
- response_rfinish(c, RESPONSE_ANSWER);
+ response_rfinish(c, RESPONSE_AUTHORITY);
}
/* also included SOA */
@@ -2269,7 +2269,7 @@
|| !response_addulong(c, c->minimum)) {
fatal("could not construct SOA");
}
- response_rfinish(c, RESPONSE_ANSWER);
+ response_rfinish(c, RESPONSE_AUTHORITY);
}
/* also included SOA */
@@ -2337,7 +2337,7 @@
|| !response_addulong(c, c->minimum)) {
fatal("could not construct SOA");
}
- response_rfinish(c, RESPONSE_ANSWER);
+ response_rfinish(c, RESPONSE_AUTHORITY);
}
/* also included SOA */
@@ -2376,7 +2376,7 @@
|| !response_addulong(c, c->minimum)) {
fatal("could not construct SOA");
}
- response_rfinish(c, RESPONSE_ANSWER);
+ response_rfinish(c, RESPONSE_AUTHORITY);
}
/* also included SOA */
@@ -2434,7 +2434,7 @@
|| !response_addulong(c, c->minimum)) {
fatal("could not construct SOA");
}
- response_rfinish(c, RESPONSE_ANSWER);
+ response_rfinish(c, RESPONSE_AUTHORITY);
}
while ((dat = list_pop(&c->NS))) {
if (!response_rstart(c, c->request_name_zone, DNS_T_NS,
c->ttl)