JNDIを使用してDNSサーバーからSRVレコードを取得しようとしています。
Hashtable<String, String> env = new Hashtable<String, String>();
env.put("java.naming.factory.initial", "com.sun.jndi.dns.DnsContextFactory");
env.put("java.naming.provider.url", "dns://dns.server.com");
DirContext ctx = new InitialDirContext(env);
Attributes attributes = ctx.getAttributes("_sip._udp", new String [] { "SRV" });
return attributes;
しかし、属性を取得しようとすると、次の例外が発生します
DNSエラー[ルート例外はjava.net.PortUnreachableException:ICMPポートに到達できません]; 残りの名前'_sip._udp'
host -tsrv_sip._udp.server.comが有効なSRVレコードを返すことを確認しました。
これが起こるかもしれない理由として何か理由はありますか?