首页/网络/常用端口速查/53 DNS 域名解析
0-99 系统端口81 条

53 DNS 域名解析

域名解析的标准端口:UDP 承载常规查询,TCP 承载大报文与区域传送;开放递归查询会被利用做放大攻击。

常用端口速查网络更新于 2026-10-13

DNS 与 53 端口

53 是域名系统的标准端口,域名到地址的解析全部发生在这里。常规查询走 UDP,报文小、开销低;响应超过协商长度(传统上限 512 字节,启用 EDNS0 后可放宽)或进行区域传送时改走 TCP。权威服务器负责回答自己管辖的域,递归服务器替客户端逐级查询,两者职责必须分开部署:对外只开放权威,递归只对内网提供服务。

基本信息

服务DNS(BIND、PowerDNS、dnsmasq、Unbound、Windows DNS)
协议UDP 53 常规查询;TCP 53 大响应与区域传送
规范RFC 1035;区域传送见 RFC 5936
权限要求监听 53 需 root 或相应能力;配置改动需重载服务
安全等级权威可对外;递归仅限内网并开启速率限制
常用工具dig、drill、kdig、nslookup

典型使用场景

  • 内网名称解析:自建区域解析内部域名,或转发到上游公共解析器
  • 对外权威托管:为自有域名提供公网查询应答
  • AD 环境解析:域控同时承担域内名称服务,客户端 DNS 必须指向域控
  • 容器与服务发现:集群内用轻量解析器解析服务名
  • 解析排障与变更验证:用 dig 逐层确认权威与缓存的实际应答

常用排查命令

常用排查命令
dig example.com A +short              # 只看结果地址,最快确认能否解析
dig @8.8.8.8 example.com MX           # 指定公共服务器查邮件记录,排除本机缓存干扰
dig @ns1.example.com example.com SOA +norecurse   # 直接问权威,验证权威应答是否符合预期
dig @10.0.0.53 example.com A          # 问内网递归,验证内网解析链路
dig example.com AXFR @ns1.example.com   # 尝试区域传送,正常情况下应被拒绝
ss -lunp | grep ':53'                 # 确认 UDP 53 监听进程;TCP 用 ss -ltnp 查看

输出逐列读法

输出项含义正常/异常
status应答状态码NOERROR 正常;NXDOMAIN 域名不存在;SERVFAIL 多为上游故障或校验失败
flags 中的 tc响应被截断标志置位说明客户端需改用 TCP 重试
ANSWER 条数返回记录数量为 0 且 NOERROR 表示该类型无记录
SERVER实际应答的服务器与预期不符说明本机缓存或转发在起作用
Query time查询耗时首次查询偏高正常,持续偏高要查上游与缓存命中

权威与递归的职责分工

角色回答范围对外暴露
权威服务器只回答自己管辖的域可对外,须拒绝区域传送
递归服务器替客户端查询任意域名仅限内网,禁止对外提供服务
转发器把请求转给上游解析器按需要限制来源网段
本地缓存缓存已解析结果仅本机或本网段使用

验证权威与递归行为

验证权威与递归行为
dig +norecurse @ns1.example.com example.com SOA +short   # 权威应直接给出 SOA
dig @dns.example.com google.com +short                    # 对外服务器应拒绝递归外部域名
dig +trace example.com A | head -20                       # 从根开始逐级跟踪,定位哪一层断链
cat /etc/resolv.conf                                      # 本机实际使用的解析器,排障前先确认

大响应与 TCP 回退观察

大响应与 TCP 回退观察
dig +dnssec example.com DNSKEY +short     # DNSSEC 记录较大,容易触发截断
dig +bufsize=1232 example.com A           # 观察 tc 标志是否置位
dig +tcp example.com A +short             # 强制走 TCP,验证 TCP 链路是否可用
ss -ltnp | grep ':53 '                    # 确认 TCP 53 也在监听

BIND 关键安全配置片段

BIND 关键安全配置片段
// 权威侧:只允许指定从库做区域传送
allow-transfer { 10.0.0.11; 10.0.0.12; };
// 递归侧:只对内网提供递归
recursion yes;
allow-recursion { 10.0.0.0/8; 192.168.0.0/16; };
// 速率限制,缓解放大与洪水
rate-limit { responses-per-second 10; };
对公网开放递归查询会同时带来缓存投毒面与 DNS 放大攻击风险,服务器还可能被用于攻击第三方;权威与递归应分离部署,递归只服务内网。
排障顺序:先用 dig 直连目标服务器,排除本机缓存与解析配置的干扰;确认 UDP 与 TCP 都可达,因为大响应与区域传送依赖 TCP;最后再看服务端日志与转发上游状态。
缓存与生效时间:修改记录后能否立即看到取决于 TTL,排查变更未生效时先用 dig 直接问权威服务器,再回头看本地与运营商的缓存,否则容易误判为配置没生效。

易错点

  • 允许任意来源做区域传送,会泄露完整的内部域名与主机清单
  • 内网只部署一台解析服务器且无备用,故障时全网业务一起中断
  • 递归服务对公网开放,既可能被投毒也可能被当作放大攻击的跳板
  • 修改记录后不看 TTL 就判定变更失败,反复改动反而制造更多不一致

数据来源与参考

  • RFC 1035:域名系统实现与规范
  • RFC 5936:DNS Zone Transfer Protocol(AXFR)
  • BIND 9 管理员参考手册

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