TOC

DNS 基础

域名

Class rdataclass

RESERVED0 = 0
IN = 1
INTERNET = 1
CH = 3
CHAOS = 3
HESIOD = 4
HS = 4
NONE = 254
ANY = 255

Type rdatatype

  • A IPv4 Address
  • AAAA IPv4 Address
  • CNAME Canonical Name,“规范名称”,其实就是别名,指向另一个域名。MX 记录和 NS 记录不能指向一个 CNAME 记录。
  • NS Name Server,权威 DNS 服务器位置。
  • MX Mail Exchange,邮件服务位置。
  • SRV 通用的服务类型记录,取代 MX 这种专用记录。
_xmpp-client._tcp.example.net. 86400 IN SRV 5        0      5222 example.net.
_xmpp-server._tcp.example.net. 86400 IN SRV 5        0      5269 example.net.
#                              TTL          Priority Weight Port
  • TXT
  • SOA Start Of Authority,权威记录起始
  • PTR 反解记录

反解记录

记录名称:IP 翻转过来,加上 .in-addr.arpa 后缀
记录类型:PTR

dig -x 106.75.80.125
dig +noall +answer -tPTR 125.80.75.106.in-addr.arpa

完整的 DNS 解析过程

  1. 找到权威服务器

Windows

nslookup
ipconfig /displaydns
ipconfig /flushdns

Linux

dig markjour.com A
dig @8.8.8.8 markjour.com

dig qq.com MX
dig MX qq.com
dig -t MX qq.com
dig +noall +answer qq.com
dig +short qq.com
dig qq.com ANY

dig +trace +nssearch markjour.com

DNS 请求和响应

  • header 2Bytes
Field Bits Desc
QR 1 query 0, reply 1
OPCODE 4 QUERY 0, IQUERY 1, STATUS 2
AA 1 Authoritative Answer
TC 1 TrunCation
RD 1 Recursion Desired
RA 1 Recursion Available
Z 3 Zero 填零,保留
RCODE 4 Response Code

RCODE:

  • NOERROR (0)
  • FORMERR (1, Format error)
  • SERVFAIL (2)
  • NXDOMAIN (3, Nonexistent domain)

  • body

  • question

    Field Bits Desc
    NAME 可变 资源名称
    TYPE 2 记录类型
    CLASS 2 Class Code

    CLASS Code rdata.class

    RESERVED0 = 0
    IN = 1
    INTERNET = 1
    CH = 3
    CHAOS = 3
    HESIOD = 4
    HS = 4
    NONE = 254
    ANY = 255
    
  • answer

  • authority
  • additional space

请求

响应

参考资料与拓展阅读

如果你有魔法,你可以看到一个评论框~