java获取dns记录_java-使用JNDI获取DNS SRV记录

以下内容之一:dns.server.com不是有效的DNS服务器,没有_sip._udp的SRV记录,DNS服务在端口53(标准DNS端口)上没有响应,或者您的Java代码错误.

要诊断DNS服务器问题,您可以尝试使用主机-t SRV _sip._udp.server.com dns.server.com或dig @ dns.server.com -t SRV _sip._udp.server.com确认服务器正常运行.

如果host或dig返回期望的条目,请尝试对代码进行以下更改:

更改:

env.put("java.naming.provider.url", "dns://dns.server.com");

至:

env.put("java.naming.provider.url", "dns:");

(即,仅使用操作系统的标准DNS解析度)

更改:

ctx.getAttributes("_sip._udp", new String [] { "SRV" });

至:

ctx.getAttributes("_sip._udp.domain.com", new String [] { "SRV" });

因为SRV记录需要一个域名才能搜索,所以您最终得到:

Hashtable env = new Hashtable();

env.put("java.naming.factory.initial", "com.sun.jndi.dns.DnsContextFactory");

DirContext ctx = new InitialDirContext(env);

Attributes attributes = ctx.getAttributes("_sip._udp.domain.com", new String [] { "SRV" });

return attributes;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值