Вопрос asp.net относительно получения IP-адреса пользователя

StackOverflow https://stackoverflow.com/questions/3683225

Вопрос

Я пытаюсь получить IP-адрес, используя это: -

    protected void Page_Load(object sender, EventArgs e)
    {
        string ClientIP;
        ClientIP = HttpContext.Current.Request.UserHostAddress;
        Label1.Text = ClientIP;
    }

Этот код выводит 127.0.0.1.

И код ниже ничего не отображает!

    string ClientIP;
    ClientIP = HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"];
    Label1.Text = ClientIP;

Как получить IP-адрес? Реальный IP-адрес пользователя?

РЕДАКТИРОВАТЬ

Я не хочу точное расположение, кстати. Мне нужно знать страну, а затем перенаправить пользователя в веб-страницу соответственно.

Это было полезно?

Решение

Request.Params["REMOTE_ADDR"]

Другие советы

Использование System.net, попробуйте это -

// Then using host name, get the IP address list..
          IPHostEntry ipEntry = DNS.GetHostByName (strHostName);
          IPAddress [] addr = ipEntry.AddressList;

          for (int i = 0; i < addr.Length; i++)
          {
              Console.WriteLine ("IP Address {0}: {1} ", i, addr[i].ToString ());
          }
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top