コマンドラインでホットスポット接続されたデバイスの名前を見つける方法は?

コマンドラインでホットスポット接続されたデバイスの名前を見つける方法は?

私のDebianコンピュータでホットスポット(hostapd)を作成し、一部のデバイスはWi-Fiを使用して接続されています。ex: xyz iphone, apple tv, john pcコマンドラインから接続されているデバイスの名前を取得するには?

メモ:現在、MACとIPアドレスを取得するために次のコマンドを使用していarpますが、デバイス名

答え1

関連階層について簡単にお知らせします。 LANとWLANはMACアドレス(OSIレベル2)を使用して通信します。 ARPプロトコルは、どのMACアドレスがどのIPアドレス(OSIレベル3)に属するかを示します。マシンの名前はDNSによって処理されます。通常、ホームルーターは、どの名前がどのMACアドレスに属するかを入力できるDNSサーバーを実行するか、DHCPによって提供される名前を自動的に使用します。

だから:

  1. を使用して接続ステーションのMACを取得します。ここで、ホットスポットのIFはiw wlan0 station dump次のとおりです。wlan0これは、次のものを含まないarpキャッシュよりも安定しています。みんな接続されたマシンには、次のものが含まれます。その他他のLAN上のシステムなどもarp-scanWLANを介してARP応答を取得しようとしますが、ホットスポットはすでにこれを正確に知っているため、信頼性が低下します。どのマシンが接続されました。

  2. 各 MAC に対応する IP アドレスを探します。私が考えることができる唯一のコマンドラインツールですが、arpingおそらくより良い方法があります。

  3. 各IPに対して、ホームルーターでDNS逆照会を実行します(例:)host <ip-addr>

はい、とても難しいです。うまくやりたいなら、近道を選ぶことはできません。これを行ういくつかのツールがあるかもしれませんが、私はそのようなツールを知らないので、スクリプトを書く必要があります。

関連情報