我想从C#
获取特定IP范围的域名 IPAddress addr = IPAddress.Parse("100.10.100."+i);
entry = Dns.GetHostEntry(addr);
但是我遇到了这个错误 请求的名称有效并且已在数据库中找到,但它没有正确的关联数据被解析
有些Ip没有域名。但我无法检查GetHostEntry。 我尝试了但没有改变。我遇到了同样的错误
if(Dns.GetHostEntry(addr)!=null)
如何绕过此错误进行空检查?
答案 0 :(得分:0)
您可以在C#中使用try-catch语句:
for (int i = 1; i <= 255; i++) {
IPAddress addr = IPAddress.Parse("100.10.100."+i);
try
{
entry = Dns.GetHostEntry(addr);
//some other codes that cause exception
}
catch(SocketException ex)
{
//do something
}
catch(Exception ex)
{
//catch all other exceptions
}
}