域名
Class rdataclass
RESERVED0 = 0
IN = 1
INTERNET = 1
CH = 3
CHAOS = 3
HESIOD = 4
HS = 4
NONE = 254
ANY = 255
Type rdatatype
AIPv4 AddressAAAAIPv4 AddressCNAMECanonical Name,“规范名称”,其实就是别名,指向另一个域名。MX 记录和 NS 记录不能指向一个 CNAME 记录。NSName Server,权威 DNS 服务器位置。MXMail 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
TXTSOAStart 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 解析过程
- 找到权威服务器
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
请求
响应
参考资料与拓展阅读
- 维基百科(en), Domain Name System
- 维基百科(en), List of DNS record types
- XMPP, SRV Records
- Julia Evans, How to find a domain's authoritative nameservers
- CloudFlare, 什么是 DNS?