JavaでDNSサービスをいじっています-nslookupを使用してルックアップを実行するのと同様に、すべてのgoogle.comアドレスをルックアップして配列に表示しようとしています。
nslookup -q=TXT _netblocks.google.com 8.8.8.8
これにはInetAddress
を使用していますが、例外エラーが発生し続けます。エラーは「不明なホスト」を参照しているため、InetAddress
がTXTレコードを読み取ることができないと思います(google.comを使用している場合は機能しますが、表示されません完全なIP範囲)。以下は私のコードです。
InetAddress dnsresult[] = InetAddress.getAllByName("_netblocks.google.com");
for (int i=0; i<dnsresult.length; i++)
System.out.println (dnsresult[i]);
誰かが私を正しい方向に向けることができれば幸いです。
-JK
あなたcannotlookup TXTまたは他のDNSレコードInetAddress
クラス。InetAddress.getAllByName()
[〜#〜] a [〜#〜]、または[〜#〜] aaaa [〜#〜]を検索します)レコードのみ。
必要に応じて DNS Java を確認してください。
InetAddress
はこれを行いませんが、DNS TXTレコードルックアップをJava JNDI DNSプロバイダー 。
これがあなたがやろうとしていることをする例です:
Attribute attr = new InitialDirContext().getAttributes("dns:_netblocks.google.com", new String[] {"TXT"}).get("TXT");
System.out.println("attr.get() = " + attr.get());
System.out.println("attr.getAll() = " + Collections.list(attr.getAll()));
カスタムDNSサーバーを使用する場合は、代わりに「dns://1.1/_netblocks.google.com」を使用してください。