zoukankan      html  css  js  c++  java
  • TCP/IP DNS

    1.概述

        域名系统(DNS)是一种用于TCP/IP应用程序的分布式数据库,提供主机名字和ip地址转换的选路信息,在应用的角度上,DNS的访问通过地址解析器(resolver)完成,在unix中,解析器通过两个库函数gethostbyname和gethosybyaddr来访问,前者接受主机名字并返回IP地址,后者接收IP地址来寻找主机名字.解析器通过一个或多个名字服务器来完成这种相互交换.在RFC 1034 说明了DNS的概念和功能,RFC1035中揭示了DNS的规范和实现.

     

    2.BASIC

       1.每个结点有至多63个字符长的标示,命名标示一律不区分大小写,以.分隔域名,域名树必须有一个唯一的域名,域名树的不同结点可使用不同的标示.

      2,顶级域名分为3个部分

        (1)apra是一个用作地址到名字的特殊域

         (2)7个3字符长的普通域

        (3)所有2字符长的域均基于ISO3166定义的国家代码

      3.在普通域中分为7个划分

    描述
    com 商业组织
    edu 教育机构
    gov 美国政府部门
    int 国际组织
    mil 美国军事网点
    net 网络
    org 其他组织

      3.DNS报文格式

        DNS定义了一个用于查询和响应的报文格式

     

      1.报文由12个字节长的首部和4个长度可变得字段组成

      标示字段由客户程序设置并由服务器返回结果,客户程序通过它确定响应与查询是否匹配

      16bit标志字段被划分为若干个字段

      

       QR是1bit字段:0标示查询报文,1标示响应报文

      opcode是4bit字段.0为标准查询,1为(反向查询)和2(服务器状态请求)

          AA是1bit标志,标示授权回答(authoritative answer)该名字是授权于该域名的

      TC是1bit字段,标示可截断的,使用UDP时,表示应答长度超过512字节时,只返回当前的512字节

          RD是1bit表示期望递归,

      RA是1bit字段,标示可用递归

      随后的3字段必须为0

         rcode是一个4bit的返回码字段,通常值为0(没有差错)和3(名字差错),名字差错只有一个授权名字服务器返回,标示查询中制定的域名不存在

      随后的4个16bit说明最后4个变长字段包含的条目数

      

      

     

      

      

  • 相关阅读:
    当前疫情期间,家里可以适当储备的物资
    35岁改行做程序员,需要勇气和决心
    离婚潮来临,女性在崛起
    摄影作品首先要取悦自己,更要打动他人
    京剧是该阳春白雪还是下里巴人?
    汶川和武汉哪个更让人铭记?
    35以上的女强人不结婚,只用平常待之
    苏州记忆之上班路上偶遇2美女打架
    SAP SD微观研究之销售发票自动生成初探
    Python requests库的使用(二)
  • 原文地址:https://www.cnblogs.com/EraserHead/p/6692117.html
Copyright © 2011-2022 走看看