nodemcu专用IP(WLAN)连接失败

nodemcu专用IP(WLAN)连接失败,nodemcu,wifi,Nodemcu,Wifi,我的设置是这样的:Nodemcu和raspberry pi连接到WiFi路由器。Nodemcu中的lua代码需要通过WLAN调用托管在raspberry pi中的restapi 但是我可以看到连接失败了: http.get("http://192.168.43.100:8080/api/logdevice", nil, function (code, resp) print(code, resp) end) > --http.get("http://example.com", nil, f

我的设置是这样的:Nodemcu和raspberry pi连接到WiFi路由器。Nodemcu中的lua代码需要通过WLAN调用托管在raspberry pi中的restapi

但是我可以看到连接失败了:

http.get("http://192.168.43.100:8080/api/logdevice", nil, function (code, resp) print(code, resp) end)
> --http.get("http://example.com", nil, function (code, resp) print(code, resp) end)HTTP client: Disconnected with error: -11
HTTP client: Connection timeout
HTTP client: Connection timeout
当我给出一个internet地址()时,请求成功了

我可以从同一WiFi网络中的另一台笔记本电脑访问REST API

我已使用lua代码验证WiFi设置是否正确:

ip, netmask, gateway = wifi.sta.getip()
在访问私有IP地址时,nodemcu是否有任何限制


更新1:我将nodemcu作为接入点,并将API服务器连接到它。现在nodemcu可以访问API了。但这不是我需要的WiFi设置。我需要nodemcu作为WiFi站点。所以我认为这可能是路由表中的一个问题。在将nodemcu连接到外部AP之后,我是否应该进行任何额外的路由配置?

如果我理解正确,您似乎已经通过调用外部站点解决了nodemcu设备和互联网(路由器之外)之间的连接问题。您还检查了是否可以使用其他设备在网络中本地调用REST api,这表明问题似乎与无线网络上的nodemcu和rpi之间的通信有关

我会检查路由器上的DHCP屏幕,以验证nodemcu和rpi的IP地址。尝试从rpi或笔记本电脑ping nodemcu。打开rpi Web服务器上可用的任何日志记录,以检查入站请求(来自笔记本电脑,然后是nodemcu),并验证nodemcu的网络掩码设置与rpi相同(因为如果它们不同,Web服务器响应可以路由出网关)

如果您想尝试“更简单”更直接的测试,您还可以尝试从nodemcu使用简单的telnet客户端连接到rpi


如果能进一步了解nodemcu、rpi和笔记本电脑的IP地址、网络掩码和网关的实际值,这将很有帮助。

如果我理解正确,您似乎已经通过调用外部站点解决了nodemcu设备和internet(路由器之外)之间的连接问题。您还检查了是否可以使用其他设备在网络中本地调用REST api,这表明问题似乎与无线网络上的nodemcu和rpi之间的通信有关

我会检查路由器上的DHCP屏幕,以验证nodemcu和rpi的IP地址。尝试从rpi或笔记本电脑ping nodemcu。打开rpi Web服务器上可用的任何日志记录,以检查入站请求(来自笔记本电脑,然后是nodemcu),并验证nodemcu的网络掩码设置与rpi相同(因为如果它们不同,Web服务器响应可以路由出网关)

如果您想尝试“更简单”更直接的测试,您还可以尝试从nodemcu使用简单的telnet客户端连接到rpi


为节点MCU、rpi和笔记本电脑提供IP地址、网络掩码和网关的实际值将有助于进一步实现这一目标。

如果您使用低级
net
模块而不是
http
模块:@MarcelStör也失败了,它是否有效,您可以从NodeMCU访问internet,但不能访问专用网络中的资源?在这方面,我没有意识到任何已知的问题或限制。事实上,无论是HTTP还是net操作,都无法成功访问私有资源,这表明您的终端上存在“阻塞”网络组件。@MarcelStör这听起来像是我的问题:同一网络上的另一台笔记本电脑也可以访问它。我对此表示怀疑。这个问题基本上是说什么时候不起作用,那么什么时候起作用。所以,它似乎与默认端口80/443有关,但这只是我个人的结论。此外,在该问题中,确定使用网络模块调用同一资源是可行的。如果您使用低级
net
模块而不是
http
模块:@MarcelStör也失败了,那么是否可行?因此,您可以从NodeMCU访问互联网,但不能访问您专用网络中的资源?在这方面,我没有意识到任何已知的问题或限制。事实上,无论是HTTP还是net操作,都无法成功访问私有资源,这表明您的终端上存在“阻塞”网络组件。@MarcelStör这听起来像是我的问题:同一网络上的另一台笔记本电脑也可以访问它。我对此表示怀疑。这个问题基本上是说什么时候不起作用,那么什么时候起作用。所以,它似乎与默认端口80/443有关,但这只是我个人的结论。此外,在该问题中,确定使用net模块调用相同的资源是可行的。