<div dir="ltr">Thanks for the sanity check Remi. I'll think through a little what would be helpful for it and add a feature request, and maybe a PR at some point.<br><br>Jacob - the downstreams are pdns-recursor resolvers.<br><br>I ended up adding a rule to dnsdist for this specific host that we were getting so many queries for to at least shield the downstreams (and authoritatives for that domain) some. Dropped queries and downstream timeouts have settled down after adding it, in case it's useful to anyone else:<br><br><blockquote style="margin:0 0 0 40px;border:none;padding:0px">tc_hosts = newDNSNameSet()<br>tc_hosts:add(newDNSName("<a href="http://grid-use.bidswitch.net">grid-use.bidswitch.net</a>."))<br>addAction(AndRule{QNameSetRule(tc_hosts), TCPRule(false), QTypeRule(DNSQType.A)}, TCAction())<br></blockquote><br>Take care,<br><br>-Dan<br><div><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><table width="100%" style="font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:15px;line-height:22px"><tbody><tr><td width="55px" valign="top" style="padding-right:12px"><br><img src="https://digitaloceanspace.nyc3.digitaloceanspaces.com/do-sig_files/do-email_signature.png" style="width:50px"></td><td><div style="color:rgb(34,34,34);font-weight:bold;margin-top:4px"><br>Dan McCombs</div><div style="color:rgb(34,34,34);margin-bottom:12px">Senior Engineer I - DNS</div><div><a href="mailto:dmccombs@digitalocean.com" style="color:rgba(51,51,51,0.75);font-size:14px" target="_blank">dmccombs@digitalocean.com</a></div></td></tr></tbody></table></div></div></div><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Nov 18, 2022 at 4:42 AM Remi Gacogne via dnsdist <<a href="mailto:dnsdist@mailman.powerdns.com">dnsdist@mailman.powerdns.com</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 Dan,<br>
<br>
On 18/11/2022 02:51, Dan McCombs via dnsdist wrote:<br>
> Is that something that's expected to happen once the full response has <br>
> been returned from a downstream over TCP? Is there some way to force TC <br>
> responses to have at least some minimal TTL? Or some way to have dnsdist <br>
> use its cached response rather than going back to the downstream in that <br>
> case on UDP queries?<br>
<br>
This is indeed an unfortunate consequence of the fact that there is no <br>
TTL on a truncated answer, and no way to set one, so the cache does not <br>
even try to store it.<br>
Perhaps it might make sense to cache these TC=1 answers for a <br>
configurable, very short amount of time. We already have a setting to <br>
cache "temporary failures", meaning Server Failure and Refused <br>
responses, for a short amount of time, so it would not be hard to <br>
implement the same behaviour for truncated answers.<br>
I think we have been reluctant to do that until now because some <br>
backends actually send TC=1 answers to specific clients, like in the RRL <br>
Slip case, and do not expect these answers to be served to other <br>
clients, but that might be OK as long as the caching is configurable and <br>
can be disabled.<br>
<br>
Would you mind opening a feature request on GH [1] so we can track this? <br>
I would also happily merge a corresponding pull request, of course :)<br>
<br>
Thanks!<br>
<br>
[1]: <a href="https://github.com/PowerDNS/pdns/issues/new/choose" rel="noreferrer" target="_blank">https://github.com/PowerDNS/pdns/issues/new/choose</a><br>
<br>
Best regards,<br>
-- <br>
Remi Gacogne<br>
PowerDNS.COM BV - <a href="https://www.powerdns.com/" rel="noreferrer" target="_blank">https://www.powerdns.com/</a><br>
<br>
_______________________________________________<br>
dnsdist mailing list<br>
<a href="mailto:dnsdist@mailman.powerdns.com" target="_blank">dnsdist@mailman.powerdns.com</a><br>
<a href="https://mailman.powerdns.com/mailman/listinfo/dnsdist" rel="noreferrer" target="_blank">https://mailman.powerdns.com/mailman/listinfo/dnsdist</a><br>
</blockquote></div>