How to get the IP address of a machine in C#

前端 未结 4 436
予麋鹿
予麋鹿 2020-12-01 18:35

How do I get the IP address of a machine in C#?

相关标签:
4条回答
  • 2020-12-01 19:09
    IPAddress[] localIPs = Dns.GetHostAddresses(Dns.GetHostName());
    

    Your machine doesn't have a single IP address, and some of the returned addresses can be IPv6.

    MSDN links:

    • Dns.GetHostAddresses
    • IPAddress

    Alternatively, as MSalters mentioned, 127.0.0.1 / ::1 is the loopback address and will always refer to the local machine. For obvious reasons, however, it cannot be used to connect to the local machine from a remote machine.

    0 讨论(0)
  • 2020-12-01 19:14
     IPHostEntry ip = DNS.GetHostByName (strHostName);
     IPAddress [] IPaddr = ip.AddressList;
    
     for (int i = 0; i < IPaddr.Length; i++)
     {
      Console.WriteLine ("IP Address {0}: {1} ", i, IPaddr[i].ToString ());
     }
    
    0 讨论(0)
  • 2020-12-01 19:20
     string hostName = Dns.GetHostName(); // Retrive the Name of HOST
    
               // Get the IP
                string myIP = Dns.GetHostByName(hostName).AddressList[0].ToString();
    

    //use Following Namespace- using System.Net;

    0 讨论(0)
  • 2020-12-01 19:24

    My desired answer was

    string ipAddress = "";
    if (Dns.GetHostAddresses(Dns.GetHostName()).Length > 0)
    {
         ipAddress = Dns.GetHostAddresses(Dns.GetHostName())[0].ToString();
    }
    
    0 讨论(0)
提交回复
热议问题