美文网首页
DNS协议详解

DNS协议详解

作者: JJJoeee | 来源:发表于2020-01-02 15:42 被阅读0次

    关于DNS的作用:

    ip是八分二进制的很难记,但是域名xx.com容易记住,可是网络又是根据ip进行寻址的;于是就有了用域名访问返回ip的操作;DNS协议便是实现了将域名解析成IP的这一过程。

    使用DNS的好处:

    (1)容易记住
    (2)监管方便,网站辨识度高,可作为一个网站的身份象征
    (3)不依赖单个IP,用户只需要访问你的域名,不需要知道你的ip地址,因此你的ip地址可以有多个甚至经常更换都可以。
    (4)DNS引流:很多高防抗DDOS和云saas的WAF都是利用DNS别名(cname)进行引流清洗的,CDN也是通过cname进行分配的。
    (5)DNS负载均衡:可以利用相同A记录不同IP地址对用户的访问进行负载均衡的分配,甚至可以按照ip附属地进行地区上的分配

    DNS中常见的概念:

    A记录:主机名,比如www、news、sports、map等;还可以向下延伸分出更多级的主机名,一般申请到的都是xx.com为二级域名;也可以添加@*等全部概括的A记录。
    cname别名:解析到该别名上(通常会支持负载均衡,按比例分配给别名)
    PTR指针:用于IP反查域名的(腾讯云不支持填写PTR)
    MX邮件交换:配置给邮件使用
    NS:指定给该NS服务器解析

    关于dns的工具:

    ping:一个非常简单的基于icmp网络测试协议

    ping域名查ip(有局限性,大公司一般都会牵引专门的服务器处理icmp包或者直接由CDN处理,所以得到的ip往往不是真实地址)


    image.png
    nslookup:正向查询
    image.png
    nslookup反向查询(指针查询):

    配置了PTR才能查询到,通常很多有查不到的(因为域名肯定有ip,ip很大概率没绑定域名的)
    nslookup -qt=ptr dst_ip


    image.png

    据说DNS的正向查询用的是53端口udp协议,反向查询用的是53端口tcp;实际验证一下吧!
    正向查询:


    DNS请求
    DNS应答

    反向查询:


    反向查询抓包
    然而反向查询并不是TCP的53端口,找了找好像是这么说的:
    UDP报文的最大长度为512字节,而TCP则允许报文长度超过512字节。当DNS查询超过512字节时,协议的TC标志出现删除标志,这时则使用TCP发送。通常传统的UDP报文一般不会大于512字节。 但事实上,很多DNS服务器进行配置的时候,仅支持UDP查询包。
    dig工具的操作-:

    dig www.jianshu.com (返回提供web服务的ip地址)

    image.png
    dig -t a www.jianshu.com (返回A记录服务器地址)
    image.png
    dig -t ns www.jianshu.com (返回真实记录该域名的NS服务器地址)
    image.png
    dig -t c www.jianshu.com (返回cname记录)
    image.png
    dig -t mx www.jianshu.com (返回邮件记录)
    image.png
    dig +trace www.jianshu.com (以迭代的方式一步步返回)
    image.png
    上图解析的大致过程:

    (1)先在本地host查询,接着去本地配置的dns服务器查询,如果没有的话继续往下
    (2)再到根DNS服务器xxx.root-servers.net查询,发现域名记录在gtld-servers.net上或者说是由这个ns来注册提交的(一般.com域名都在gtld这类ns上)
    (3)然后到xxx.gtld-servers.net上查询,得知是由dnsv3.com这个服务商签发的
    (4)到服务商dnsv3.com上查询记录,得知jianshu.comns3.dnsv3.comns4.dnsv3.com有记录,并且配置了cname为www.jianshu.com.w.cdngslb.com(八成是使用cdn的,所以上面查找ns的时候并不是简书注册的那个,而是dns服务商注册的这个)

    容易误解的概念:

    域名不仅仅服务于http协议和80端口,只是浏览器默认http为80端口,所以在www.xx.com后面没有显示端口而已;可以把域名理解成与IP对应,相对的域名也有65535个端口。

    相关文章

      网友评论

          本文标题:DNS协议详解

          本文链接:https://www.haomeiwen.com/subject/lnzqoctx.html