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

标识因特网上主机的方式

主机名

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

  • 右键点击我的电脑属性。
  • 在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。
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值