首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >DNS记录解析:如何区分名称和TTL?

DNS记录解析:如何区分名称和TTL?
EN

Stack Overflow用户
提问于 2015-12-30 21:15:03
回答 2查看 391关注 0票数 1

我正在开发一个DNS区域文件解析器,但我对不同的有效格式感到困惑,例如对于A记录

代码语言:javascript
复制
domain.com. IN A 192.168.0.10

@ IN A 192.168.0.10

   IN A 192.168.0.10

abc IN A 192.168.0.10

abc.domain.com. IN A 192.168.0.10

这是有意义的,我可能会为它找出一个解析逻辑,但当TTL进入时,我不确定如何区分记录名和TTL。

10 A 192.168.0.111;此处10可以是TTL或记录名称

如果记录是(@ 10 A 192.168.0.10)的缩写,10可以充当TTL;如果实际记录是(10 IN A 192.168.0.10),它可以充当记录名称。

有没有人知道如何区分TTL和记录名称?

EN

回答 2

Stack Overflow用户

发布于 2016-01-05 20:37:34

根据RFC 1034的说法

在所有者之后,我们列出了RR的

、类型和类。Class和type使用上面定义的助记符,TTL是type字段前面的一个整数。为了避免解析时的多义性,类型和类助记符是不相交的,TTL是整数,类型助记符总是在最后。为了清楚起见,示例中经常省略IN类和TTL值。

这基本上意味着如果它是一个整数,它就是一个TTL。根据标签( RFC 1912 =主机名)

主机名标签中允许的字符仅为ASCII码字母、数字和‘-’字符。标签可以不是所有的数字,但可以有一个前导数字

有些DNS实现确实允许整型主机名(bind),但是,这在实现时会导致与其他系统的其他交互出现问题。

所以在上面的例子中,10只能是一个TTL。

票数 1
EN

Stack Overflow用户

发布于 2015-12-31 02:17:07

DNS区域文件格式在RFC 1035第5节中定义。您的特定问题的答案在第5.1节中。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34530298

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档