web-dev-qa-db-ja.com

C#でマシンのIPアドレスを取得する方法

C#でマシンのIPアドレスを取得するにはどうすればよいですか?

12
Azhar
IPAddress[] localIPs = Dns.GetHostAddresses(Dns.GetHostName());

お使いのマシンには単一のIPアドレスがなく、返されるアドレスの一部はIPv6である可能性があります。

MSDNリンク:

あるいは、 MSalters で述べたように、127.0.0.1/::1ループバックアドレス であり、常にローカルマシンを参照します。ただし、明らかな理由により、リモートマシンからローカルマシンに接続するために使用することはできません。

33
Richard Szalay

私の望んだ答えは

string ipAddress = "";
if (Dns.GetHostAddresses(Dns.GetHostName()).Length > 0)
{
     ipAddress = Dns.GetHostAddresses(Dns.GetHostName())[0].ToString();
}
9
Azhar
 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 ());
 }
1
Gopi
 string hostName = Dns.GetHostName(); // Retrive the Name of Host

           // Get the IP
            string myIP = Dns.GetHostByName(hostName).AddressList[0].ToString();

//次の名前空間を使用-System.Netを使用;

0
Ranjeet