我想做个卷帘门网站怎么做,网站构成的作用是什么,网站开发小程序开发,界面设计器CNAME记录
维基百科#xff0c;自由的百科全书
#xff08;重定向自CNAME#xff09;
真实名称记录#xff08;英语#xff1a;Canonical Name Record#xff09;#xff0c;即CNAME记录#xff0c;是域名系统#xff08;DNS#xff09;的一种记录。CNAME记录用于…CNAME记录
维基百科自由的百科全书
重定向自CNAME
真实名称记录英语Canonical Name Record即CNAME记录是域名系统DNS的一种记录。CNAME记录用于将一个域名同名映射到另一个域名真实名称域名解析服务器遇到CNAME记录会以映射到的目标重新开始查询。[1]
这对于需要在同一个IP地址上运行多个服务的情况来说非常方便。若要同时运行文件传输服务和Web服务则可以把ftp.example.com和www.example.com都指向DNS记录example.com而后者则有一个指向IP地址的A记录。如此一来若服务器IP地址改变则只需修改example.com的A记录即可。
CNAME记录必须指向另一个域名而不能是IP地址。
细节
《RFC 1034》详细定义了CNAME记录的标准并在《RFC 2181》的第十节中做了进一步规范。
CNAME记录在域名系统中的使用有诸多限制。当一个DNS解析服务器在查询各类记录时遇到一则CNAME记录时它会立即重启查询查询所映射到域名的对应记录。除非是要查询CNAME记录本身在那种情况下会返回所映射到的域名。CNAME记录所映射的域名可以是域名服务中的任何域名。在同一服务器上在远程服务器上甚至在属于不同DNS zone解析空间的服务器上都可以。
假设有下述DNS zone
NAME TYPE VALUE
--------------------------------------------------
bar.example.com. CNAME foo.example.com.
foo.example.com. A 192.0.2.23当要查询bar.example.com的A记录时域名解析器会查到对应的CNAME记录即foo.example.com随即开始查询该域名的A记录查到192.0.2.23则返回结果。
误会
可以使用CNAME记录将“bar.example.com”指向“foo.example.com”。因此可能会有人随意的将bar.example.com称作是foo.example.com的“CNAME”。然而事实并非如此bar.example.com的“CNAME”是foo.example.com因为CNAME的意思是真实名称而右侧才是真实名称才是CNAME。
这则误会在《RFC 2181》“DNS规范的解释”一章中有提到。应当说左侧标签是右侧真实名称的一个同名。即下述CNAME记录
bar.example.com. CNAME foo.example.com.应当读作
bar.example.com的真实名称是foo.example.com。请求访问bar.example.com的客户端会得到foo.example.com返回的结果。
限制
CNAME记录总是指向另一则域名而非IP地址。有CNAME记录的域名不能有其他任何记录MX记录、A记录等《RFC 1034》第3.6.2节、《RFC 1912》第 2.4节) 唯一的例外是在使用DNSSEC的情况下这时可以设置相关的DNSSEC相关记录比如RRSIGNSEC等《RFC 2181》第10.1节为了保证效率应当避免将CNAME记录指向其他的CNAME记录但并非不可以。因此可以通过CNAME记录创造无法被解析的循环比如
foo.example.com. CNAME bar.example.com.
bar.example.com. CNAME foo.example.com.MX记录和NS记录永远都不应指向由CNAME记录标记的域名《RFC 2181》第10.3节。因此解析空间不应有下述结构
example.com. MX 0 foo.example.com.
foo.example.com. CNAME host.example.com.
host.example.com. A 192.0.2.1根据《RFC1912》第2.4节根网域Root Domain不应该被添加 CNAME 纪录。但部分 DNS 服务商例如 DNSPod、NS1可以忽略该 RFC 标准而针对根网域做出 CNAME 解析比如
example.com. CNAME foo.example.com.但这样做会导致该网域若有用于邮箱服务则可能造成错误详见如下方。
而愿意遵守 RFC 标准的 DNS 供应商 (例如 Neustar UltraDNS、Cloudflare DNS则采用了 Apex Alias 或 CNAME flattening 技术这个技术将使得由 DNS 服务商自行处理 CNAME 解析的过程并将最终解析的 A 纪录作为实际解析的结果从而不与 RFC 标准抵触比如
example.com. A 192.0.2.1用于邮箱服务的域名不应有CNAME记录。在实践中这或许不会出错但由于邮件服务的不同可能会有意料之外的效果。[2]
DNAME记录
DNAME记录即代理名称记录由《RFC 6672》定义原《RFC 2672》已经废弃。一条DNAME记录会将某个域名的整个解析子树映射到另一域名而CNAME只映射设定的域名不映射子域名。如同CNAME一样在DNS查询过程中会查找所映射到的新域名的地址。域名解析服务器会为每一个被查询的子域名生成一则CNAME记录。为某个域名设置DNAME记录和为该域名的所有子域名设置CNAME记录的效果是一样的。
例如下述记录
foo.example.com. DNAME bar.example.com.
bar.example.com. A 192.0.2.23
xyzzy.bar.example.com. A 192.0.2.24
*.bar.example.com. A 192.0.2.25查询foo.example.com的A记录不会返回任何结果。不同于CNAME记录DNAME不会直接影响所设置域名的解析。
如果我们需要查询xyzzy.foo.example.com则由于DNAME记录的映射会返回xyzzy.bar.example.com的A记录即192.0.2.24。而如果将DNAME记录换成是CNAME记录的话这样的请求则会报错提示无法找到。
由此查询foobar.foo.example.com会由于DNAME记录映射返回192.0.2.25。
ANAME记录
部分DNS平台支持尚未被标准化的ALIAS[3]或ANAME记录类型。此类伪记录由DNS服务器维护类似于CNAME记录但在某些客户端解析时等同于A记录。ANAME记录通常会被设置指向另一域名。但在被客户端请求时候则会直接返回对应的IP地址。ANAME记录的标准化过程正在进行中[4]但已经有许多不同的实现所以由于平台的不同效果也多种多样。有些存在于域名解析区的顶端有些则为了提供邮件服务而存在。ANAME记录相对CNAME记录的一大优势是速度。服务端解析A记录的速度通常比客户端快同时可以缓存对应的IP地址以备查询。IETF正在讨论和考虑ANAME记录的标准化。[5]