Page MenuHomeVyOS Platform

mdns repeater is generating malformed packets
Open, NormalPublicBUG

Description

Hi,

I have recently noticed that the mdns repeater built in VyOS (Avahi in repeater mode?) is generating malformed mdns packets (see https://github.com/keepsimple1/mdns-sd/pull/492 for a detailed Github thread about the debugging).

I am using the mdns-repeater with a very basic configuration consisting only in

vyos@vyos# show service mdns repeater
 interface eth5.4
 interface eth1.1
 interface eth1.2

to repeat MDNS across VLANs.

To my understanding, the repeater does not simply repeat mdns packets, but generate new mdns advertisements based on its cached entries. Under some circumstances, it generates invalid pointers within the mdns. See https://github.com/keepsimple1/mdns-sd/pull/492#issuecomment-5351018501 for the full details:

Line 43..61 is clean (c0 0c is a valid backward pointer). The failure is that a later name contains a pointer to offset 80, which is in the middle of the "Denon" label at the last line — a pointer that doesn't land on a label boundary.
The 169 at offset 125 / 150 at offset 148 errors are the other kind: pointers that point forward, which RFC 1035 section 4.1.4 forbids ("a pointer to a prior occurrence"). Note those offsets are identical to what the old build reported (169 ... 125), so it's the same reproducible packet.
I suspect it might be the reflector that re-constructs a new packet that coalesces records, and might not enforce RFC's backward only pointers.

I have a set of tcpdump pcap files showcasing the issue prior to hitting mdns repeater (mdns packets for the individual devices are valid) and after hitting the repeater (Wireshark highlights these mdns as malformed). I can share these minimal pcap in case useful.

Thanks

Details

Version
VyOS 2026.08.19-0012-rolling
Is it a breaking change?
Unspecified (possibly destroys the router)
Issue type
Bug (incorrect behavior)

Event Timeline

It seems the issue at stake is https://github.com/avahi/avahi/issues/379 upstream, which is patcheable but is present in avahi-daemon 0.8 which is the version running in VyOS.

Viacheslav triaged this task as Normal priority.Mon, Aug 31, 2:10 PM