用户在访问一个域名的时候,网络中是怎么知道这个域名到底是配置在哪一个CDN厂商的呢?
笔者以test1.huiziguoxueshe.com为例,来描述下具体的过程,如下所示:
step 1: 配置域名归属的dns服务器
首先到域名网站对自己的二级域名huiziguoxueshe.com进行配置,这里的网站:https://console.cloud.tencent.com/domain/mydomain ,通过下图我们可以看出来,DNS服务器这一栏配置的是:f1g1ns1.dnspod.net,f1g1ns2.dnspod.net ,他们对应的就是dnspod的dns服务器。 这里的配置表示的是:“huizixueguoxue.com这个二级域名对应的dns记录需要到dnspod上面去配置,并且它所使用的dsnpod服务器是上面配置的这两个”。
step 2: 在dns服务器上面添加dns记录
笔者用的是dnspod服务器,网站为:https://console.cloud.tencent.com/cns 。在huizixueguoxue.com这个域名下面,添加dns解析记录: test1.huizixueguoxue.com指向srctest1.huiziguoxueshe.com (备注:这里srctest1.huizixueguoxue.com可以认为是对应的CDN厂商提供的线路域名) srctest1.huiziguoxueshe.com配置上A记录124.156.177.20(备注:这里的IP地址可以认为就是CDN厂商提供的边缘CDN的IP地址)。
step 3: 验证域名与CDN厂商之间的通路
通过dig test1.huiziguoxueshe.com ,我们发现域名test1.huiziguoxueshe.com最终指向了124.156.177.20也就是对应的CDN的厂商。
现在我们来回到原来的问题,用户在访问域名test1.huiziguoxueshe.com的时候,是如何知道最终是访问到哪一个CDN厂商的呢?
1)访问test1.huiziguoxueshe.com的时候,会先先向本地的DNS服务器请求对应的IP地址,找不到的话会访问跟域名服务器,然后依次递归去查找,直接到huiziguoxueshe.com到dnspod上面去查找这个域名下面有没有test1.huiziguoxueshe.com的记录。
2)dnspod上面发现了test1.huiziguoxueshe.com的CNAME记录是srctest1.huiziguoxueshe.com这个CDN厂商的域名,于是就知道了归属的厂商。
3)找到厂商之后,继续到厂商里面的dns服务器里面去查找srctest1.huiziguoxueshe.com对应的A记录,这里发现是124.156.177.20 ,而这个IP就是该厂商的边缘节点的IP入口。
常见的域名解析方法:
A记录:A记录解析是最为常见的域名解析方式,用来指定域名对应的IP地址
MX记录:相对用到较少的一种解析,MX记录是做邮箱解析使用的
CNAME记录:别名解析,可以为一个域名设置一个或多个别名
NS记录:指定该域名由哪个DNS服务器来进行解析
TXT记录:为某个主机名或域名设置说明