Get IP address of client machine

前端 未结 4 1278
情书的邮戳
情书的邮戳 2020-12-09 11:09

I am trying to get the IP address of client machine using C#. I am using the below code to get the IP address :

string IPAddress = HttpContext.Current.Reque         


        
相关标签:
4条回答
  • 2020-12-09 11:23

    C#

    string IPAddress = GetIPAddress();
    
    public string GetIPAddress()
    {
        IPHostEntry Host = default(IPHostEntry);
        string Hostname = null;
        Hostname = System.Environment.MachineName;
        Host = Dns.GetHostEntry(Hostname);
        foreach (IPAddress IP in Host.AddressList) {
            if (IP.AddressFamily == System.Net.Sockets.AddressFamily.InterNetwork) {
                IPAddress = Convert.ToString(IP);
            }
        }
        return IPAddress;
    }
    

    VB.net

    Dim Host As IPHostEntry
    Dim Hostname As String
    Hostname = My.Computer.Name
    Host = Dns.GetHostEntry(Hostname)
    For Each IP As IPAddress In Host.AddressList
        If IP.AddressFamily = System.Net.Sockets.AddressFamily.InterNetwork Then
            IPAddress = Convert.ToString(IP)
        End If
        Next
    Return IPAddress
    

    Hope this helps

    0 讨论(0)
  • 2020-12-09 11:31

    In my project it's required to get the local PC IP. So i use it Please try the below code

    string strHostName = System.Net.Dns.GetHostName();
    IPHostEntry ipEntry = System.Net.Dns.GetHostEntry(strHostName);
    IPAddress[] addr = ipEntry.AddressList;
    string ip = addr[1].ToString();
    
    0 讨论(0)
  • 2020-12-09 11:35

    try using this

    string ip=System.Net.Dns.GetHostEntry
                   (System.Net.Dns.GetHostName()).AddressList.GetValue(0).ToString();
    
    0 讨论(0)
  • 2020-12-09 11:37
    private string GetUserIP()
     {
         return Request.ServerVariables["HTTP_X_FORWARDED_FOR"] ?? Request.ServerVariables["REMOTE_ADDR"];    
     }
    

    You may get several ip address, so can split them as-

    private string GetUserIP()
        {
            string ipList = Request.ServerVariables["HTTP_X_FORWARDED_FOR"];
    
            if (!string.IsNullOrEmpty(ipList))
            {
                return ipList.Split(',')[0];
            }
    
            return Request.ServerVariables["REMOTE_ADDR"];
        }
    
    0 讨论(0)
提交回复
热议问题