New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Legacy unicast responses can't span multiple packets #23
Comments
This message is the vast majority of syslog traffic on at least some embedded systems running avahi; is there anything that can be done to help move a fix along? |
Any update on this? |
I tried different configs till it stopped erroring - this seems to be what did it -
|
As I understand the RFC at https://www.rfc-editor.org/rfc/rfc6762#section-6.7, I would say EDNS0 should be used for receiving larger response for legacy queries. If even that cannot work, TC bit should be set and retried over TCP. And here we have a problem, because avahi-daemon does not even listen on TCP. But that is how unicast DNS response should be handled. So it seems to me it should. |
TCP is mentioned in https://www.rfc-editor.org/rfc/rfc6762#section-18.5 In legacy unicast response messages, the TC bit has the same meaning |
At the moment legacy unicast responses do not get split over several smaller ones when the response is going to be larger than 512 bytes, resulting in many of the services being omitted from unicast responses.
Here is one of the many entries in the syslog when avahi is responding to a service query and there are several matches to the query:
These log messages are added for each service matching the query which cannot fit in the 512 byte packet.
The relevant code is at avahi-core/server.c -> avahi_server_generate_response
*edited since researching the topic some more
I'm not sure what consequences something like this would cause : rlbartle@f4b7859
The text was updated successfully, but these errors were encountered: