我拥有多个广告相同SSID的接入点。当支持WiFi的设备(如手机)连接到其中一个WiFi接入点时,如何确定该设备的位置?
是否可以在AP端找出设备获得的信号强度,然后根据该信息计算距离?连接到这些访问点的设备不运行我拥有的任何软件组件(以便我可以从设备查询位置)。
答案 0 :(得分:1)
事实上,这并不容易。您不能将信号强度用作等距离距离。事实上,如果你有一些障碍物(墙壁,人......),信号将不会与距离成正比。
O
B
+---+ S +---+ +---+
|AP1| T |STA| |AP2|
+---+ A +---+ +---+
C
L
E
在这种情况下,您可以使用AP2获得比使用AP1更好的信号。
尽管如此,您可以轻松确定STA是否连接到AP1或AP2,因为每个802.11帧都有:
+----+ +----+
|STA1| Source Destination |STA2|
+-+--+ +----+
|
| Transmitter Receiver ^
| +---+ +---+ |
+--------> |AP1| |AP2+-----------+
+-+-+ +---+
|
| ^
| |
| |
+------------------+
via ethernet
因此,如果您是源,您可以发送一个帧(ping ...)并检查发送器地址。这样你就可以获得你所连接的AP的mac。
答案 1 :(得分:-2)
也许您可以使用ping来检查设备和AP之间的延迟。更大的延迟意味着更长的距离。然后您可以计算位置。这只是一个建议。