域名系统DNS

  • 标识因特网上主机的方式
    • 主机名
    • IP地址
  • 域名系统(DNS)
    • 工作过程
  • 互联网的域名结构
    • 顶级域名
      • 国家顶级域名nTLD
      • 通用顶级域名gTLD
      • 基础结构域名
    • 二级域名
      • 类别域名
      • 行政区域名
    • 域名树
    • DNS规定
  • 域名服务器
    • 域名服务器的层次
      • 根域名服务器
      • 顶级域名服务器(TLD服务器)
      • 权限域名服务器
      • 本地域名服务器
    • 域名解析过程
      • 递归查询
      • 迭代查询

标识因特网上主机的方式

主机名

计算机的名字。我现在的主机名字为DESKTOP-E8FG2MI。其他如:www.google.com,www.facebook.com。主机名几乎没有提供在因特网的位置。
两种查看方式:

  • 右键点击我的电脑属性。
  • 在cmd中输入ipconfig/all。

IP地址

网络层的内容。形如:121.7.106. 83
IP地址具有层次结构,是因为当我们从左至右扫描它时,我们会得到越来越具体的关于主机位于因特网何处的信息(即在众多网络的哪个网络里)。
路由器这样喜欢定长的、有着层次结构的IP地址。

域名系统(DNS)

主要任务:用来把主机名转换到IP地址。
定义:

  • 一个由分层的DNS服务器实现的分布式数据库;
  • 一个使得主机能够查询分布式数据库的应用层协议。

DNS 服务器通常是运行 BIND 软件的UNIX机器。
DNS使用客户-服务器模式运行在通信的端系统之间,通过采用了位于网络边缘的客户和服务器,实现了关键的名字到地址转换功能。

工作过程

假如某一应用进程需要把主机名解析为IP地址

  • 该应用进程调用解析程序,成为DNS的一个客户。
  • 把待解析的域名放在DNS请求报文中,以UDP用户数据报方式发给本地域名服务器(使用UDP是为了减少开销)。
  • 本地域名服务器查找到域名后,把对应的IP地址放在回答报文中返回。
  • 如果本地域名服务器不能回答该请求,则此域名服务器就暂时成为DNS中的另一个客户,并向其他域名服务器发出查询请求。
  • 应用进程获得目的主机的IP地址后即可通信。

互联网的域名结构

采用层次树状结构的命名方法,使得任何一个连接在互联网上的主机或路由器都有一个唯一的层次结构的名字(域名)。

如下图为中央电视台用于收发电子邮件的计算机(即邮件服务器)的域名:

顶级域名

分为国家顶级域名nTLD,通用顶级域名gTLD,基础结构域名。

国家顶级域名nTLD

比如cn表示中国,us表示美国,uk表示英国。等等

通用顶级域名gTLD

corn (公司企业), net (网络服务机构), org (非营利性组织), int (国际组织), edu
(美国专用的教育机构), gov (美国的政府部门), mil(美国的军事部门)等等。

基础结构域名

这种顶级域名只有一个, 即arpa, 用于反向域名解析, 因此又称为反向域名

二级域名

分为类别域名、行政区域名。

类别域名

ac (科研机构), corn (工、 商、 金融等企业), edu(中国的教育机构), gov (中国的政府机构), mil (中国的国防机构), net (提供互联网络服务的机构), org (非营利性的组织)。

行政区域名

适用于我国的各省、自治区、 直辖市。 例如: bj C北京市),js (江苏省), 等等

域名树

表示互联网的域名系统。如下图:

DNS规定

  • 每一个域名都由标号(label)序列组成, 而各标号之间用点隔开。
  • 域名中的标号都有英文字母和数字组成。
  • 每一个标号不超过63个字符,且不区分大小写。除了使用-以外不能使用其他标点符号。
  • 级别越高的域名写在越右边,如com是顶级域名。
  • 完整域名不能超过255个字符。

注意:

  • 域名只是个逻辑概念, 并不代表计算机所在的物理地点。
  • 域名中的 “点” 和点分十进制 IP 地址中的 “点” 并无一一对应的关系。

域名服务器

域名体系是抽象的,具体实现域名系统的是使用分布在各地的域名服务器。
从理论上讲, 可以让每一级的域名都有一个相对应的域名服务器, 使所有的域名服务器构成和图相对应的 “域名服务器树” 的结构。 但这样做会使域名服务器的数量太多, 使域名系统的运行效率降低。 因此DNS就采用划分区的办法来解决这个问题。
一个服务器所负责管辖的(或有权限的)范围叫做(zone)。
在一个区中的所有节点必须是能够连通的。 每一个区设置相应的权限域名服务器, 用来保存该区中的所有主机的域名到IP地址的映射。
区是DNS服务器实际管辖的范围。 区可能等千或小千域, 但一定不能大于域。

