[nsd-users] Timeout for TCP queries to NSD

Anand Buddhdev anandb at ripe.net
Thu May 14 10:32:45 UTC 2020

Hi NSD developers,

I'm using the "dnspython" module to AXFR some large zones from one of 
our NSD 4.2.4 servers. Around a quarter of the time, the AXFR fails, and 
python throws an EOFError exception. This usually means that the server 
closed the connection. The same AXFRs, when done with "dig", always succeed.

I think that since "dnspython" is quite slow, there must be some kind of 
timeout being triggered in NSD, and it closes the connection. However, 
the only mention of any TCP-related timeout in nsd.conf is 
"tcp-timeout". The explanation of that option isn't very clear to me. It 

"Overrides the default TCP timeout. This also affects zone transfers 
over TCP."

Is this for incoming queries to NSD, or outgoing TCP queries made by 
NSD? Also, what is the default TCP timeout that this refers to?

And if this is not related to TCP queries to an NSD server, then where 
and what timeouts does NSD apply when answering TCP queries?

Just for comparison, the same AXFRs, made using "dnspython" to a BIND 
server, all succeed. BIND's default TCP timeout paramters are all set to 


More information about the nsd-users mailing list