<div dir="ltr"><div>Hi Jeroen,</div><div><br></div><div>Thank you very much for the information.</div><div><br></div><div>Best Regards.<br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Jun 29, 2023 at 1:47 AM Jeroen Koekkoek <<a href="mailto:jeroen@nlnetlabs.nl">jeroen@nlnetlabs.nl</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi,<br>
<br>
> My questions are as follows<br>
> 1) When zone data is not saved on file and only held in memory NSD<br>
> initiates zone transfer after NSD service is restarted.<br>
> <br>
> Would like to know if there is a time limit from when zone transfer<br>
> is requested until data gets saved in memory.<br>
<br>
I'm not sure if I understand your question correctly, but:<br>
<br>
There is a reload timer, configurable through xfrd-reload-timeout, that<br>
determines how often a reload is triggered. There is however no time<br>
limit from when a zone is requested. When a zone transfer is received,<br>
(triggered by the refresh timer in the SOA record expiring, through a<br>
NOTIFY or having no zone data), a transfer for that zone is scheduled.<br>
xfrd (transfer daemon in NSD) updates the timers with the data from the<br>
AXFR/IXFR. How long it takes for the reload to complete depends on the<br>
number of changes within that reload.<br>
<br>
> 2) When NSD service is 'reloaded' for example by running 'systemctl<br>
> reload nsd' does NSD check the serial number (SOA) for each record<br>
> and tries to initiate a zone transfer?<br>
> <br>
> After performing a service reload the following entries are logged.<br>
> <br>
> nsd[1704236]: error: xfrd: zone <a href="http://testnsdexp01.tk" rel="noreferrer" target="_blank">testnsdexp01.tk</a> received error code<br>
> SERVER NOT AUTHORITATIVE FOR ZONE from xx.xx.xx.xx<br>
> nsd[1704236]: error: xfrd: zone <a href="http://testnsdexp01.tk" rel="noreferrer" target="_blank">testnsdexp01.tk</a>, from xx.xx.xx.xx: no<br>
> tsig in first packet of reply<br>
> nsd[1704236]: info: xfrd: zone <a href="http://testnsdexp01.tk" rel="noreferrer" target="_blank">testnsdexp01.tk</a> bad transfer 0 from<br>
> xx.xx.xx.xx<br>
>  <br>
> The zone records for <a href="http://testnsdexp01.tk" rel="noreferrer" target="_blank">testnsdexp01.tk</a> is not present on the master DNS<br>
> servers therefore it returns error but it seems like NSD is doing<br>
> some sort of checks during the reload process hence its trying to get<br>
> the records for '<a href="http://testnsdexp01.tk" rel="noreferrer" target="_blank">testnsdexp01.tk</a>'.<br>
> <br>
<br>
These errors are from xfrd, which is the process that keeps running and<br>
is not recycled (unlike the server(s)). Once there's no more zone data,<br>
either by not having it in the first place on (re)load or because it<br>
has expired, xfrd will request new data from the primary every so<br>
often. The messages above is merely xfrd indicating it cannot refresh<br>
the zone.<br>
<br>
So, to answer your question, yes, once NSD restarts it tries to request<br>
a zone transfer for zones that have no data.<br>
<br>
Best regards,<br>
Jeroen<br>
</blockquote></div></div>