Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/393.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java:主机名查找不适用于InetAddress&;org.xbill.DNS_Java_Dns_Nslookup_Reverse Dns - Fatal编程技术网

Java:主机名查找不适用于InetAddress&;org.xbill.DNS

Java:主机名查找不适用于InetAddress&;org.xbill.DNS,java,dns,nslookup,reverse-dns,Java,Dns,Nslookup,Reverse Dns,我一直在尝试用Java编写代码来进行DNS反向查找(从给定的IP查找主机名) 我试过以下几种方法 InetAddress addr1 = InetAddress.getByName("11.121.5.67"); String host = addr1.getHostName(); byte[] ipAddr = new byte[] {(byte)34, (byte)195, (byte)110, (byte)15}; host = InetAddress.getByAddress(i

我一直在尝试用Java编写代码来进行DNS反向查找(从给定的IP查找主机名)

我试过以下几种方法

InetAddress addr1 = InetAddress.getByName("11.121.5.67");
String host = addr1.getHostName();


byte[] ipAddr = new byte[] {(byte)34, (byte)195, (byte)110, (byte)15};  
host = InetAddress.getByAddress(ipAddr);
String hos = host.getCanonicalHostName();


Using org.xbill.DNS Library
lookup = new Lookup(ipaddress,Type.ANY);
Resolver resolver  = new SimpleResolver();
lookup.setResolver(resolver);
lookup.setCache(null);
Record[] records = lookup.run();


byte[] ipAddr = new byte[] {(byte)15, (byte)110, (byte)195, (byte)34};
Resolver res = new ExtendedResolver();
Name name = ReverseMap.fromAddress(ipAddr);
int type = Type.PTR;
int dclass = DClass.IN;
Record rec = Record.newRecord(name, type, dclass);
Message query = Message.newQuery(rec);
Message response = res.send(query);
Record[] answers = response.getSectionArray(Section.ANSWER);
但这些选项都不起作用。我可以使用
InetAddress
从FQDN获取IP地址。但上述任何一种选择都不能反过来

在使用
org.xbill.DNS
进行DNS查找之前,是否应设置
ResolverConfig
或任何其他配置

基本上,我想在组织级网络系统中执行
DNSlookup

我是Java和这些库的新手。任何帮助都将不胜感激