2009-7-25 1
计算机网络
Computer Networks
第九讲 网络应用(二)
DNS:域名系统
2009-7-25 2
课前问题
1、网络应用模式中对称模式和非对称模式的主要区别是什么?
2,C/S与 B/S的有何区别?
2009-7-25 3
域名系统
2009-7-25 4
名字服务系统
32 bits的 IP地址难于记忆,对于用户而言,主机的名字比主机的 IP地址更易于记忆。
人,身份证号码 姓名
主机,IP地址 主机名
早期的名字服务主要依靠 hosts文件来实现
2009-7-25 5
名字服务系统
Hosts文件保存每台主机连接 Internet的有关信息,包括主机的 IP地址和名字
文件是平面结构,没有任何分类等级,
要求分配给主机的名字是唯一的
主要问题:
名字冲突
不易管理
2009-7-25 6
使用简单的文件 hosts.txt,罗列出所有的主机域名和它们的 IP地址。在当今网络中,已经连接了成百上千的主机,这种静态的文件就太大了。域名系统 DNS(Domain Name System)就是完成域名地址和 IP地址之间相互转换的程序。
域名系统 DNS是典型的客户 /服务器模式。域名系统 DNS的核心是分级的、基于域的命名机制以及为了实行这个命名机制的分布式数据库系统。
域名系统
2009-7-25 7
DNS (域名系统)
层次型命名机制
例如,student.comp.gzu.edu.cn,说明该主机位于中国教育网中贵州大学计算机系网络中,主机名为 student。
gzu edu.cn
DNS ARP210.40.0.33 04 002 A00E037
IP 物理地址
DNS的作用是将主机名字转换成二进制 IP地址
2009-7-25 8
域名的名字空间
域名的定义域名是层次化的,形成一棵倒挂的树。树状结构为:

在根下的顶级 (top)域名
3字符域,generic
2字符域,country
在某个顶级域名下的第二级域名
在某个第二级域名下的第三级域名
叶:主机域名
2009-7-25 9
域名的名字空间
Internet被分成了几百个顶层域,每个域又被划分成子域。顶层域中分成两个大类:一般的 (3个字符 )和国家的 (2个字符 )。几乎所有的美国组织都处于一般域中,非美国组织都列在自己所在国家的域下。
2009-7-25 10
gzupku
cn edujp comorg,..ukca,..

edu comorg,.,mit cmu...
zju
ee emcomp,..
mail www
www cs
ftp
顶层第二层第三层第四层第五层域名的树状结构图
2009-7-25 11
常见的顶级域名域名 含义 域名 国家
c om 商业部门 jp 日本
ed u 教育部门 de 德国
ne t 大型网络 ca 加拿大
mi l 军事部门 uk 英国
go v 政府部门 a u 澳大利亚
or g 组织机构 c n 中国
2009-7-25 12
域名的命名机制
主机域名
主机名,最低级域名,……,最高级域名
例如,主机 student.comp.gzu.edu.cn
路径 ftp.gzu.edu.cn/incoming/
一个域名按照从自身向上至顶层域的路径命名,中间用圆点分隔。其中最重要的顶级域在右边,最左边是主机名,中间为子域名。
域名对大小写不敏感,每个子域名最多不能超过 63个字符,路径全名不能超过 255个字符。
2009-7-25 13
域名的区域划分
区域 (zone)将域名树划分成互不交叉的子树,一棵子树形成一个区域。每个区域可以划分成更小的区域。
每个域能够控制如何分配它下面的子域,
要创建一个新的域必须征得它所属域的同意。
2009-7-25 14
域名的区域划分
区域的权威代表网络信息中心 NIC,它对域名的管理职能包括:
申请和分配 IP地址
提供域名注册服务
提供域名 /地址解析服务( DNS服务)
与上级管理域和其他域共同维护 DNS信息
主要的 NIC机构有
国外,InterNIC(北美及其地区 ),RIPENIC(欧洲 ),
APNIC(亚洲 )
国内,CNNIC,CERNET
2009-7-25 15
域名服务器
根域名服务器
记录所有第二级域名的 DNS信息
分布在网络的不同地方,具有公开的 IP地址
域名服务器的功能
记录本域的域名注册信息
提供 IP地址 /域名的解析服务
域内服务:直接解析
域外服务:可以提交给根域名服务器,可以与其他服务器即时交换全网的 DNS信息。
提供域名信息查询服务
域名服务器的配置域名服务器至少由两台独立的主机构成,一台 (primary)记录原始数据,一台 (secondary)
做 备份用。
2009-7-25 16
comp.gzu.edu.cn
gzu.edu.cn
edu.cn
Primary Secondary
Primary
Secondary
Primary
Secondary
ROOT
域名服务器的配置
2009-7-25 17
DNS定义在 RFC 1035中。在 DNS的数据库中用资源记录来表示主机和子域的信息,当应用程序进行域名解析时,得到的便是域名所对应的资源记录。
资源记录是一个五元式:
域名 Domain Name
生存时间 TTL:以秒为单位
类型 Type:主要有 8种
类别 Class,IN
值 Value:对应于类型描述域名 生存时间 记录类型 网络类型 值
ns.edu.cn 86400 A IN 202.112.1.1
pku.edu.cn 86400 NS IN 202.113.1.1
www.edu.cn 86400 CNAME IN ns.edu.cn
域名的资源记录
2009-7-25 18
资源记录中的类型
Type Description Value
SOA Start of authority 该区的参数
A 一个主机的 IP 地址 32bits
MX 邮件交换 优先权,该域愿意接收的电子邮件
NS 名字服务器 本域的服务器名
CNAME 规范名 域名
PTR 指针 IP 地址的别名
HINFO 主机描述 以 ASCII 码表示的 CPU 和 OS
TXT 文本 未解释的 ASCII 文本
2009-7-25 19
域名解析
递归解析
反复解析
2009-7-25 20
本地 DNS
服务器本地主机应用程序 解析器根 DNS
服务器远程二级DNS服务器远程三级DNS服务器




