由于服务器ip地址不方便记忆,所以发明了域名,而域名只有解析成服务器的ip地址,才能和远程主机(如腾讯云服务器)进行连接,那么这就是dns做的事情了。所以这篇文章将下ns如如何解析域名的。
dns域名解析过程下图所示为dns域名解析的主要请求过程图:
比如:我在浏览器输入www.clips.xin,按回车,dns解析过程将近10个步骤。下面看下具体的步骤
检查浏览器缓存中是否有这个域名对应解析过的ip地址,如果有就结束。缓存的时间可以通过 ttl 属性来设置。加入到缓存中是为了让浏览器访问更快。那么如何在浏览器查看缓存呢? 以chrome为例,在浏览器中输入:chrome://net-internals/#events,然后点击:chrome://net-export ,进入日志的记录。然后停止日志,会生成一个chrome-net-export-log.json 文件,打开它,输入域名会找到对应缓存地址。格式如:{address_family:1,addresses:[xxx.xx.xx.xx],expiration:10575353,flags:4,hostname:www.clips.xin,network_changes:4,ttl:600000},如果浏览器缓存中没有,会查找操作系统缓存中是否有这个域名对应的dns解析记录,windows在 hosts里面,早起hosts里面不用用户授权,黑客可以修改,将域名对应的ip修改到恶意的地址,不过后来变成只读了,防止被轻易地修改了。linux 这边在/etc/hosts里面。如果1,2都没有,那么接下来会交给ldns(local dns server )来解析,一般你办宽带的时候,宽带商会给给你一个dns的地址。windows下面可以通过ipconfig查看请求的dns服务器地址。可以通过cat /etc/resolv.conf查看,一般会缓存域名解析结果。所以其主要承担了80%的域名解析工作。ldns如果还是没有命中,直接到root server 域名服务器请求解析,到gtld server去查询,gtld是国际顶级域名服务商,如.com,.cn等。接受请求的gtld服务器查找并返回域名对应的name server域名服务器的地址,这个name server通常是你注册的域名服务器。name server 域名服务器会查询存储的域名和ip地址的映射,连同tll值返给给dns server 域名服务器对于返回的ip和ttl,local dns server会缓存这个域名、ip地址和ttl将解析的结果返回为用户,解析结束。dns解析记录介绍:
a表示:address,指定域名对应的ip地址。mx:mail exchange,邮件服务器地址aaaa :ipv6,目前阿里云准备全名支持ipv6了cname: 别名解析,ns:指定dns解析服务器txt记录:为主机名或域名设置说明
解析:微信公众号营销优势『微信公众号运营目标』如何保持微信公众号的粉丝黏度?南宁到宁津物流专线杭州到延安物流专线上海杨浦网站建设制作哪些环节比较重要?合肥到南安物流专线合肥到安岳物流专线南京到海盐物流专线