PTR记录中可以允许出现“\”字符吗?

PTR记录中可以允许出现“\”字符吗?

当我连接到我的 WiFi 路由器 (TIM) 时,我的计算机将登录到路由器的内部 DNS 和 PTR,其值是:MBP-di-Antonio.homenet.telecomitalia.it。

我通过以下命令获取 PTR 值: dig -x $MY_IP_ADDRESS

...
;; QUESTION SECTION:
;53.1.168.192.in-addr.arpa. IN  PTR

;; ANSWER SECTION:
53.1.168.192.in-addr.arpa. 0    IN  PTR MBP-di-Antonio.homenet\.telecomitalia\.it.
...

PTR 记录中字符 \ 的存在会给电子邮件客户端带来一些问题。

MBP-di-Antonio:~ amusarra$ telnet smtp.dontesta.it 25
Trying 62.149.128.203...
Connected to smtp.dontesta.it.
Escape character is '^]'.
220 smtpcmd01.ad.aruba.it bizsmtp ESMTP server ready
EHLO MBP-di-Antonio.homenet\.telecomitalia\.it.
501 EHLO requires valid address

我仍然相信 DNS 标准不允许使用字符 \,对吗?

答案1

\ 在 DNS 记录中是允许的(但在您的具体情况下,它的存在似乎更像是区域配置期间的一个错误),但在主机名中不允许。 DNS是8位干净的,它可以管理任何字符的记录。然而,对于主机名有更严格的限制。请参阅这个问题及其答案:https://stackoverflow.com/questions/25199202/which-rfcs-specify-the-syntax-of-hostnames-and-constraints-on-dns-hostnames

答案2

主机名可以包含字母 [az/AZ]、数字 [0-9] 和连字符 [-]。下划线 [_] 也是合法的,并且对于某些记录是必需的。 (例如SRV)

就是这样。 DNS 主机名中没有其他字符是合法的。

相关内容