没有密码的无线连接上的zeroconf

时间:2017-06-14 09:51:18

标签: arduino esp8266 bonjour zeroconf mdns

我想在同一个无线局域网上的2个设备之间设置注册/发现类型的服务连接。想法是找到,连接并发送无线路由器密码到新设备,以便于安装。在连接到具有SSID,密码的路由器之前,这需要在同一无线网络上的2个设备之间进行通信。

我了解zeroconf,bonjour和mDNS库。我看到的所有实现都从在站点模式下连接到wifi开始,以获得具有硬编码SSID和密码的本地IP,这在现阶段是未知的。

换句话说,如何连接到无线并获得没有SSID和密码的链接本地IP?

- 编辑以获得更好的解释 -

我正在寻找的流程是这样的:

1-手机(iphone或android)像往常一样连接到安全的家庭无线网络 2-带有无线接口的新设备首次启动 3-设备为自己获取(或设置)本地IP和本地DNS名称(多播ip和名称) 4-设备向网络广播其可用服务
5-电话发现服务以及设备'已分配本地名称甚至本地IP 6- Phone启动与设备的直接连接,以发送无线配置信息(接入点的ssid和密码)
7 - 设备保存此信息,重置为正常运行模式
8 - 设备连接到互联网
9 - 本地网络仍然可以使用设备服务

- 编辑 -

代码将在esp32或esp8266上运行,因此兼容的c或arduino库都可以。

我知道ESPTouch应用程序的smartconfig实现,但这是一个可怕的设计!发现程序尝试为每个可能的IP地址创建套接字以查找对等IP。

1 个答案:

答案 0 :(得分:0)

再次在你的问题中阅读这句话并考虑一下:

  

换句话说,如何连接到无线并获得本地IP链接   没有SSID和密码?

您提到的协议只有在您加入网络后才有可能。如您所知,wifi网络受到保护以防止未经授权的访问。

在Google中尝试使用wifi保护设置(WPS)。