gpt4 book ai didi

java - 如何从 JAVA 应用程序中获取所有 DNS 条目?

转载 作者:行者123 更新时间:2023-11-30 05:16:24 24 4
gpt4 key购买 nike

到目前为止,我正在使用以下代码来获取给定 IP 地址的 DNS 名称。我不想为网络中的每个 IP 地址获取它,而是想一次性从 DNS 服务器获取所有 DNS 条目(IP 地址 - 主机名映射)。是否可以?如果可以,该怎么做?

InetAddress addr = InetAddress.getByName(address);
dnsname = addr.getCanonicalHostName().trim();

最佳答案

无法从公共(public) DNS 服务器提取其保存的所有数据。唯一的解决办法是一一枚举所有IP地址。

如果您与 DNS 服务器有特殊关系(例如,它由您的雇主管理),您可以向 DNS 管理员请求转让整个区域的权限(该 DNS 请求称为 AXFR)。他们可能会授权您的 IP 地址或向您提供 TSIG key 来验证您的身份。

然后,您必须找到一种方法在 Java 中进行区域传输(可能使用 TSIG 身份验证)。使用这些关键字,我找到 some codedocumentation 。使用代码搜索引擎,如 Google Code SearchKrugle查找使用示例。

[DNS 专家可能会尖叫“在 NSEC 上使用区域行走”,但大多数 DNS 区域都没有使用 NSEC 签名。]

关于java - 如何从 JAVA 应用程序中获取所有 DNS 条目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/999743/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com