DNS学习笔记

 DNS(域名系统),是一种进行网络资源名到IP地址转换的网络应用,它是由应用程序而不是用户直接使用的应用程序(例如,通常由HTTP、SMTP和FTP等协议调用),因此位于应用层

一.DNS的工作原理

1.例如,当某用户主机上的一个浏览器使用HTTP请求www.plaust.edu.cn页面时,解析过程如图所示:

① 用户主机浏览器请求www.plaust.edu.cn

② 用户主机用UDP的53端口将该web服务器名字发送给DNS域名解服务器进行解析。

③ 域名服务器将www.plaust.edu.cn对应IP地址58.193.152.3通过UDP的53端口返回给用户主机。

④ 用户主机将HTTP请求报文发送到IP地址为58.193.152.3的web服务器的80端口。

⑤ web服务器将对应页面发送给用户主机。

2. ★ DNS采用分布式的的设计方案。分布式方案不仅改善了DNS的可靠性,而且使IP地址能够缓存在      一个附近的DNS服务器中,有助于减少DNS的网络流量和DNS的平均时延。

★ DNS运行划分为多个层,每层均客户/服务器方式工作,从而形成一个联机分布式数据库系统。

DNS在本地域名服务器中进行大多数名字解析,仅少量解析需要通过更高级域名服务器完成。

DNS服务器通常是运行BIND软件的类UNIX服务器

DNS协议运行在UDP上,使用53号周知端口。

3. 域名系统的工作过程:

① 若某应用进程请求将主机名解析为IP地址,则该应用进程将带解析的域名放入DNS请求报文,以UDP报文段方式发给本地域名服务器。

② 本地域名服务器在查找域名映射对后,把对应的ip地址放在应答报文中运回;应用进程获得目的主机的IP地址后即可进行通信。

③ 若本地域名服务器找不到相关信息,则此域名服务器就会成为DNS中的一台客户机,并向其上级域名服务器提出查询请求(具体见下三)。

二.域名的层次结构

1.域名层次结构:

  

① 顶级域名:国家代码标识某个国家(如cn、uk等);国际性组织在int下;其他七个(com、net、org、edu、gov、mil、arpa)。

② 二级域名:由各个国家自行确定。我国将二级域名划分为类别域名(ac、com、edu、gov、net、org工6个)和行政区域名(34个,如bj、js等)。

③ 三级域名:二级域名下注册的公司、单位等。

④ 四级域名:三级域名划分的子域名。

2.域名服务器:

① 根域名服务器:因特网上共13个,标号为A到M。尽管这13个根服务器中的每个都视为独立的服务器,但每台“服务器”实际上都是冗余服务器的集群。

② 顶级域名服务器:负责管理在该顶级域名服务器注册的所有二级域名。

③ 权威域名服务器: 为本组织的服务器(如Web和电子邮件)提供映射,通常有基本、辅助(备份)服务器。

④本地域名服务器: 又叫默认域名服务器。

3.域名管辖区:

因特网允许将各域名划分为若干个区,各个区对应于负责层次结构中某一部分的某个可管理的权威实体。区是域的子集,每个区都可以有一个权威域名服务器,而用户主机直接指向的域名服务器称为本地域名服务器。例如:哥伦比亚大学有CS和EE两个系,其下分别有三个部门。关系如下图:

三.域名服务器的解析过程:

  假如李军主机lijun.plaust.edu.cn想知道用户张红的主机zhanghong.columbia.edu的ip地址,plaust的本地DNS服务器为dns.plaust.edu.cn,哥伦比亚大学的权威DNS为dns.columbia.edu。解析过程如下:

  ① 主机lijun.plaust.edu.cn向本地服务器dns.plaust.edu.cn发送DNS查询报文。

② 本地DNS服务器无法解析而将该报文转发到根DNS服务器。

③ 根DNS服务器向本地DNS服务器返回负责edu的顶级域名的IP列表。

④ 本地DNS服务器向这些顶级域名服务器发送查询报文。

⑤ 顶级域名服务器注意到columbia.edu前缀,用相应的权威DNS服务器的IP地址进行相应,该权威DNS服务器负责dns.columbia.edu。

⑥ 本地DNS服务器直接向dns.columbia.edu重发查询报文。

⑦ dns.columbia.edu找到zhanghong的ip地址并进行响应。

主机----→本地DNS服务器 (递归)

    本地DNS服务器-----→其他DNS服务器(迭代)

时间: 2024-10-12 16:47:49

DNS学习笔记的相关文章

DNS学习笔记之DNS理论知识

DNS: Domain Name System (将域名和ip地址相互转化) 域名是一个范围,例如baidu.com,.com.而www.baidu.com是个主机名,即FQDN: Full Qualified Domain Name, 完全限定域名),诸多主机名构成了一个域名. DNS主要用来名称解析(Name Resolving),其实本质上是名称转换,但是由于涉及到数据库查询,所以叫做解析. FQDN<-->IP 192.168.0.220         www.zdx.com 192

