Created attachment 7467 [details] tcpdump trace The external DNS server that I'm using seems to drop DNS request time to time, when I use the forwarder of the internal server and the response is not received the dns server will be blocked forever. Further analysis of the dns trace indicate that the internal DNS server receive the request but didn't show that the internal DNS server is emitting a dns request to the forwarder.
At packet 34 we can see that the internal DNS server is receiving the but nothing is transmitted. Logs show the message: Not authorative for '67403d92-fa47-4954-993b-d75735a7e92c._msdcs.contoso.com', forwarding
So which IP is which system?
System had two nics with following IP: 192.168.93.108 172.16.100.1 resolv.conf configured the DNS server to be 172.16.100.1 and calls where coming from the system (hence source and dest ip are 172.16.100.1).
It looks like the packet sent out to the forwarder got dropped, and libdns doesn't cope with that yet. This needs to be fixed.
isn't it fixed by volker async stuff?
I got the feeling that what is reported in this email [Samba] Internal DNS stops forwarding Can be related if the forwarder never replies the descriptor associated to the udp socket is never freed after sometime we can easily exhaust the number of max file open.
Following remarks from Bob Cavey and Felix, I changed this bug as a blocker for 4.0. It would be interesting to see how bind deals with this case when configured to use a forwarder and that the forwarder didn't reply.
Created attachment 8050 [details] libcli/dns patch Patch for the timeout.
Comment on attachment 8050 [details] libcli/dns patch Patch also applies to v4-0-test, so please ack and assign to Karolin if you're happy with it
The patch seems ok for me as for rc3 but please for master make the timeout configurable and maybe use a bigger timeout by default.
Karolin can you pick up kai's patch for the rc3 ? Thanks.
Created attachment 8072 [details] More elegant path as proposed by Volker Volker just suggested a much better approach for this for master, and I think it makes sense to get the better version for v4-0-test as well.
Comment on attachment 8072 [details] More elegant path as proposed by Volker Seems ok indeed, I rely on the experience of Volker for async
Pushed to autobuild-v4-0-test. Closing out bug report. Thanks!