如何解决ESP8266 DNS查找,主机名结尾为“ .local”
三年前,我为连接到我的MQTT服务器的NodeMCU(ESP8266)创建了一个Arduino项目。我需要对代码进行一些更改(不相关),进行重建,并且无法连接到我的MQTT服务器!
在进行了一些研究/调试之后,我发现问题是最新的主板库(2.7.4)显然仅在执行mDNS查找,而没有像过去那样退回到[或仅使用] DNS!它也不会失败-返回其他随机IP地址(通常是同一子网中的随机计算机),因此我无法捕获该问题。结果,当我尝试连接到主机“ mqtt.local”时,它无法获取正确的IP地址,并且无法连接。
我已经能够通过为“ mqtt”(删除“ .local”)添加另一个DNS条目并以这种方式进行连接来解决此问题,但这并不理想。有什么方法可以禁用mDNS或手动为.local地址进行 DNS 查找吗? (尝试将LWIP_DNS_SUPPORT_MDNS_QUERIES设置为0,但这无济于事)
对于它的价值,我确实正在运行mDNS代理(因为Apple与.local主机名存在相同的问题)。我可以使用mDNS代理在Mac上获得正确的IP,因此即使使用mDNS,我也应该能够解析地址!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。