[Dnsmasq-discuss] Using multiple upstream servers but sometimes the reply from the server which answers first is null.

Hongyi Zhao hongyi.zhao at gmail.com
Tue Jan 24 02:50:23 GMT 2017

Hi all,

I use ``--all-servers'' combined with ``--servers-file=<file>'' to let
dnsmasq query multiple upstream  servers for me.  But I find the
following issue sometimes will happen:

When I do the dns query, say, for the domain-name,
softwareupdate.vmware.com, sometimes I will get correct result,
sometimes I will get nothing.

When I get nothing, the results is as follows when using dig to do the testing:

$ dig softwareupdate.vmware.com -p6053

; <<>> DiG 9.9.5-9+deb8u6-Debian <<>> softwareupdate.vmware.com -p6053
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 24708
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0

;softwareupdate.vmware.com.    IN    A

;; Query time: 118 msec
;; WHEN: Tue Jan 24 10:35:00 CST 2017
;; MSG SIZE  rcvd: 43

It seems this is caused by the following reason:  when dnsmasq sending
all queries to all available servers. The reply from the server which
answers first gives nothing -- which is not an error.  And as a
result, this empty result will be returned to the original requester.
And the subsequent correct replies will simply ignored by dnsmasq.

So, how to solve this issue?

Hongsheng Zhao <hongyi.zhao at gmail.com>
Institute of Semiconductors, Chinese Academy of Sciences
GnuPG DSA: 0xD108493

More information about the Dnsmasq-discuss mailing list