【问题标题】:DNS Java no text format defined for TSIGDNS Java 没有为 TSIG 定义文本格式
【发布时间】:2019-08-15 02:50:27
【问题描述】:

我正在使用 DNS Java 库中的 Master 类来解析绑定区域文件。但是,当我尝试从 Neustar 解析 .BIZ 区域文件时,我收到此错误:

org.xbill.DNS.Tokenizer$TokenizerException: 486: no text format defined for TSIG

我会捕获此异常并继续处理条目,但 TokenizerException 类在包外无法访问,因此我无法捕获它。我为每条记录调用zoneFileRecord.rdataToString()

他们的文件包含如下所示的 TSIG 条目:

4h039a453.biz.      3600    IN  NS  ns1.rbe1.g-srv.net.
monitor.reg.neustar.com. 0  ANY TSIG    hmac-md5.sig-alg.reg.int. 1553302104 300 16 YWDHVhM3MpeTglOvyaj5fA== 27955 NOERROR 0 
4h039a453.biz.      3600    IN  NS  ns2.rbe1.g-srv.net.
4h06-ro1eyrm9.biz.  3600    IN  NS  ns1.gm111.parklogic.com.
4h06-ro1eyrm9.biz.  3600    IN  NS  ns2.gm111.parklogic.com.

【问题讨论】:

  • 你的问题是什么?在最坏的情况下,如果您当前的库不支持 TSIG 记录并且您无法让它恢复,那么在将 TSIG 记录提供给您的解析库之前将其从区域文件中过滤掉。或者如果你有它的来源,就修复这个库。
  • DNSJava 非常流行。我只是很惊讶没有其他人遇到这种情况。我在库中看到了 TSIG java 文件。我最终自己处理了异常。
  • 很少使用TSIG记录...

标签: java dns dnsjava


【解决方案1】:

dnsjava 支持 TSIG 记录,但似乎没有实现从字符串表示构造它。记录了一个修复库的问题:https://github.com/dnsjava/dnsjava/issues/38

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-07
    • 2019-09-17
    • 1970-01-01
    • 1970-01-01
    • 2018-09-07
    • 2018-07-19
    相关资源
    最近更新 更多