私のDebianマシンでは、ホットスポット(hostapd)を作成し、一部のデバイスはWi-Fiを使用して接続されています。接続されているデバイスの名前を取得するにはどうすればよいですかex: xyz iphone, Apple tv, john pc
コマンドラインから?
注:現在、arp
コマンドを使用してMACアドレスとIPアドレスを取得していますが、デバイス名は取得していません。
関連するレイヤーのクイックリマインダー:LANとWLANはMACアドレス(OSIレベル2)を使用して通信します。 ARPプロトコルは、どのMACアドレスがどのIPアドレス(OSIレベル3)に属しているかを示します。マシンの名前はDNSによって処理されます。通常、ホームルーターはDNSサーバーを実行します。ここで、どの名前がどのMACアドレスに属しているかを入力するか、DHCPによって提供されている場合は名前を自動的に使用します。
そう:
iw wlan0 station dump
を使用して接続されたステーションのMACを取得します。ここで、wlan0
はホットスポットのIFです。これは、arpキャッシュよりも信頼性が高くなります。これは、arpキャッシュにall接続されたマシンが含まれていない可能性があり、も含まれている可能性があるためです。 )他のLAN上の他のマシンなど。arp-scan
もWLAN経由でARP応答を取得しようとするため、信頼性が低くなりますが、ホットスポットはすでに正確に認識していますwhichマシンが接続されています。
これらのMACごとに、対応するIPアドレスを見つけます。このために私が考えることができる唯一のコマンドラインツールはarping
ですが、おそらくもっと良い方法があります。
IPごとに、ホームルーターに対してDNS逆引き参照を実行します。 Host <ip-addr>
。
はい、それはとても難しいです、そしてあなたがそれをきちんとやりたいなら、あなたは近道をとることができません。あなたのためにそれを行ういくつかのツールがあるかもしれませんが、私は何も知らないので、あなたはそれをスクリプト化する必要があります。