• tcpip详解笔记(12) DNS


    1. DNS是一种用于TCP/IP应用程序的分布式数据库,提供主机名字和IP地址之间的转换以及有关电子邮件的选路信息。从应用的角度来看,其实就是两个库函数gethostbyname()和gethostbyaddr()。

    2. DNS 是一个分布式数据库,它利用树形目录结构将主机名称的管理权分配给各级的DNS服务器,这使得管理和修改工作可以在各层本地完成,减少了每一台服务器的数据量,使得管理数据更加容易。

      完整的域名是一个由“.”分隔的字符串,其中每个部分都代表一个域或主机名。例如www.tsinghua.edu.cn. 和www.zju.edu.cn. 这是两个完整的域名,但是他们虽然不是同一台机器,却有相同的主机名www,而在互联网中名字相同的主机非常多,怎样准确地定位某台主机呢?这需要先确定他们所属的域,这样就算有再多名字是www的主机,只要在不同的域当中,我们也能准确地找到它。

    3. FQDN:全域名(FQDN,Fully Qualified Domain Name)是指主机名加上全路径,全路径中列出了序列中所有域成员(包括root)。全域名可以从逻辑上准确地表示出主机在什么地方,也可以说全域名是主机名的一种完全表示形式。

    4. 指针查询(即反向查询):根据IP查询相应的域名。DNS使用另一棵树来做这个反向查询,其根节点为in-addr.arpa,下一级为该IP的第一个字节,再下一级为该IP的下一个字节,以此类推。

    示例:
    # host 140.252.13.34
    34.13.252.140.in-addr.arpa domain name pointer pipen14.tuc.noao.edu.
    # host tuc.noao.edu
    tuc.noao.edu is an alias for noao.tuc.noao.edu.
    noao.tuc.noao.edu has address 140.252.1.28
    noao.tuc.noao.edu mail is handled by 10 barracuda-1.tuc.noao.edu.

    5. 资源记录(RR)

    A记录:  用于查询IP地址
    PTR记录:  用于指针查询
    CNAME:  表示“规范名字”,用来表示一个域名,也通常称为别名
    HINFO:  表示主机信息,包括主机CPU和操作系统的两个字符串
    MX:  邮件交换记录
    NS:  名字服务器记录,说明一个域的授权名字服务器

    6. 高速缓存

    为了减少DNS的通信量,所有的名字服务器均使用高速缓存。在标准Unix是实现中,高速缓存是由名字服务器而不是名字解释器来维护的。

    7. 用UDP还是TCP

    DNS服务器支持TCP和UDP两种协议的查询方式,而且端口都是53。而大多数的查询都是UDP查询的,一般需要TCP查询的有两种情况:
    1. 当查询数据多大以至于产生了数据截断(TC标志为1),这时,需要利用TCP的分片能力来进行数据传输(看TCP的相关章节)。
    2. 当主(master)服务器和辅(slave)服务器之间通信,辅服务器要拿到主服务器的zone信息的时候。

  • 相关阅读:
    软件测试跟踪工具Bugzilla的安装
    Linux必备命令
    BPM Activiti5 学习资料
    23种Java设计模式-传智播客课程
    linux svn 启动 关闭
    JQuery调用iframe子页面函数/对象的方法
    判断 iframe 是否加载完成的完美方法
    java获得数据库信息常用API(DatabaseMetaData)示例
    JS动态修改页面EasyUI datebox不生效、EasyUI动态添加Class、EasyUI动态渲染解析解决方案
    旧金山大学的算法可视化学习教程 赞的教程,将抽象的算法可视化,易于理解
  • 原文地址:https://www.cnblogs.com/feisky/p/2732985.html
Copyright © 2020-2023  润新知