5

Linux ベースの OS を実行するシングル ボード コンピューター (SBC) を使用して、モバイル デバイス検出器を作成します。SBC には、USB/802.11 ワイヤレス アダプターが搭載されます。SBC は DHCP サーバーになります。モバイル デバイスは、SBC のワイヤレス ネットワーク (アドホックかインフラストラクチャかは関係ありません) に参加します。モバイル デバイスがネットワークに参加すると、SBC がそれを検出します。受信したモバイル デバイスの MAC アドレスを、受け入れられたアドレスのセットでチェックします。一致する場合、SBC はコマンドを実行します。

私は基本的な Linux の知識を持っています。シェル スクリプトは書けませんが、C++/Qt は知っています。どこから始めればよいかわかりません。このプロジェクトで使用する関連コマンド ライン ユーティリティまたはライブラリを知っていますか?

PS: DHCP クライアント リストがいつ変更されたかを検出する方法だけが必要なのかもしれません。これは、MAC アドレス フィルタリングと併用するとうまくいく可能性があります。

4

2 に答える 2

0

ネットワークの検出に使用できnmapます。ここにいくつかの例があります。

次に、その出力を解析する必要があります。例えば:

while true; do
    nmap -v -sT 192.168.0.0/24 | fgrep "YOUR_SEARCHED_IP" && \
    echo BINGO "YOUR_SEARCHED_IP" IS IN THE 192.168.0.0/24 NETWORK
done  

また、ポート チェックをスキップnmapするオプションもあります。-sn

ip neighbor show近隣ネットワークの IP アドレスを確認するために使用することもできます。

pingまたは、次のような簡単なテストを使用できます。

for ip in $(seq 1 254); do 
    ping -c 1 192.168.1.$ip>/dev/null && \
    echo “192.168.1.$ip is UP"
done

と組み合わせるとnslookup、ホスト名を表示できます。

于 2012-01-18T22:17:30.060 に答える
0

nmap は IP レイヤーをテストしますが、ワイヤレス デバイスはそれを使用する必要はありません。

また、ワイヤレス インターフェイスで「モニター」モードを使用したり、airodump-ng などの適切なリッスン プログラムと組み合わせて使用​​したりすることもできます。ワイヤレス ネットワークがクラ​​イアント分離を使用している場合、実際に参加しているクライアントよりもはるかに少ないクライアントが表示される可能性があることに注意してください。また、適切に切り替えられたイーサネットと同様に、別のセグメントに配置された離れたクライアントが必ずしも表示されるとは限らないことに注意してください。

于 2012-01-19T10:17:23.207 に答える