请求域名解析 管辖 edu.cn
返回解析结果 管辖 mit.edu
管辖 cs.mit.edu
保存了 ftp.cs.mit.edu的 IP地址域名解析方法 1:递归解析
递归解析 (Recursive resolution)
一次域名服务请求即可自动完成域名 /IP地址之间的转换,由 DNS服务器软件连锁完成,不适于频繁的域名解析应用。
2009-7-25 21
远程二级
DNS服务器本地 DNS
服务器本地主机应用程序 解析器根 DNS
服务器远程三级
DNS服务器



请求域名解析 管辖 edu.cn
返回解析结果管辖 mit.edu管辖 cs.mit.edu
保存了 ftp.cs.mit.edu的 IP地址
不能解析,
告知下一个 DNS
不能解析,
告知下一个 DNS
域名解析方法 2:反复解析
反复解析 (iterative resolution)
需要向不同 DNS服务器依次发送请求
加重本地 DNS服务器的负担
2009-7-25 22
域名解析算法开 始结 束构造 DNS报文发往指定服务器从数据库中取出相应的地址将结果返回求解方给出可用的服务器地址 递归求解可以解析那种方式?
YESNO
递归反复求解方完成服务器完成
2009-7-25 23
域名解析的实现
当某个应用程序 A需要进行域名解析时(从域名到 IP地址),A就是域名系统的一个客户方。
域名解析的过程:
一个区域内的机器上的应用程序进行域名解析时,
首先向该区域的域名服务器发出解析请求,若查找到,则返回域名对应的资源记录。
若找不到,该域名服务器向所查找域名的顶级域的域名服务器发出解析请求。
顶级域的域名服务器通过向下的层次查询得到对应的资源记录,返回给该域名服务器。
最后资源记录被返回给发起域名解析的机器,并在该区域的域名服务器中做缓存。
2009-7-25 24
.edu顶级域名服务器域名管理原则:
每一个域名服务器都只对域名体系中的一部分进行管辖
edu com
abc xyz
“树根”
.com顶级域名服务器
abc
x y
u v w
w
xyz
m
Internet
① 作为 DNS的一个客户先向本地域名服务器发送查询,
IP(w.x.abc.com)=?
② 本地 DNS不知道所查的域名,向顶级查询?
IP(w.x.abc.com)=?
③,com顶级并不知道,
但返回 abc.com
授权服务器的 IP
2009-7-25 25
abc.com
授权服务器
edu com
abc xyz
“树根”
.com顶级域名服务器
abc
x y
u v w
w
xyz
m
Internet
x
④ 根据返回的 IP地址又向 abc.com授权服务器查询。
IP(w.x.abc.com)=?
⑥ xyz本地服务器将此 IP返回给 DNS客户
⑤ 返回域名为:
w.x.abc.com
的 IP
2009-7-25 26
DNS性能的优化
阅读 193页 13.2.4节,回答以下问题:
如何优化 DNS的性能?
DNS服务器使用两种性能优化技术:
复制
存在多个根服务器的复本,配置根服务器列表,
选择响应最快的根服务器
缓存
每个服务器都有一个域名缓存,用于记录已知的域名和 IP地址的绑定