missing query-source/transfer-source in nsd

Hi,

We are in the process of switching our master nameserver from bind to nsd.
Therefor we are running both bind and nsd on the same machine, each on their
own IP address. We need bind because the old IP is used for recursing.

In named.conf, I have:

         query-source address 193.110.157.130 port 53;
         transfer-source 193.110.157.130;

My nsd init script adds "-a 193.110.157.135" to the nsd daemon startup
options.

The problem I am seeing now is that nsd is not using 193.110.157.135 for
sending notifies to its secondaries. Instead, it takes the default ('first')
IP address, which happens to be 193.110.157.130.

Are there any plans to add such a feature to nsd? Especially people who want
to migrate from bind to nsd are likely to run both of them on the same server
for a while (or even permanently if they need bind to recurse).

As a workaround, I've added both IP's as masters in the secondaries' named.conf.

Paul

[On 13 Oct, @05:52, Paul Wouters wrote in "missing query-source/transfer ..."]

Hi,

We are in the process of switching our master nameserver from bind to nsd.
Therefor we are running both bind and nsd on the same machine, each on their
own IP address. We need bind because the old IP is used for recursing.

In named.conf, I have:

         query-source address 193.110.157.130 port 53;
         transfer-source 193.110.157.130;

My nsd init script adds "-a 193.110.157.135" to the nsd daemon startup
options.

The problem I am seeing now is that nsd is not using 193.110.157.135 for
sending notifies to its secondaries. Instead, it takes the default ('first')
IP address, which happens to be 193.110.157.130.

Are there any plans to add such a feature to nsd? Especially people who want
to migrate from bind to nsd are likely to run both of them on the same server
for a while (or even permanently if they need bind to recurse).

As a workaround, I've added both IP's as masters in the secondaries' named.conf.

my guess is that this is a bug, a long time ago there was something
simular with regard to sending queries from a different ip address.
The same fix should apply here (I hope :))

Are there any plans to add such a feature to nsd? Especially people who want
to migrate from bind to nsd are likely to run both of them on the same server
for a while (or even permanently if they need bind to recurse).

As a workaround, I've added both IP's as masters in the secondaries' named.conf.

my guess is that this is a bug, a long time ago there was something
simular with regard to sending queries from a different ip address.
The same fix should apply here (I hope :))

Hi everyone.

I made a patch for nsd-notify.c to support a new option: "-a address".
This option allows to specify the source address of the notify message.
I've tested it against a BIND secondary server and it is working.
(Basically I checked nsd-xfer for the necessary code)

Probably a change in nsd.zones would be necessary, to include a "notify-source" directive.

What should I do to submit the patch?

Moreover, I made a small patch in server.c (part of nsd binary) to print the address when a "can't bind the socket" message is triggered.

Regards

[On 23 May, @19:44, Sebastian E. Castro Avila wrote in "Re: missing query-source/tran ..."]

>> As a workaround, I've added both IP's as masters in the secondaries'
>> named.conf.
>
> my guess is that this is a bug, a long time ago there was something
> simular with regard to sending queries from a different ip address.
> The same fix should apply here (I hope :))
>

Hi everyone.

I made a patch for nsd-notify.c to support a new option: "-a address".
This option allows to specify the source address of the notify message.
I've tested it against a BIND secondary server and it is working.
(Basically I checked nsd-xfer for the necessary code)

what a timing :slight_smile:

Probably a change in nsd.zones would be necessary, to include a
"notify-source" directive.

jep, this is something we probably will not do for NSD2. Note that
in NSD3 all this is reworked and nsd-notify is deprecated. This will
mean that NSD3 will "do the correct thing" (TM) from the start.

What should I do to submit the patch?

Just mail it to nsd-users.

Moreover, I made a small patch in server.c (part of nsd binary) to print
the address when a "can't bind the socket" message is triggered.

Ack, just also mail that.

We (labs' NSD dev team) are going to have a patch-discussion day
soonish,

thanks!