我正在尝试以编程方式确定与给定IP地址关联的公司*。
我的第一个猜测是:
string hostname = Dns.GetHostEntry(IPAddress.Parse(ip)).HostName;
但如果没有正确设置反向DNS,这将无法正常工作,这似乎在90%的情况下都会发生。
但是,即使反向DNS失败,某些网站仍能成功确定与特定IP关联的公司。例如,在this site上,即使未设置主机名,ISP提供商字段有时也包含有价值的信息(即公司名称)。
使用.net实现同样功能的最简单方法是什么?
注意:
关于使用whois的编辑:有时,there's no whois information associated with an IP
答案 0 :(得分:2)
您可以从microsoft
安装Windows的whois命令行工具编辑:那你要找什么信息?
>whois bbc.co.uk
Domain name:
bbc.co.uk
Registrant:
British Broadcasting Corporation
Registrant type:
UK Limited Company, (Company number: 000057)
Registrant's address:
Research & Development
Kingswood Warren
Tadworth
Surrey
KT20 6NP
United Kingdom
Registrar:
British Broadcasting Corporation [Tag = BBC]
答案 1 :(得分:0)
您可以在https://ws.arin.net/whois网站上进行whois查询,并解析您要查找的信息。
答案 2 :(得分:0)
大多数情况下,我都是在回答“whois”的答案。回到当天公司拥有整个地址块,所以过去人们很容易写出自己的“whois”,但随着IP(v4)地址越来越稀缺,它就不再容易了。我甚至都不想现在尝试一下。使用真正的whois。
答案 3 :(得分:0)
选中此http://ws.arin.net/whois/,它应该提供您需要的信息
您可以尝试申请
http://ws.arin.net/whois/?queryinput= {ipaddress}使用WebClient或WebRequest,然后尝试解析返回的字符串。
一个简单的string.IndexOf(“OrgName:”)查找应该让你关闭。
示例网址http://ws.arin.net/whois/?queryinput=207.46.193.254
HTH
单稳
答案 4 :(得分:0)
与许多编程问题一样,你所要求的并不像你想象的那么简单。
首先问题...您希望解决的IP地址的来源是什么 - 网站“访问者”,网络服务器或未知来源?出于此回复的目的,我将假设您希望“转换”网站访问者,因为这是解决IP->公司的最常见/有价值的原因。
问题一...... 使用WHOIS,您可以解析与相关IP地址关联的网络块(IP地址范围)的“所有者”。网络块的“所有者”(通常)是服务于您希望识别的公司的ISP - 而不是使用IP地址的公司。
问题二...... DNS不是IP-> domain.tld或domain.tld-> ip type resolution之外的任何可靠来源。除此之外,它不是强制执行(不是真正的),也不是完全可靠的。
问题三...... 这对您来说可能不是问题。根据解析了您的WHOIS查询的NIC(ARIN,RIPE,et.al。),您会发现生成的格式并不总是很容易解析 - 可读...是的,可解析的......没有。