I have configured unbound
as a recursive server, and set the option max-udp-size
to 35
. 35
is enough for the DNS header and DNS question for stackoverflow.com
to fit in the UDP reply (the question is repeated back in the reply), but not enough for an answer. This causes unbound
to send back a so-called truncated response.
Windows 10 22H2 Pro properly handles this response and resends the query over TCP and then returns the answer to the calling application.
Windows Server 2022 also seemingly properly handles this response and resends the query over TCP. But then it returns failure to the calling application. The Windows Server DNS service does the same thing as the stub resolver that applications use. Neither the Windows Server stub resolver, nor the DNS service, are including EDNS information in the request, and the response likewise does not have EDNS info.
The included nslookup
tool in Windows Server does work, so I guess it isn’t using the system stub resolver.
I have not tested any other versions of Windows. Other desktop OSes I’ve tried all work correctly. I’m running unbound
on Ubuntu 22.04, although I don’t see how that is a factor.
Does anyone know how I might configure either unbound
or Windows Server to properly handle the TCP response from unbound
?
At first I had the max-udp-size
set too small, and unbound
was not returning the question in the truncated response. This worked for most OSes I could try but not for Windows 22H2 nor Windows Server. When I increased max-udp-size
so that there would be enough room to repeat the question back, I observed Windows 22H2 working but Server still not working.
Gregor is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.