2

基盤となるサーバーから正確なDNS情報を取得するためのJavaのライブラリはありますか?

IPからDNSへのマッピングだけでなく、A、AAAA、MX、NS、SOA、RRSIG などの他のレコードにも関心があります。

4

2 に答える 2

4

コードが Oracle VM で実行される場合は、JNDI に DNS プロバイダーを使用できます。

Hashtable<String, Object> env = new Hashtable<String, Object>();
env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.dns.DnsContextFactory");
env.put(Context.PROVIDER_URL, "dns:");

DirContext ctx = new InitialDirContext(env);
Attributes atts = ctx.getAttributes("stackexchange.com", new String[] {"MX"});
NamingEnumeration<? extends Attribute> e = atts.getAll();
while(e.hasMore()) {
    System.out.println(e.next().get());
}
于 2013-01-24T11:42:05.357 に答える
2

dnsjava lib を使用することをお勧めします。

<dependency>
    <groupId>dnsjava</groupId>
    <artifactId>dnsjava</artifactId>
</dependency>

例は次のようになります。

Record[] rs = new Lookup("maildomain.com", Type.MX).run();
于 2014-06-25T15:01:04.080 に答える