ASP.NET вопрос относительно получения IP-адреса пользователя - PullRequest
0 голосов
/ 10 сентября 2010

Я пытаюсь получить 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-адрес пользователя?

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

Я не хочу ТОЧНОГО местоположения Кстати. Мне нужно знать страну, а затем соответственно перенаправить пользователя на веб-страницу.

Ответы [ 2 ]

3 голосов
/ 10 сентября 2010
Request.Params["REMOTE_ADDR"]
2 голосов
/ 10 сентября 2010

Используя 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 ());
          }
...