Dipali_Wagh Ответов: 4

как получить ip - адрес вошедшего в систему пользователя в c#


Привет,

Я хочу получить ip-адрес пользователя, который заходит на мой сайт. Может ли кто-нибудь plz помочь мне сделать это.
Я использую код, но он возвращает ::1
Вот мой код:

public static string getclientIP()
  {
      string result = string.Empty;
      string ip = HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"];
      if (!string.IsNullOrEmpty(ip))
      {
          string[] ipRange = ip.Split(',');
          int le = ipRange.Length - 1;
          result = ipRange[0];
      }
      else
      {
          result = HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"];
      }

      return result;
  }

Dipali_Wagh

это не работает,
это дает ip - адрес как - :: 1

4 Ответов

Рейтинг:
2

manjunathmk

строка clientIp = (запрос.ServerVariables["HTTP_X_FORWARDED_FOR"] ?? Запрос.ServerVariables["REMOTE_ADDR"]).Split(',')[0].Trim();

это может тебе помочь....


Dipali_Wagh

Привет, это решение тоже не работает. Он также дает ip-адрес как ::1

manjunathmk

это даст, когда вы используете просматривать ваш проект, используя localhost как вттп://localhost в/loginpage.в aspx-попробуйте использовать IP-адрес локальной машины, это даст правильный другой U опубликовать его на сервере и протестировать его.

Рейтинг:
15

hebsiboy

Вы просто попробуйте этот код



используйте эту библиотеку dll
использование System.Net;

public string GetIP()
    {
        string strHostName = "";
        strHostName = System.Net.Dns.GetHostName();

        IPHostEntry ipEntry = System.Net.Dns.GetHostEntry(strHostName);

        IPAddress[] addr = ipEntry.AddressList;

        return addr[addr.Length-1].ToString();

    }


Dipali_Wagh

его работа
спасибо
но скажите мне, будет ли он возвращать ip - адрес клиента или нет?
значит он должен быть другим а не ip адресом сервера

Dipali_Wagh

Эй, из-за этого возникла одна проблема.
если я изменю свою сеть, то она изменится.
arrayList меняется.
так что plz sujjest мне что-то, чтобы получить точный индекс массива

Dipali_Wagh

Эй плз ответь мне

Рейтинг:
1

Nirav Prabtani

Настройте свой IP - адрес с помощью "inetmgr"


Рейтинг:
1

Shambhoo kumar

rivate string GetUserIP()
 {
     return Request.ServerVariables["HTTP_X_FORWARDED_FOR"] ?? Request.ServerVariables["REMOTE_ADDR"];
 }


Спасибо и уважительное отношение
Фиктивный


Dipali_Wagh

как я написал свой код. это дает ip - адрес как - :: 1
это не работает