2

我有一个巨大的表,其中包含其他信息和 IP 地址列。

我想对这些数据进行几次计算,但按IP 所属的子网对其进行分组。目前我正在使用 whois 来获取 IP 子网 这种方法的问题是它需要很长时间,因为我在表中有数百万个不同的 IP。我已经通过仅查找不包含在任何已知子网中的 IP 来优化脚本,但它仍然很慢。

有没有比使用 whois 更好、更快的方法来获取子网?

4

1 回答 1

0

一种可能的解决方案(有点老套)是使用 DOM 脚本从ARIN中提取信息。

例如,如果我访问http://whois.arin.net/rest/ip/128.61.29.153,它将为我提供有关分配给佐治亚理工学院的所有信息。

使用 PHP Simple HTML DOM Parser,我可以这样做:

$html = file_get_html('http://whois.arin.net/rest/ip/128.61.29.153');
# Insert DOM parsing here - it is not trivial but it is definitely possible.

这也不是很快,但它确实提供了另一种解决方案。

于 2013-11-06T14:38:51.383 回答