web-dev-qa-db-ja.com

返される結果「:: 1」のRequest.UserHostAddressの問題

私はクライアントのIPアドレスを取得しようとしています

    HttpContext.Request.UserHostAddress;

ただし、::1を返します。

これを解決するには?

50

::1localhostのためのものです。たぶん this が役に立つかもしれません。

51
V4Vendetta

これはバグではありません。 localhost から IPv6 が有効なマシンに接続しています。 ::1はループバックアドレスです- 二重コロンは「省略されたゼロ」を意味します 。したがって、このアドレスはアドレス1に対応します。

あなたが開発している場合新しいソフトウェア、私はあなたに勧めますnot IPv6を無効にします。サポートを実装する最も簡単な時間は、最初から適切であり、回避策に時間を費やすことは、必然的に避けられないことを延期する努力を無駄にするだけです。

27
Eamon Nerbonne

これがバグではないことは事実ですが、問題がうまく説明され、「解決」されている this link をチェックすることができます。ユーザーがWindows Server 2008::1行をコメントすることで実行しているアプリケーションのいくつかの問題を修正したため、問題の動作はオペレーティングシステムによって異なると述べています。 hostsファイル、彼はWindows 7でコメント解除する必要がありました。

それを解決できたことを願っています!幸運を!

3
FranciscoBouza

実際にはローカルホストでアプリケーションを実行しているバグではありません。ローカルホストのIPを提供しているだけで、ipv6形式です。

1
Rajat Singh