如下图举例,假定abc公司有下属部门x,y,部门x下面又分三个部门u,v和w,依此类推。

域名服务器的层次

每一个域名服务器都能够进行部分域名到IP地址的解析。 当某个DNS服务器不能进行域名到
IP地址的转换时, 它就设法找互联网上别的域名服务器进行解析。
域名服务器按层次分可分为根域名服务器,顶级域名服务器,权限域名服务器,本地域名服务器。

根域名服务器

所有的根域名服务器都知道所有的顶级域名服务器的域名和 IP 地址。根域名服务器是最重要的域名服务器, 因为不管是哪一个本地域名服务器, 若要对互联网上任何一个域名进行解析(即转换为IP地址), 只要自己无法解析, 就首先要求助于根域名服务器。假定所有的根域名服务器都瘫痪了, 那么整个互联网中的 DNS 系统就无法工作。
由千根域名服务器采用了任播技术,因此当 DNS 客户向某个根域名服务器的 IP 地址发出查询报文时, 互联网上的路由器就能找到离这个 DNS 客户最近的一个根域名服务器。 这样做不仅加快了 DNS 的查询过程, 也更加合理地利用了互联网的资源。
需要注意的是, 在许多情况下, 根域名服务器并不直接把待查询的域名直接转换成 IP 地址(根域名服务器也没有存放这种信息), 而是告诉本地域名服务器下一步应当找哪一个
顶级域名服务器进行查询。

顶级域名服务器(TLD服务器)

这些域名服务器负责管理在该顶级域名服务器注册的所有二级域名。 当收到 DNS 查询请求时, 就给出相应的回答(可能是最后的结果,也可能是下一步应当找的域名服务器的IP地址)。

权限域名服务器

这就是前面已经讲过的负责一个区的域名服务器。 当一个权限域名服务器还不能给出最后的查询回答时, 就会告诉发出查询请求的 DNS客户, 下一步应当找哪一个权限域名服务器。

本地域名服务器

不属于域名层次结构,但是十分重要。每一个互联网服务提供者 ISP, 或一个大学, 甚至一个大学里的系, 都可以拥有一个本地域名服务器, 这种域名服务器有时也称为默认域名服务器。 当计算机使用Windows7操作系统时, 打开 “控制
面板", 然后依次选择 “网络和Internet " – “网络和共享中心” – " 查看网络状态和任务” – “无线网络连接 "(假定采用家庭网络) – " 属性” – “Internet协议版本 4” – "属性 ”等项目, 就可以看见首选DNS服务器和备用DNS服务器的IP地址。 这里的DNS服务器指的就是本地域名服务器。 本地域名服务器离用户较近, 一般不超过几个路由器的距离。 当所要查询的主机也属于同一个本地ISP时, 该本地域名服务器立即就能将所查询的主机名转换为它的IP地址, 而不需要再去询问其他的域名服务器。

域名解析过程

递归查询

如果主机所询问的本地域名服务器不知道被查询域名的 IP 地址, 那么本地域名服务器就以 DNS客户的身份, 向其他根域名服务器继续发出查询请求报文(即替该主机继续查询), 而不是让该主机自已进行下一步的查询。 因此, 递归查询返回的查询结果或者是所要查询的IP地址, 或者是报错, 表示无法查询到所需的IP地址。

迭代查询

假设域名为m.xyz.com的主机想知道域名为y.abc.com的主机的IP地址。例如,主机m.xyz.com打算发送邮件给主机y.abc.com。这时就必须知道主机y.abc.com的IP地址。
查询步骤:

  • 1.主机m.xyz.com先向其本地域名服务器dns.xyz.com进行递归查询。
  • 2.本地域名服务器采用迭代查询。 它先向一个根域名服务器查询。
  • 3.根域名服务器 告诉本地域名服务器, 下一次应查询的顶级域名服务器 dns.com的IP
    地址。
  • 4.本地域名服务器向顶级域名服务器dns.com进行查询。
  • 5.顶级域名服务器 dns.com 告诉本地域名服务器, 下 一次应查询的权限域名服务器
    dns.abc.com的IP地址。
  • 6.本地域名服务器向权限域名服务器dns.abc.com进行查询。
  • 7.权限域名服务器dns.abc.com告诉本地域名服务器,所查询的主机的IP地址。
  • 8.本地域名服务器最后把查询结果告诉主机m.xyz.com。

这8个步骤总共要使用8个UDP用户数据报的报文。 本地域名服务器经过三次迭代查询后, 从权限域名服务器dns.abc.com得到了主机y.abc.com的IP地址, 最后把结果返回给发起查询的主机m.xyz.com。

