Hi Martin,
I may be wrong, but doesn't DNS use TCP if the answer to a query exceeds a certain length?
Yes. If the resolver receives a truncated response (TC bit set) it is supposed to re-do the query via TCP.
You are out of luck if your resolver thinks: 'What the hell is a TC bit?! I'll just try to parse the response and pretend that there was no TC bit set. Harr harr..'
This works (somewhat) if the response came from BIND: $ dig -x 195.141.232.78 +short +ignore @cns1.bluewin.ch |grep -vc '^;;' 14
But it fails if dnscache sent the response: $ dig -x 195.141.232.78 +short +ignore @fdad:ecad:e0fb:adf0::f00 |grep -vc '^;;' 0
(dnscache does not include a 'stripped down' response: http://cr.yp.to/djbdns/notes.html => Truncation)
Regards, Adrian