カーネル 3.12.rc5 の Debian 7 で AR9271 チップセット USB WiFi デバイスを使用しています。ath9k_htc
とnl80211
ドライバーを使用しています。
アドホック WLAN 経由wpa_supplicant 2.0
で作成し、C プログラムで隣接デバイスの受信信号強度を取得したいと考えています。
その情報を取得するには、どの関数または API を使用できますか?
これは、libpcap を使用して非常に実行可能であり、RSSI を含む 802.11 ヘッダーと元の MAC アドレスを含む生のパケットのワイヤレス LAN を監視します。基になるパケット構造のデコードに関するいくつかのヒントとヒントについては、この質問を参照してください。
最も簡単な方法は、近隣のデバイスからのパケットをリッスンして、RSSI を読み取れるようにすることです。wlan デバイスからの raw トラフィックは非常にノイズが多い傾向があります。関心のあるデバイスのみをフィルタリングする必要があります。
情報は自分で読むことによってのみ入手できますが、データを収集するものは何もありません。また、ネットワーク上に静かなデバイスがある場合は、そこから RSSI を読み取れるように、デバイスが通信できるようにする方法を考え出す必要があります。