将子网parsing到特定的域

我想弄清楚如何解决我的CentOS机器上的特定域的子网。 例如,Google拥有一系列IP地址,特别是一个范围是64.233.160.0 - 64.233.191.255 。 现在他们还有更多,但我只是谈论这个问题的范围。

我最初试图做的是在/ etc / hosts文件中使用主机名Google ,但是我发现/ etc / hosts文件每行只有一个IP地址,而不是一个IP地址范围,甚至接受通配符。

之所以重要,是因为我们有一个跟踪用户访问的IP地址的产品,我们希望在树形图上绘制数据图表,而不是显示63.233.160.5的图表,我们希望它显示Google

到目前为止,我唯一的领导是使用/ etc / hosts文件,但是我不想单独为Google,Facebook等等单独input地址。 有没有另外一种方法可以达到我的目标,让我的生活变得轻松许多?

我想你可以很容易地查询到RADb 。 获取每个IP地址的ASN,并与这些工作。

例如:

 $ whois -h whois.radb.net 63.233.160.5 [Querying whois.radb.net] [whois.radb.net] route: 63.232.0.0/14 descr: Qwest Communications 950 17th Street Suite 1900 Denver, CO 80202 origin: AS209 mnt-by: MAINT-QWEST changed: [email protected] 20020504 source: RADB 

在这里我们看到,这个IP是在AS209(你可以存储,而不是IP,或者除此之外,如果你愿意的话),并注册到Qwest Communications,然后你可以显示。

如果要将IP地址parsing为networking名称而不是主机名称,则不应使用旨在将IP地址parsing为主机名的工具。 换句话说,该工具不应该从/etc/hosts或通过使用任何库调用来获取映射,这些调用将查找/etc/hosts的映射或通过DNS中的PTRlogging。

如果networking不在指定的文件中,该工具可以被赋予一个带有要显示的networking前缀和名称的列表的单独文件,并且可以退回到将IP地址parsing为主机名。