networking protocol_error ai_generated partial

mDNS: Response from 192.168.1.50:5353 does not match query for _http._tcp.local, ignoring

ID: networking/mdns-response-mismatch

Also available as: JSON · Markdown · 中文
75%Fix Rate
80%Confidence
1Evidence
2024-06-22First Seen

Version Compatibility

VersionStatusIntroducedDeprecatedNotes
Avahi 0.8 active
systemd-resolved 252 active
Bonjour (macOS Ventura) active

Root Cause

A multicast DNS responder sent a response that does not correspond to the query's question section, often due to a misconfigured service advertisement or a buggy mDNS implementation that replies with unrelated records, causing the client to discard the response.

generic

中文

多播DNS响应者发送的响应与查询的问题部分不匹配,通常是由于服务广告配置错误或有缺陷的mDNS实现回复了无关记录,导致客户端丢弃该响应。

Official Documentation

https://avahi.org/wiki/AvahiConfiguration

Workarounds

  1. 80% success tcpdump -i eth0 port 5353 -X | grep -A5 'mDNS'
    tcpdump -i eth0 port 5353 -X | grep -A5 'mDNS'
  2. 70% success iptables -A INPUT -s 192.168.1.50 -p udp --dport 5353 -j DROP
    iptables -A INPUT -s 192.168.1.50 -p udp --dport 5353 -j DROP

中文步骤

  1. tcpdump -i eth0 port 5353 -X | grep -A5 'mDNS'
  2. iptables -A INPUT -s 192.168.1.50 -p udp --dport 5353 -j DROP

Dead Ends

Common approaches that don't work:

  1. Clearing the local mDNS cache using systemd-resolved or Avahi commands. 90% fail

    The cache is not the issue; the problem is the responder sending mismatched responses. Flushing cache only removes local entries, not the faulty responder behavior.

  2. Adjusting TTL on mDNS records to reduce query frequency. 85% fail

    Does not address the mismatch in response; the responder will still send incorrect replies regardless of TTL.