DNS 的原理就是一层层从根域名递归查询,其中让我觉得有疑问的就是 CNAME 。
反复使用命令查询七牛的官网,我知道他们一定会使用 CDN,CDN 也是 CNAME 使用最多的场景。
可以看到路径是这样子的 qiniu.com. => mid-lvs-public.qiniu.com. => jjh-lvs-public.qiniu.com. =>给了一个 A 记录 180.97.147.243 。
最终我们的请求肯定也都是发到 A 记录上,也就是将 qiniu.com 交到 180.97.147.243 ,这个 IP 对应的服务接受到请求才开始往客户端吐数据。
CNAME 提供一个窍门将解析 A 记录的权利交到下一个域名上,具体下一个域名对应的 ip 可能以后会变,但是对于上一个域名所对应的域名不会变,这个点很像 JAVA 中的一个接口,接口的实现可能会变,但是接口名和方法名提前就确定好了。
一、cname跳转是利用CNAME别名记录设置域名跳转,是把某个域名解析到另外一个域名对应的某个IP的空间中:
cname解析还是属于dns解析,只是把某个域名解析到另外一个域名对应的某个IP的空间中,所以还需要在服务器端(比如nginx)做域名解析。在浏览器的地址栏中输入域名A(域名A被cname解析到域名B),则地址栏中的地址还是域名A。
比如:把a.com做一个cname解析到b.com中,那么在b.com所对应的nginx服务器中不仅需要有b.com的域名解析,还需要有a.com的域名解析,a.com所指向的才能生效。
二、其它跳转方式:
【显性URL跳转】和【隐性URL跳转】都属于域名转发,只是从一个域名跳转到另一个域名而已,不需要在服务器端做域名解析即可生效。
隐性URL跳转后,在浏览器的地址栏中输入域名A(域名A被cname解析到域名B),则地址栏中的地址还是域名A,而显性URL跳转后,浏览器地址栏中的域名会变成做了URL跳转后的域名。
扩展资料:
域名的解析与跳转的方式:
1、A记录:WEB服务器的IP指向 ,A (Address) 记录是用来指定主机名(或域名)对应的IP地址记录。
说明:用户可以将该域名下的网站服务器指向到自己的web server上。同时也可以设置自己域名的二级域名。
2、MX记录(Mail Exchange):邮件路由记录
说明:用户可以将该域名下的邮件服务器指向到自己的mail server上,然后即可自行操作控制所有的邮箱设置。您只需在线填写您服务器的主机名或主机IP地址,即可将您域名下的邮件全部转到您自己设定相应的邮件服务器上。
3、CNAME (Canonical Name)记录,(alias from one domain name to another)通常称别名指向。可以注册的不同域名统统转到一个主域名上去。与A记录不同的是,CNAME别名记录设置的可以是一个域名的描述而不一定是IP地址。
4、URL (Uniform Resource Locator )转发:网址转发
功能:如果您没有一台独立的服务器(也就是没有一个独立的IP地址)或者您还有一个域名B,您想访问A域名时访问到B域名的内容,这时您就可以通过URL转发来实现。url转发可以转发到某一个目录下,甚至某一个文件上。而cname是不可以,这就是url转发和cname的主要区别所在。
参考资料来源:百度百科-CNAME
您好,
NS(Name Server):将 owner 中指定的 DNS 域名映射到在 name_server_domain_name 字段中指定的运行 DNS 服务器的主机名。
A(host): 主机地址 (A) 资源记录。将 DNS 域名映射到 Internet 协议 (IP) 版本 4 的 32 位地址中。
CNAME(alias): 规范名 (CNAME) 资源记录。将 owner 字段中的别名或备用的 DNS 域名映射到canonical_name 字段中指定的标准或主要 DNS 域名。此数据中所使用的标准或主要 DNS 域名是必需的,并且必须解析为名称空间中有效的 DNS 域名。
详细说明可以参考:https://technet.microsoft.com/zh-cn/library/cc758321(v=ws.10).aspx
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)