DNS服务商仅支持单条TXT记录255字符时,正确拆分DKIM TXT记录的方法
DNS服务商仅支持单条TXT记录255字符时,正确拆分DKIM TXT记录的方法
你目前遇到的问题核心在于拆分方式错误——你创建了多条同名的z._domainkey TXT记录,但DKIM标准要求完整的密钥信息必须放在单条TXT记录中,只是这条记录的内容可以拆分成多个带引号的字符串片段。下面给你详细说正确的做法:
错误原因剖析:
你把DKIM内容拆成了多条独立的TXT记录,DNS解析时这些记录的返回顺序是不确定的(服务器可能随机排序),而且验证工具会把每条记录当成独立的条目。第一条因为有v=DKIM1标识,看起来像不完整的DKIM记录,后续的片段没有DKIM标识,直接被判定为无效,自然无法通过验证。正确拆分步骤:
- 拿到完整的DKIM字符串(格式为
v=DKIM1;k=rsa;p=xxxxxxxxxxx...) - 将这个长字符串拆分成多个长度不超过255字符的片段,注意不要在分号(
;)或者p=的中间拆分,建议在p=后的base64编码部分按64字符一段拆分(这是base64的标准分段方式) - 在你的DNS服务商后台,创建单条
z._domainkey的TXT记录,把拆分后的多个片段用双引号包裹,依次填入记录值中(片段之间用空格分隔)
举个例子,拆分后的记录值应该是这样的:
"v=DKIM1;k=rsa;p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAh957KTmtf+f1GCrdVKydz2x0NDs1Cx/g/AYIlx2QcyOpXzd3DNC8saykKjfwYEIGq47UdnLQdJztINPu5QsphwSnpQiGqV28EltNp1poNNeUwSno7vrUTQI44vkD7OosCh+yLVD5AWCqxOr0l4C6kp2UuXvEc6zANPQrbOuVABm" "Gf2nLFvcR4iswFC3JpLOdZr259BelASlU2WApIeDK/a8Qo096WzpFCeFtamIxZFkeHdCSmrS7zrtDrxxvXzYhXIFharkWeY5cXKzZ7vUGR14Zie9gzNzoz5NoibngkBH6dw5C70lU5ynVwx+/U+TCEKOZu1X9K/ZC5/1NrsW83QIDAQAB"- 拿到完整的DKIM字符串(格式为
验证方法:
用drill或dig查询时,应该看到单条TXT记录下包含多个带引号的片段,而不是多条TXT记录。这样DNS客户端会自动按顺序拼接这些片段,还原出完整的DKIM字符串,验证工具也能正确识别并通过校验。
备注:内容来源于stack exchange,提问作者gcb
相关产品推荐
相关产品推荐

