ほんの少し前に、リモート ホストの MAC アドレスを検索するためのリクエストを見ました。その答えは、MAC アドレスは常に TCP/IP プロトコルの一部として送信されるというものでした。
ASP.NET C# アプリケーションからこの情報を取得するにはどうすればよいですか?
参照:姉妹投稿への参照
ほんの少し前に、リモート ホストの MAC アドレスを検索するためのリクエストを見ました。その答えは、MAC アドレスは常に TCP/IP プロトコルの一部として送信されるというものでした。
ASP.NET C# アプリケーションからこの情報を取得するにはどうすればよいですか?
参照:姉妹投稿への参照
そのような答えはすべて誤りです。アダプタの MAC アドレスは、同じネットワーク セグメントでのみ使用できます。ルーターの反対側ではありません。
リモートデバイスがSNMP対応の場合は、 ARPキャッシュを照会できます。その中にMACアドレスが含まれます。詳細については、このFAQエントリを参照してください。
簡単な答え: できません。
複雑な答え: できますが、「arp -a」コマンドからの出力を読み取る必要があります。NIC (ワイヤレスまたは有線) を介して現在使用している接続の数によっては、これが難しくなる場合があります。
ネットワーク自体からこれを取得するために私が考えることができる唯一の方法は、SNMPまたはRMONを使用したネットワーク管理ソフトウェアとのインターフェースに依存します。現在、クライアントでJavaアプレットを使用しています(他の質問に対する私の回答を参照してください)が、いくつかの制限があります。ネットワークスイッチに問い合わせて、サーバー側で同じ情報を取得する方法があるかどうかを確認するために、ネットワークエンジニアと会うことを望んでいます。そのようなソリューションが存在する場合、それは実行しているネットワーク管理ソフトウェアに固有である可能性があります。
それをアプリケーション自体に組み込み、アプリケーションに、すでに送信している可能性のあるメッセージでMacアドレスを送信させることができます。それ以外は、ジョンはそれを釘付けにしました。
編集:ああ、これが「Webアプリ」であり、「クライアントアプリ」がブラウザーである場合、ええ、行きません。