计算机网络应用层笔记--域名系统DNS相关推荐

  1. 计算机网络原理笔记 精整理 第六章 应用层

    计算机网络原理笔记 精整理 第六章 应用层 6.1域名系统DNS 6.1.1什么是域名 6.1.2域名的结构 6.1.3Internet中的域名服务器 6.1.4域名解析过程 6.2动态主机配置协议D ...

  2. 计算机网络应用层(二):DNS协议详解

    DNS协议详解 前言 DNS协议概述 DNS工作原理 DNS缓存 DNS记录和报文 资源记录 DNS报文 总结 前言 DNS是计算机网络中应用层的一个协议,可能很多同学碰到过DNS被劫持的情况,我们现 ...

  3. 计算机网络学习笔记第六章(应用层)超详细整理

    目录 6.1.应用层概述 6.2.客户/服务器方式(C/S方式)和对等方式(P2P方式) 1.概念 2.客户/服务器方式(C/S方式) 3.对等方式(P2P方式) 4.总结 6.3.动态主机配置协议D ...

  4. 朝颜的计算机网络学习笔记【Chapter 6.应用层】

    课程来源: 「湖科大」计算机网络微课堂视频传送门 Chapter 6.应用层 6.1 应用层概述 应用层是计算机网络体系结构的最顶层,是设计和建立计算机网络的最终目的,也是计算机网络中发展最快的部分. ...

  5. 2、计算机网络之应用层笔记(基于中科院郑老师和计算机网络自顶向下方法)

    文章目录 应用层协议一些概述 应用程序体系结构可以分成两种主流的体系结构 1.C/S模型,即为客户-服务器体系结构 2. 第二个是P2P系统 3. 第三种,混合体 进程通信 分布式通信中要解决哪些问题 ...

  6. 实习笔记0708 https协议/ django中间件/接口测试/内网与外网/域名系统DNS

    1 https协议 https://www.cnblogs.com/superfeeling/p/11561340.html https://www.cnblogs.com/an-wen/p/1118 ...

  7. 计算机网络——域名系统DNS

    文章目录 1.域名系统DNS的作用 2.层次树状结构的域名系统 3.域名解析的过程 4.总结 1.域名系统DNS的作用     当我们想要访问某个网页时,我们输入的地址并不是其IP地址,而是输入一个域 ...

  8. 计算机网络-自顶向下笔记-应用层-P2P应用

    计算机网络所有笔记 P2P文件分发 P2P(peer to peer)应用的特性: 没有服务器 任意端系统之间直接进行通信 节点阶段性接入Internet 节点可能更换IP地址 P2P的明显的缺点:复 ...

  9. 计算机网络学习笔记:第二章

    文章目录 计算机网络学习笔记:第二章 前言 2.1.应用层协议原理 2.1.1 网络应用程序体系结构 2.1.2 进程通信 2.1.3 可供应用程序使用的运输服务 2.1.4 因特网提供的传输层服务 ...

最新文章

  1. js 输出中文乱码 解决办法
  2. Sprint(第一天11.14)
  3. Swift3.0语言教程使用URL字符串
  4. 【CVPR Oral】TensorFlow实现StarGAN代码全部开源,1天训练完
  5. 关于秒杀系统的压力测试
  6. 第06讲:多路加速,了解多进程基本原理
  7. python 三引号_Python 简明教程 --- 4,Python 变量与基本数据类型
  8. [Qt]用QItemDelegate的来修改QStandardItem字体颜色
  9. 2015年职称计算机考试宝典,2015年职称计算机考试宝典模块软件.doc
  10. 关于DBC文件的创建(DBC文件系列其一)
  11. Unity3D 智能巡逻兵
  12. 单核CPU使用多线程能否提高效率?
  13. 计算机格式化后数据恢复的基础,电脑硬盘格式化后数据能恢复吗
  14. 基于注意力机制的多尺度车辆行人检测算法
  15. java mysql 订单表设计
  16. python3.x和python2.x唯一区别_Python3.x和Python2.x的区别
  17. ORA-01034: ORACLE not available Process ID: 0 Session ID: 0 Serial number: 0
  18. 《加州之梦》 (California Dreaming)
  19. 印第安人的捕梦网 Dreamcatcher 与音乐——排箫
  20. 形式语言与自动机理论(1)----基础介绍

热门文章

  1. java文章上一篇下一篇_每个人都必须阅读的10篇Java文章
  2. Java使用者的延期执行
  3. Java 9中的无限集
  4. log4j性能 slf4j_Log4j 2:性能接近疯狂
  5. Java 9示例–收集的工厂方法–创建不可修改的列表,集合和映射
  6. jboss7.1.1 部署_在JBoss AS 7上部署BroadleafCommerce 2.0
  7. jboss加载组件_直接从JBoss AS 7组件使用JGroups
  8. jee过滤器应用场景_将涡轮增压器添加到JEE Apps
  9. 使用CloudForms实现云运营幸福感的3个步骤
  10. 驳斥5条普通流Tropes