将子网解析为特定域

将子网解析为特定域

我正在尝试弄清楚如何解析 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 等的每个地址。​​还有其他方法可以实现我的目标,让我的生活变得轻松很多吗?

答案1

我认为你可以很容易地查询辐射剂量为此。获取每个 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,或者将其添加到 IP 中)并且已注册到 Qwest Communications,然后您可以显示它。

答案2

如果您希望将 IP 地址解析为网络名称而不是主机名称,则不应使用旨在将 IP 地址解析为主机名的工具。换句话说,该工具不应从/etc/hosts或通过使用任何库调用来获取映射,这些库调用从 DNS 中的 PTR 记录或通过 PTR 记录查找映射/etc/hosts

可以为该工具提供一个单独的文件,其中包含要显示的网络前缀和名称的列表,如果网络不在指定的文件中,则可以选择将 IP 地址解析为主机名。

相关内容