的主机名在c#中,要怎么获取到对方的主机名
1个回答
展开全部
获取主机名可以使用下面两种方法:
string machineName = Environment.MachineName; (System 命名空间下)
string hostName = Dns.GetHostName(); (System.Net命名空间下)
获取IP地址,(可能需要IPv4 或 IPv6, 有时主机环境会存在多个ip地址)
Dns.GetHostAddresses(hostName)可获得IPAddress[] 列表
或者
IPHostEntry hostEntry=Dns.GetHostEntry(hostName);
hostEntry.AddressList[] 也可以获取IP 地址列表
接下来可以使用自己的方法筛选获取想要的那个ip地址
比如IPv4 可以使用 hostEntry.AddressList[i].AddressFamily.ToString() == "InterNetwork" 作为判断条件;
IPv6可以使用hostEntry.AddressList[i].AddressFamily.ToString() == "InterNetworkV6"
或者使用 hostEntry.AddressList[i].IsIPv6LinkLocal 来判断
string machineName = Environment.MachineName; (System 命名空间下)
string hostName = Dns.GetHostName(); (System.Net命名空间下)
获取IP地址,(可能需要IPv4 或 IPv6, 有时主机环境会存在多个ip地址)
Dns.GetHostAddresses(hostName)可获得IPAddress[] 列表
或者
IPHostEntry hostEntry=Dns.GetHostEntry(hostName);
hostEntry.AddressList[] 也可以获取IP 地址列表
接下来可以使用自己的方法筛选获取想要的那个ip地址
比如IPv4 可以使用 hostEntry.AddressList[i].AddressFamily.ToString() == "InterNetwork" 作为判断条件;
IPv6可以使用hostEntry.AddressList[i].AddressFamily.ToString() == "InterNetworkV6"
或者使用 hostEntry.AddressList[i].IsIPv6LinkLocal 来判断
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询