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 (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...