• 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个变长字段包含的条目数

      

      

     

      

      

  • 相关阅读:
    OC NSSet
    iOS 杂笔-23(区分各种空值)
    OC NSNumber NSValue
    OC NSArray 数组
    OC NSString(字符串)
    OC 内存管理
    OC 动态类型,动态绑定,动态加载
    OC 多态
    微信小程序开发5-WXML
    微信小程序开发4-JSON
  • 原文地址:https://www.cnblogs.com/EraserHead/p/6692117.html
Copyright © 2020-2023  润新知