7

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

我的第一个猜测是:

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

但如果反向 DNS 设置不正确,这将不起作用,这似乎在 90% 的时间发生。

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

使用 .net 实现相同目标的最简单方法是什么?


备注:

  • 我不需要一个规范的名字。即 MS 或 Microsoft 都可以。
  • 我的目标是大公司,它们可能“拥有”他们的 IP 地址范围。
  • 我在 Windows 上运行,因此默认情况下未安装 unix 的 whois 工具。

关于使用 whois 的编辑:有时,没有与 IP 关联的 whois 信息

4

5 回答 5

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]
于 2009-06-23T13:19:21.100 回答
0

大多数情况下,我支持“whois”的答案。过去,公司拥有整个地址块,因此人们编写自己的“whois”过去相当容易,但随着 IP(v4) 地址变得越来越稀缺,它就不再那么容易了。我什至不会考虑现在尝试。使用真实的whois。

于 2009-06-23T14:03:46.533 回答
0

与许多程序问题一样,您所问的问题并不像您想象的那么简单。

问题首先...您希望解析的 IP 地址的来源是什么 - 网站“访问者”、Web 服务器或未知来源?出于此回复的目的,我假设您希望“转换”网站访问者,因为这是解决 IP-> 公司的最常见/最有价值的原因。

问题一...使用 WHOIS,您可以解析与相关 IP 地址关联的网络块(IP 地址范围)的“所有者”。网络块的“所有者”(通常)是为您希望识别的公司提供服务的 ISP,而不是使用 IP 地址的公司。

问题二... DNS 不是 IP->domain.tld 或 domain.tld->ip 类型解析之外的任何东西的可靠来源。除此之外,它没有强制执行(不是真的),也不是完全可靠的。

问题三...这对您来说可能不是问题。根据解析您的 WHOIS 查询的 NIC(ARIN、RIPE 等),您会发现生成的格式并不总是易于解析 - 可读……是的,可解析……不。

于 2010-02-19T03:07:08.430 回答
0

您可以在https://ws.arin.net/whois网站上进行 whois 查询,并解析出您要查找的信息。

于 2009-06-23T13:09:49.963 回答
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

高温高压

OneSHOT

于 2009-06-23T14:32:56.847 回答