【发布时间】:2016-10-22 15:35:23
【问题描述】:
我在通过mqtt 连接覆盆子上的 esp 模块时遇到问题。经过大量搜索后,我想我现在有点迷路了。
那么问题来了
我已将树莓派的本地 dns 设置为 cubex.local,我按照此处的说明进行操作:
http://www.howtogeek.com/167190/how-and-why-to-assign-the-.local-domain-to-your-raspberry-pi/
这方面似乎一切正常...
我可以使用本地网络上的cubex.local 来让 ssh 和 ftp 访问树莓派,但是当涉及到 esp 试图解析该地址时,它总是失败。
这是在 esp 上运行的代码:
function broker_connect()
m = mqtt.Client(ID, 120, BRUSER, BRPWD)
m:on("message", on_message_received)
m:on("connect", on_connect)
m:on("offline", on_mqqt_offline)
tmr.alarm(0, 1000, 1,function()
print("Connecting to MQTT broker at "..HOST..". Please wait...")
m:connect( HOST , PORT, 0)
end)
和输出:
连接到 cubex.local 的 MQTT 代理。请稍候...
DNS重试1!
DNS 重试 2!
DNS重试3!
DNS 重试 4!
DNS 失败!
在 cubex.local 连接到 MQTT 代理。请稍候...
DNS重试1!
DNS 重试 2!
DNS重试3!
DNS 重试 4!
DNS 失败!
在 cubex.local 连接到 MQTT 代理。请稍候...
DNS重试1!
DNS 重试 2!
DNS重试3!
DNS 重试 4!
域名解析失败!
主机变量保存cubex.local,端口为1883。
当我使用覆盆子的 IP 192.168.0.3 时,一切正常。
我仍然不明白为什么它总是无法解析地址。
【问题讨论】:
-
您是否尝试使用 IP 地址和“域名”编辑您的 /etc/hosts 文件?
-
嗯,是的,当从除 esp 之外的任何其他地方访问它时,该域就像一个魅力,这主要让我相信覆盆子在这方面是可以的
标签: dns raspberry-pi2 esp8266 nodemcu mdns