Java 如何为单个IP获取多个域?
方法是这样的-Java 如何为单个IP获取多个域?,java,dnsjava,Java,Dnsjava,方法是这样的- public static String getHostByAddr(byte[] addr) throws UnknownHostException { Name name = ReverseMap.fromAddress(InetAddress.getByAddress(addr)); final String[] servers = new String[] {"208.67.220.220", "208.67.222.222"}; final
public static String getHostByAddr(byte[] addr) throws UnknownHostException {
Name name = ReverseMap.fromAddress(InetAddress.getByAddress(addr));
final String[] servers = new String[] {"208.67.220.220", "208.67.222.222"};
final Resolver res = new ExtendedResolver(servers);
final Lookup lookUp = new Lookup(name, Type.PTR);
lookUp.setResolver(res);
Record[] records = lookUp.run();
if (records == null) {
throw new UnknownHostException();
}
return ((PTRRecord) records[0]).getTarget().toString();
}
下面是对上述方法的调用-
final InetAddress ip = InetAddress.getByName("198.154.218.168");
final byte[] bytes = ip.getAddress();
final String host = getHostByAddr(bytes);
System.out.println("Host - " + host);
在大多数情况下工作正常,但当IP映射到多个域时失败(?)
下面是一个例子-
有没有可能这样做?一般来说,你不能。正如域securonix.com的所有者在其DNS服务器上创建了一个条目,将securonix.com转换为198.154.218.168一样,IP地址198.154.218.168的所有者维护一个将IP地址映射到默认DNS名称的“反向”DNS记录(通常在单独的服务器上)。有关反向DNS查找的更多信息,请参阅wikipedia上“”页,并注意反向DNS查找(从IP地址到名称)通常由域名所有者以外的其他所有者维护,而不仅仅是通过交换名称和IP地址“自动”创建的 此外,您提到的站点似乎没有该IP地址的反向DNS条目,因此您永远无法从标准DNS查询中获得198.154.218.168的答案;198.154.218.168没有(反向)DNS条目,上述代码失败 作为正向和反向DNS查找之间差异的一个示例,当我第一次分配静态IP地址时,我的提供商(Comcast)将IP地址映射到一些通用名称,如75-148-#-#-#-#-#休斯顿.hfc.comcastbusiness.net(随机IP地址示例)我要求他们修改反向DNS条目,将其映射到我的域名,以便IP地址和域名的正向和反向查找匹配。他们在他们的DNS服务器上维护IP地址的查找,我在我的DNS服务器上维护域名的查找
yougetsignal.com上的页面必须对名称进行DNS(正向)查找,并将其存储在可供购买的大型数据库中,这样网页才能找到具有相同IP的所有名称。但是,对于任意IP地址,通过查询DNS服务器并没有简单的方法可以做到这一点,除非您有大量的额外信息,或者已经完成了数百万次类似于该站点的查找。一般来说,您不能。正如域securonix.com的所有者在其DNS服务器上创建了一个条目,将securonix.com转换为198.154.218.168一样,IP地址198.154.218.168的所有者维护一个将IP地址映射到默认DNS名称的“反向”DNS记录(通常在单独的服务器上)。有关反向DNS查找的更多信息,请参阅wikipedia上“”页,并注意反向DNS查找(从IP地址到名称)通常由域名所有者以外的其他所有者维护,而不仅仅是通过交换名称和IP地址“自动”创建的 此外,您提到的站点似乎没有该IP地址的反向DNS条目,因此您永远无法从标准DNS查询中获得198.154.218.168的答案;198.154.218.168没有(反向)DNS条目,上述代码失败 作为正向和反向DNS查找之间差异的一个示例,当我第一次分配静态IP地址时,我的提供商(Comcast)将IP地址映射到一些通用名称,如75-148-#-#-#-#-#休斯顿.hfc.comcastbusiness.net(随机IP地址示例)我要求他们修改反向DNS条目,将其映射到我的域名,以便IP地址和域名的正向和反向查找匹配。他们在他们的DNS服务器上维护IP地址的查找,我在我的DNS服务器上维护域名的查找
yougetsignal.com上的页面必须对名称进行DNS(正向)查找,并将其存储在可供购买的大型数据库中,这样网页才能找到具有相同IP的所有名称。但是,对于任意IP地址,要通过查询DNS服务器实现这一点并不容易,除非您有大量的附加信息,或者已经完成了数百万次类似于该站点的查找。我发现有两个网站提供了这一功能。但是我不知道他们是如何实现这个功能的
域工具提供api调用。也许您可以调用domaintools api为单个IP获取多个域名。我发现有两个网站提供了此功能。但是我不知道他们是如何实现这个功能的