You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用dnspython创建PTR DNS记录并添加到反向解析区域

可以通过dnspython库创建PTR DNS记录,你的问题主要出在记录名和记录值的格式错误,修正方案如下:

核心错误点

  • 你初始化dns.update.Update时指定的区域是22.113.170.in-addr.arpa.,该区域对应170.113.22.0/24网段,区域下的PTR记录仅需填写IP的最后一段(即26)作为记录名即可,不需要填写全域名或完整IP
  • 你填写的PTR目标域名new-fqdn-please-work.com末尾没有加根点.,DNS服务器会默认拼接当前区域后缀,最终生成错误的记录值new-fqdn-please-work.com.22.113.170.in-addr.arpa.

修正后代码示例

import dns.update
import dns.query
import dns.rcode

DNS_SERVER_ADDRESS = "你的DNS服务器地址"
# 初始化更新对象,指定反向区域
update = dns.update.Update('22.113.170.in-addr.arpa.')
# 仅填写IP最后一段作为记录名,PTR值末尾加根点
update.add('26', 300, 'PTR', 'new-fqdn-please-work.com.')
# 发送更新请求并获取响应
response = dns.query.tcp(update, DNS_SERVER_ADDRESS, timeout=5)
# 打印返回状态码判断结果,NOERROR表示更新成功
print("更新结果:", dns.rcode.to_text(response.rcode()))

其他常见排查项

  • 确认DNS服务器已配置动态更新权限,允许你运行代码的主机IP发起更新请求
  • 如果DNS服务器启用了TSIG校验,需要在初始化dns.update.Update时传入keyring参数指定校验密钥
  • 若返回状态码为REFUSED说明权限不足,NOTZONE说明记录不属于当前指定的反向区域,FORMERR说明请求格式错误

内容的提问来源于stack exchange,提问作者yAm

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 10:06:02