我有一个 Android 平板电脑和一个 Raspberry Pi,我希望当平板电脑向 Pi 发送请求时自动在它们之间建立连接。
我按照此处的 Android 应用程序示例开始发现附近的任何设备。 (https://www.youtube.com/watch?v=qnY97iBxp30)
同时运行 sudo wpa_cli 和 p2p_find 20。Android 应用程序检测到 Pi,我尝试与 Pi 建立连接,这将显示
<3>P2P-GO-NEG-REQUEST TABLET_MAC_ADDRESS dev_passwd_id=4
通常我只会 p2p_connect TABLET_MAC_ADDRESS pbc
成功地将它们连接在一起,但我发现如果我要切换到另一个移动设备,效率很低。
是否有其他方法可以在不写入平板电脑 MAC 地址的情况下连接平板电脑?例如,当他们发送 P2P-GO-NEG-REQUEST
时连接到该特定设备 ssid到圆周率?
最佳答案
TL;DR 不。
如果我们看一下 OSI ISO 7 layer model对于网络通信,我们可以看到媒体访问控制 (MAC) 地址对于识别 wifi 网络中的设备至关重要。
您可以尝试设置蓝牙连接或 token 环,但我怀疑这会比您想要的更多。
借助 IPv6,您的设备可以使用邻居发现来自动将 MAC 条目传递到 Internet 协议(protocol),并且可以使用其链路本地地址 (fe80::some:thing) 在设备之间进行连接
Wifi 传输带有地址的数据包。以此类推,如果我告诉你我住在哪个城镇,但不在包裹上写下我的大楼地址,你将很难交付它。
关于linux - 如何在没有 MAC 地址的情况下通过 WiFi Direct p2p_connect 到设备? (树莓派和安卓),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52605587/