-1

我目前正在编写一个 C# 程序来将一台计算机连接到局域网上的另一台计算机。我有接收计算机的计算机名称,但 ip 是动态的,因此它会不时更改。

我如何获得接收计算机的局域网 IP 地址?(类似 192.168.1.# 的那个)

4

2 回答 2

2

假设根据您的假设您正在寻找第一个 IPv4 ip 地址,您可以使用以下内容:

String name = "Name";
IPHostEntry ipHostInfo = Dns.GetHostEntry(name);            
// OR you can get the name of the current computer using 
// IPHostEntry ipHostInfo = Dns.GetHostEntry(Dns.GetHostName());                

// Get the first IPv4 address
IPAddress ip = ipHostInfo.AddressList.Where(n => n.AddressFamily == AddressFamily.InterNetwork).First();
于 2013-07-05T10:44:44.293 回答
1

Dns.GetHostAddresses 方法

您可以将主机名解析为 IP,如下所示

string hostName = "www.Google.com";
IPAddress[] addresslist = Dns.GetHostAddresses(hostName);

foreach (IPAddress address in addresslist)
{
   string ip = address.ToString();
}
于 2013-07-05T10:44:33.590 回答