エンド ユーザー マシンの MAC アドレスと IP アドレス (ローカルおよび ISP) を決定する方法がよくわかりません。C# をプログラミング言語として使用する ASP.net ベースのシステムを使用しています。
誰かが案内してくれませんか。よろしく、ヤギャ
エンド ユーザー マシンの MAC アドレスと IP アドレス (ローカルおよび ISP) を決定する方法がよくわかりません。C# をプログラミング言語として使用する ASP.net ベースのシステムを使用しています。
誰かが案内してくれませんか。よろしく、ヤギャ
(イントラネット/LAN アプリではなく) インターネット Web アプリを作成している場合、クライアントから明示的に送信されない限り、クライアントのローカル アドレスと MAC アドレスを特定する方法はありません。フィールドごとに外部 (パブリック、インターネット) アドレスを取得できますRequest.UserHostAddress
。クライアントがプロキシを使用している場合は、実際のアドレスを明らかにする可能性があるため、別のオプションを確認することRequest.ServerVariables["REMOTE_ADDR"]
をお勧めします。Request.ServerVariables["HTTP_X_FORWARDED_FOR"]
いずれにせよ、これらのオプションは保証されていないため、依存するべきではありません。それらは検証の追加レイヤーになる可能性がありますが、身元を確認するための主要なメカニズムであってはなりません。
インターネット経由で PC の MAC アドレスを取得できない
MAC アドレスを取得するには、署名済みの ActiveX/jar/.net dll が必要です。それ以外の場合は、IP アドレスのみを取得できます。
ほとんどのクライアントは、署名されていないアクティブなコンポーネントをブロックするようにブラウザを設定しているため、署名する必要があります。
有効な CA からコード署名証明書を取得できます。
ASP.NET を使用するときにユーザーのマシンで実行されるのは、HTML と JavaScript だけです。JavaScript を使用して MAC アドレスを取得することはできませんが、IP アドレスを取得してポストバックすることはできます。
ローカル IP アドレスと MAC アドレスを取得するには、ユーザーに Java アプリケーションなどのアプリケーションを実行させる必要があります。