mDNS/Bonjour 对邮件系统的影响?需要关吗?

mDNS/Bonjour 对邮件系统的影响?需要关吗?
mDNS 干扰邮件 DNS 解析的机制:mDNS(Multicast DNS,RFC 6762)在 Linux 上通过 nsswitch.confmdns4_minimal 解析器模块或 avahi-daemon 实现。当 Postfix/Dovecot 查询目标域时,如果 DNS 配置不当,mDNS 可能在 DNS 解析链中插入 ".local" 域或拦截以特定后缀结尾的域名查询,导致本该发送到公网 MTA 的邮件被错误地解析为本地服务
典型症状:
(1) 邮件队列中出现大量 connect to ...: Connection refused 但目标邮件服务器实际在线;
(2) /var/log/mail.log 中出现向 224.0.0.251(mDNS 组播地址)或 127.0.0.1 的怪异连接尝试;
(3) postqueue -p 中邮件延迟数小时,目的地址明明是外部域却报告"连接本地主机失败"。
修复:禁用它。在邮件服务器上 mDNS 没有实用价值,反而带来安全隐患(中间人攻击面增加、DNS 欺骗可能性)。执行:
# 停止并禁用 avahi-daemon
systemctl stop avahi-daemon
systemctl disable avahi-daemon

# 检查 /etc/nsswitch.conf,确保 hosts 行不包含 mdns
# 正确示例:
hosts: files dns
# 错误示例(需移除 mdns4_minimal):
hosts: files mdns4_minimal [NOTFOUND=return] dns
重启 Postfix 和 Dovecot 后生效。验证:getent hosts example.com 确保返回公网 IP 而非本地地址。

📎 RFC 6762 Multicast DNS;RFC 6763 DNS-Based Service Discovery