Linux DNS解析拒绝某些名称

时间:2013-01-12 02:26:34

标签: linux dns

当我注意到奇怪的差异时,我正在玩通配域(考虑将它们用于未来的项目)。

我的域配置了通配符DNS条目(*.vgoc.info)。我尝试ping a_.vgoc.info,在Linux上,我得到了

$ ping a_.vgoc.info
ping: unknown host a_.vgoc.info

但是,在OS X上,我得到了

$ ping a_.vgoc.info
PING vgoc.info (174.2.65.138): 56 data bytes

,类似于Windows。

有没有人知道Linux是否有一些拒绝某些模式的特殊“名称验证”?例如,ping a_b.vgoc.infoping a__b.vgoc.info工作正常,但ping a-.vgoc.info没有。

根据我对DNS规范的解读,这些名称并非违法。是否有其他一些限制这些名称的参考文献?

1 个答案:

答案 0 :(得分:2)

可能是因为根据RFC 1035,您的域名不合法。域名的每个部分(点之间)称为“标签”,这里是标签的语法:

<label> ::= <letter> [ [ <ldh-str> ] <let-dig> ]
<ldh-str> ::= <let-dig-hyp> | <let-dig-hyp> <ldh-str>
<let-dig-hyp> ::= <let-dig> | "-"
<let-dig> ::= <letter> | <digit>

请注意,下划线永远不合法,并且标签不能以连字符开头或结尾。