马哥Linux学习笔记之四——DNS

1.BIND:Berkeley Internet Name Domain DNS:Domian Name Service 域名解析 2. Http 3.PAM 插入式认证模块 4.SMTP/POP3/IMAP4:Mail Server 5.域名 www.baidu.com这是一个主机名(FQDN,Full Qualified Domain Name,完全限定域名),com是一个域名,baidu.com也是一个域名,域名是好多主机的集合. 域名解析起后面有一个数据库,解析就是一个查询的过程.域名解

kvm学习笔记

http://blog.opskumu.com/ http://blog.csdn.net/kumu_Linux http://blog.opskumu.com/kvm-notes.html#kvm- KVM十年 virtio-gpu介绍 Linode 从 Xen 升级到 KVM qemu2.7编译实战 SPICE协议的理解 海量"小文件"优化秘籍:GlusterFS 让KVM虚拟机支持console功能 利用KVMGT-kernel,实现 KVM GPU虚拟化 让KVM虚机能使用音箱

[原创] linux课堂-学习笔记-目录及概况

本学习笔记基于:网易云课堂-linux课堂 课时1Centos 6.4安装讲解46:14 课时2Centos 6.4桌面环境介绍与网络连接04:30 课时3 Linux目录结构介绍及内核与shell分析37:19 课时4 Linux获得帮助_网络配置_合理关机64:23 课时5 Linux文件权限详解45:47 课时6Linux文件权限详解45:47 课时7目录显示个性操作与全局环境变量的使用与注意···43:25 课时8复制与远程复制_文件查找实例_文件内容查看的··57:49 课时9Linu

【转】TCP/IP详解学习笔记(二)

TCP/IP详解学习笔记(5)-IP选路,动态选路,和一些细节 1.静态IP选路 1.1.一个简单的路由表 选路是IP层最重要的一个功能之一.前面的部分已经简单的讲过路由器是通过何种规则来根据IP数据包的IP地址来选择路由.这里就不重复了.首先来看看一个简单的系统路由表. Destination     Gateway         Genmask         Flags Metric Ref    Use Iface192.168.11.0    *               255.

TCP/IP详解学习笔记

TCP/IP详解学习笔记(1)-基本概念 TCP/IP详解学习笔记(2)-数据链路层 TCP/IP详解学习笔记(3)-IP协议,ARP协议,RARP协议 TCP/IP详解学习笔记(4)-ICMP协议,ping和Traceroute TCP/IP详解学习笔记(5)-IP选路,动态选路,和一些细节 TCP/IP详解学习笔记(6)-UDP协议 TCP/IP详解学习笔记(7)-广播和多播,IGMP协议 TCP/IP详解学习笔记(8)-DNS域名系统 TCP/IP详解学习笔记(9)-TCP协议概述 TCP

Puppet学习笔记(CentOS6.3+Puppet3.01)

Puppet学习笔记(CentOS6.3+Puppet3.01) 技术 Add comments Oct262012 下了决心,好好学习puppet,周末专门去参加一个puppet的培训,难得朋友那么热心,组织大家一起去学习.我就提前做一下功课. 2012年10月29日:参加完两天的培训,深刻体会到puppet的强悍,当然讲Puppet的朋友,还是非常有经验,不只是puppet经验,还有讲课的经验,学习一个新东西的经验.一个最大的收获:官方的文档非常好,把puppet读完,你就差不多. Cont

Linux学习笔记033_10

网卡命名: eth0,eth1 子接口(一个网卡上多个IP):eth0:1,eth0:2 ifconfig: 查看网卡信息 ifup ethx:开启网卡 ifdown ethx:关闭网卡 配置网卡: 图形 命令: ONBOOT为yes表示启动计算机时通过网卡 全局网络配置: 第一行为开启ipv4,第二行为开启ipv6,第三行为计算机名,注意计算机名在DNS要解析到,如clc.com 可以加一行:GATWAY=192.168.1.254,不过以network-scripts中的网关优先级高 DNS

cubieboard学习笔记

ubieboard学习笔记 2014-05-09  hginvent   阅 5345  转 16 转藏到我的图书馆 微信分享: 入手开发板,刷机肯定是少不了的,就像我们平时刷安卓手机一样.开发板也有很多适配的固件.比如Cubieboard3 Cubietruck就有安卓,debian,ubuntu等定制的固件. Cubieboard3 Cubietruck出厂的固件为安卓,拿到手上电,用HDMI接上电视,没有反应,后来确定是我HDMI切换器的问题.个人比较喜欢debian,去 Cubieboa