DNS 域名解析中 A、AAAA、CNAME、MX、NS、TXT、SRV、SOA、PTR 各项记录的作用
域名注册完成后首先需要做域名解析,域名解析就是把域名指向网站所在服务器的 IP,让人们通过注册的域名可以访问到网站。
IP地址是网络上标识服务器的数字地址,为了方便记忆,使用域名来代替 IP 地址。域名解析就是域名到 IP 地址的转换过程,域名的解析工作由DNS 服务器完成。DNS 服务器会把域名解析到一个 IP 地址,然后在此 IP地址的主机上将一个子目录与域名绑定。
域名解析时会添加解析记录,这些记录有:A记录、AAAA记录、CNAME记录、MX记录、NS记录、TXT记录、SRV记录、URL转发。
DNS 域名解析中添加的各项解析记录
A 记录: 将域名指向一个 IPv4 地址(例如:100.100.100.100),需要增加 A 记录
CNAME 记录: 如果将域名指向一个域名,实现与被指向域名相同的访问效果,需要增加 CNAME 记录。这个域名一般是主机服务商提供的一个域名
MX 记录: 建立电子邮箱服务,将指向邮件服务器地址,需要设置 MX 记录。建立邮箱时,一般会根据邮箱服务商提供的 MX 记录填写此记录
NS 记录: 域名解析服务器记录,如果要将子域名指定某个域名服务器来解析,需要设置 NS 记录
TXT 记录: 可任意填写,可为空。一般做一些验证记录时会使用此项,如:做 SPF(反垃圾邮件)记录
AAAA 记录: 将主机名(或域名)指向一个 IPv6 地址(例如:ff03:0:0:0:0:0:0:c1),需要添加 AAAA 记录
SRV 记录: 添加服务记录服务器服务记录时会添加此项,SRV 记录了哪台计算机提供了哪个服务。格式为:服务的名字。协议的类型(例如:_example-server._tcp)。
SOA 记录: SOA 叫做起始授权机构记录,NS 用于标识多台域名解析服务器,SOA 记录用于在众多 NS 记录中那一台是主服务器
PTR 记录: PTR 记录是 A 记录的逆向记录,又称做 IP 反查记录或指针记录,负责将 IP 反向解析为域名
显性 URL 转发记录: 将域名指向一个 http(s) 协议地址,访问域名时,自动跳转至目标地址。例如:将 www.liuht.cn 显性转发到 www.itbilu.com 后,访问 www.liuht.cn 时,地址栏显示的地址为:www.itbilu.com。
隐性 UR 转发记录 L: 将域名指向一个 http(s) 协议地址,访问域名时,自动跳转至目标地址,隐性转发会隐藏真实的目标地址。例如:将 www.liuht.cn 显性转发到 www.itbilu.com 后,访问 www.liuht.cn 时,地址栏显示的地址仍然是:www.liuht.cn。
DNS解析中的一些问题
2.1 A记录与CNAME记录
A记录是把一个域名解析到一个 IP 地址,而 CNAME记录是把域名解析到另外一个域名,而这个域名最终会指向一个 A 记录,在功能实现在上 A记录与 CNAME记录没有区别。
CNAME记录在做 IP 地址变更时要比 A记录方便。CNAME记录允许将多个名字映射到同一台计算机,当有多个域名需要指向同一服务器 IP,此时可以将一个域名做 A 记录指向服务器 IP,然后将其他的域名做别名 (即:CNAME) 到 A 记录的域名上。当服务器 IP 地址变更时,只需要更改 A 记录的那个域名到新 IP 上,其它做别名的域名会自动更改到新的 IP 地址上,而不必对每个域名做更改。
2.2 A记录与AAAA记录
二者都是指向一个 IP 地址,但对应的 IP 版本不同。A记录指向 IPv4 地址,AAAA记录指向 IPv6 地址。AAAA记录是 A记录的升级版本。
2.3 IPv4与IPv6
IPv4,是互联网协议(Internet Protocol,IP)的第四版,也是第一个被广泛使用的版本,是构成现今互联网技术的基础协议。IPv4 的下一个版本就是 IPv6,在将来将取代目前被广泛使用的 IPv4。
IPv4 中规定 IP 地址长度为 32 位(按 TCP/IP 参考模型划分) ,即有 2^32-1 个地址。IPv6 的提出最早是为了解决,随着互联网的迅速发展 IPv4 地址空间将被耗尽的问题。为了扩大地址空间,IPv6 将 IP 地址的长度由 32 位增加到了 128 位。在 IPv6 的设计过程中除了一劳永逸地解决了地址短缺问题以外,还解决了 IPv4 中的其它问题,如:端到端 IP 连接、服务质量(QoS)、安全性、多播、移动性、即插即用等。
2.4 TTL值
TTL-生存时间(Time To Live),表示解析记录在 DNS 服务器中的缓存时间,TTL 的时间长度单位是秒,一般为 3600 秒。比如:在访问 www.itbilu.com 时,如果在 DNS 服务器的缓存中没有该记录,就会向某个 NS 服务器发出请求,获得该记录后,该记录会在 DNS 服务器上保存 TTL 的时间长度,在 TTL 有效期内访问 www.itbilu.com,DNS 服务器会直接缓存中返回刚才的记录。