如何确定IP地址属于哪个公司?

时间:2009-06-23 13:05:43

标签: .net dns whois

我正在尝试以编程方式确定与给定IP地址关联的公司*。

我的第一个猜测是:

  string hostname = Dns.GetHostEntry(IPAddress.Parse(ip)).HostName;

但如果没有正确设置反向DNS,这将无法正常工作,这似乎在90%的情况下都会发生。

但是,即使反向DNS失败,某些网站仍能成功确定与特定IP关联的公司。例如,在this site上,即使未设置主机名,ISP提供商字段有时也包含有价值的信息(即公司名称)。

使用.net实现同样功能的最简单方法是什么?


注意:

  • 我不需要规范名称。即MS或微软都可以。
  • 我的目标是那些可能“拥有”其IP地址范围的大公司。
  • 我在Windows上运行,因此默认情况下不会安装unix的whois工具。

关于使用whois的编辑:有时,there's no whois information associated with an IP

5 个答案:

答案 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。),您会发现生成的格式并不总是很容易解析 - 可读...是的,可解析的......没有。