第四章IP地址及域名

Download Report

Transcript 第四章IP地址及域名

第四章 IP地址及域名
IP 地址
IP 地址唯一确定结点在互联网上的位置。
 32位 IP 地址的点分十进制表示:
10100110 01101111 00000001
00000110表示为:166 . 111 . 1 . 6
 IP 地址类型
 子网编址和屏蔽码
 IP 地址和物理地址的动态转换

IP地址类型
0
8
A类 0 网络号(7)
B类 10
C类 110
16
24
主机地址(24位)
网络号(14位)
31
主机地址(16位)
网络号(21位)
D类 1110
多播地址
E类 1111
保留
主机地址(8)
IP地址类型—网络号
A,B,C三类可以适应不同大小的物理网络。
网络号标识互联网中一个物理网络,网络号必须遵
循的准则:
 网络号必须唯一。若在 Internet上,网络号必须
对 Internet 唯一。
 网络号不能是127,127.x.y.z 保留给回绕
(loopback) 地址,自己连自己测试用。
 网络号不能为 0,网络号 0 解释为本网,网络号
为 0的主机地址解释为本网的主机。
IP地址类型—网络号 (续)
类
起 始
结 束
网络数
A
1.x.y.z 126. x.
y.z
126
B 128.0.y.z 191.255.
y.z
16384
C 192.0.0.z 223.255.255.z 2097152
IP地址类型—主机地址
主机地址标识某物理网络上一台主机或路由
器端口。主机地址必须遵循的准则:
 主机地址对于给定的网络号必须唯一。
 主机地址不能全 1,主机地址全 1 被解释为
广播地址,在网络号所指的网络上广播。
 主机地址不能全 0,主机地址全 0 被解释为
标识一个网络。
IP地址类型—主机地址(续)
类起 始
结 束
主机数
A w.0.0.1 w.255.255.254 16777214
B w.x.0.1 w. x.255.254
C w.x.y.1 w. x. y.254
65534
254
私用网络的IP地址



Internet的IANA在RFC1918中建议了三块IP地址
为私用互联网预留,它们是10/8,172.16/12 和
192.168/16,即1个A类网,16个连续的B类网
(172.16~172.31),256个连续的C类网(…)。
决定内部使用这些IP地址的机构可以不必与 IANA
或APNIC,RIPE,ARIN等协调,所以这些地址
可以被许多独立机构同时在内部使用。
如果这些机构以后决定要与Internet通信,则要重
新编址或在边界路由器使用网络地址转换NAT。
子网编址和屏蔽码(掩码)
—包含子网地址的 B类 IP地址
0
10
16
网络号
子网地址
31
主机地址
子网编址和屏蔽码
—默认的屏蔽码
类
默认的屏蔽码
A
255. 0. 0. 0
B
255.255. 0. 0
C
255.255.255. 0
子网编址和屏蔽码
—高4位用作子网地址的屏蔽码
类
屏蔽码
A
255.240. 0. 0
B
255.255.240. 0
C
255.255.255.240
IP地址和物理地址的动态转换
—需求



主机要在物理网络上通信,最终必须依靠物理地
址。以太网接口卡只基于48位物理地址发帧和收
帧。
在一个以太网上,主机把帧传递给路由器,或者
路由器把帧传递给主机,都必须有目标的物理地
址。
从目标的 IP 地址如何知道它的物理地址?通过地
址解析协议ARP (Address Resolution Protocol)
动态转换。转换必须动态,为什么?
IP地址和物理地址的动态转换
我是166.111.1.8
物理地址02608C...
谁是166.111.1.6?
ARP 缓存表
02608…166…8
09000…166…6
A
是我! 是我!
166.111.1.6
物理地址09000...
谢谢!
B
A
ARP 缓存表
09000…166…6
02608…166…8
B
IP地址和物理地址的动态转换
—原理
在同一物理网络内,当A想把B的IP地址转换成B 的
物理地址时:
 A在本网广播ARP请求报文,内含B的IP地址;
 B收到此报文后发回一个ARP 响应报文,内含自
己的物理地址。
 A收到应答后便知道B的物理地址。然后B的IP地
址和物理地址映射项保存在A的快速缓存表。
 在广播ARP请求前先查ARP快速缓存表,若已查
到IP-物理地址映射项,就不再广播。
IP地址和物理地址的动态转换
—ARP报文格式
0
16
31位
硬件类型 (1表示以太网)
协议类型 (0800表示IP)
硬件地址长度 协议地址长度
操作 (1=请求,2=响应)
发送者硬件地址 (字节0~3)
发送者硬件地址 (字节4~5)
发送者协议地址 (字节0~1)
发送者协议地址 (字节2~3)
目标硬件地址 (字节0~1)
目标硬件地址 (字节2~5)
目标协议地址
域名系统DNS




在Internet上主机用IP地址来标识。对于计算机IP
地址操作方便,但对用户来说,符号名字容易记
忆,更方便。能否各用各的,皆大欢喜。
早期网上主机名与IP地址映射保存在hosts.txt。
Internet的域名系统 DNS(Domain Name System)
提供主机名与IP地址之间的转换服务。DNS是今
天在 Internet 上成功运作的名字服务系统。
Internet 的应用服务,如电子邮件系统,远程登
录,文件传输,WWW等都需要 DNS 服务。
域名系统DNS(续)
任何一个组织要接入 Internet,就要加入Internet 域
名系统 DNS,必须在管理域名的 Internet 机构申
请、注册某域名。中国大陆域名数达69万。
DNS域名和域名空间
 DNS数据库和资源记录
 名字服务器
 名字解析器
 域名解析

DNS域名
DNS域名有层次结构,域名的层次大致对应网络的
管理层次。tsinghua.edu.cn 是清华的域名。
域名的特征:
 由一组标号(label)组成,以字母开始,以字母或
数字结尾,中间允许字母、数字和“-”。
 每个标号不超过63字节。
 标号之间用句号“.”分开, 句号代表层次的边界。
 域名总长不超过255字节。
 从右向左代表从高到低的层次,最右是最顶层。
DNS域名(续)




国家代码由两个字符的国别码构成,如 cn代表中
国,ca代表加拿大,uk代表英国,等等。
除国家代码外,DNS的其它顶层域名edu、com
等如表所示。后来又增加了7个。
由于历史原因,表中所列的域名在美国以外的其
它国家一般不是最顶层域名,而往往是次顶层域
名,顶层域名是国家代码。
现在其它国家也可以注册以 .com、.net、.org
等为后缀的域名。例清华的BBS:bbs.smth.org。
DNS的顶层域名及其意义
域 名
edu
com
gov
mil
net
org
意 义
教育系统
商业机构
政府部门
军事团体
主要的网络支持中心
非赢利性组织
DNS域名空间





麻省理工学院MIT注册的域名为 mit.edu,因此
MIT在Internet 上主机的域名以 mit.edu为后缀。
清华大学注册的域名为 tsinghua.edu.cn。
IBM 注册的域名是 ibm.com。
这些域名的下层结构和名称由各机构自由分配,
不会重名。中国的域名(.cn)由CNNIC注册管理。
DNS的域名空间是一棵倒着画的树。树的每个结
点有一个标号,兄弟结点不能有同样的标号,非
兄弟结点可使用相同标号,树根使用空标号。
DNS域名空间树
cn
ac
ca
edu ...
pku tsinghua ...
cs
ee
...
edu
mit
com
... ibm ...
gov
mil
net
DNS域名空间树(续)



每个结点都代表一个域,它的域名是从该结点到
树根的标号序列,标号用句号“.”分隔。
因为根结点使用空标号,所以域名以“.”结尾,
在它后面其实还有一个空标号。例如结点pku的域
名是pku.edu.cn.,这种域名称绝对域名。
如果考虑域名空间的子树,如下页的子树(a)和子
树(b),子树(b)中结点的域名,如pku.edu,
cs.tsinghua.edu,子树(a)中结点的域名,如
tsinghua.edu.cn等是相对于各子树的域名,称相
对域名。相对域名的最后没有“.”。
域名空间的子树
cn
ac
pku
cs
edu
edu ...
tsinghua
ee
(a)
pku
...
cs
tsinghua
ee
...
(b)
...
...
DNS域名和域名空间(续)


域的划分是一种管理上的划分。管理上将Internet
上的主机按其所属部门分类。例如清华大学校园
网的主机以所属系、所分类,计算机系的主机域
名都以 cs.tsinghua.edu.cn 为后缀,电子工程系
的主机域名都以 ee.tsinghua.edu.cn 为后缀。这
样计算机系和电子工程系可以独立地命名和管理
他们的主机,不会有重名。
域的划分也可反映地域的划分。但域主要是为管
理,是逻辑上的划分,可独立于物理网络和拓扑。
层次结构域名树允许层次、分布式管理。
DNS数据库和资源记录
DNS域名树又是DNS数据库。DNS的每个域有其相
关数据,包括该域所管理的主机域名及IP地址,
邮件服务器等。这些数据组织成一条一条资源记
录RR (Resource Record) 的形式存放。
每条资源记录RR由所有者Owner、寿命TTL、类型
Type、类别Class、资源数据RDATA等组成。
 Owner:本资源记录所属域名(即域名树结点)。
 TTL:资源记录的寿命值,32位整数值表示秒数,
高度稳定的信息被赋予较大的TTL值。
 Type:抽象资源类型,可取的值及含义如表。
DNS数据库和资源记录—Type
值
含 义
A
(Address):记录主机 IP 地址
CNAME
(Canonical NAME):记录正规域名
HINFO
(Host INFOmation):记录主机 CPU 和操作系统
MX
(Mail eXchange):记录本域邮件服务器域名
NS
(Name Server):记录本域授权名字服务器域名
PTR
(PoinTeR):指针,指向域名空间的另一部分
SOA
(Start Of Authority):标识一个资源记录集合
(称为授权区段)的开始
DNS数据库和资源记录(续)


Class:16位编码值,标识协议类别,对于
Internet,它的值和含义是:
IN
Internet协议系统
RDATA:代表资源数据,它与资源类型有关。下
表的左列是资源类型 Type,右列是资源数据
RDATA 的内容。最重要的资源记录类型是 A (地
址),它记录某主机的 IP 地址。其次重要的资源
记录类型是 MX,它记录替指定域接受邮件的邮
件服务器的主机域名。
资源数据RDATA—类型及内容
数据类型
A
CNAME
MX
NS
SOA
PTR
数据内容
32 位 IP 地址
域名
16 位优先级(值小优先级高)以及邮件服务器主机域名
名字服务器主机域名
MNAME:名字服务器域名,它是本区段数据来源
RNAME:描述管理本区段的管理员邮箱
SERIAL:本区段的 32 位版本号,亦称序列号
REFRESH:32 位时间间隔,是区段的刷新周期
RETRY:32 位时间间隔,刷新失败后的重试周期
EXPIRE:32 位时间间隔,是区段的有效周期
MINIMUM:本区段的 RR 输出时所带的最小 TTL 值
域名
DNS数据库和资源记录(续)


域名树的每个结点有一个资源记录集合。域名树
是由全体资源记录组成的大数据库。这个大数据
库可以分成许多不重叠的区段(zone)分布存放、
管理。区段是域名树数据库的一部分,它常包含
一个域及其部分子域的资源记录。授权区段是划
分给某机构管辖的区段。
SOA标识一个资源记录集合(称授权区段) 的开始,
它的资源数据是区段的管理参数,如管理员邮箱、
序列号、刷新周期、有效周期等。管理员更新授
权区段内资源记录后要增大序列号。
域名树划分成不重叠的区段
资源记录的例子


bbs.net.tsinghua.edu.cn. IN A
202.112.58.200 此资源记录所属域名是
bbs.net.tsinghua.edu.cn.,协议族是IN,资源类
型是A,资源数据是202.112.58.200。此资源记录
表示域名bbs.net…的Internet主机,其IP地址是
202.112.58.200。
www.... IN CNAME ns.net.tsinghua.edu.cn.
此资源记录指出ns.net.tsinghua.edu.cn是www..
的正规域名,www….是其别名。
授权区段的资源记录例子
$ ORIGIN tsinghua.edu.cn.
net IN SOA ns.net.tsinghua.edu.cn. (
hostmaster.net.tsinghua.edu.cn.
1999122211 1800 300 604800
86400 )
IN NS ns.net.tsinghua.edu.cn.
IN MX 0 ns.net.tsinghua.edu.cn.
IN MX 5 mail.tsinghua.edu.cn.
授权区段的资源记录例子(续)
$ ORIGIN net.tsinghua.edu.cn.
localhost IN
A
127.0.0.1
bbs
IN
A
202.112.58.200
ns
IN
A
202.112.58.206
IN HINFO “sun ultra 1” “solaris2.6”
www
IN CNAME ns.net.tsinghua.edu.cn.
授权区段的资源记录例子(续)



“$ ORIGIN”可以使域名的所书写更简便,若它后
面资源记录所属域名不是以“.”结尾,则该域名
要后接$ ORIGIN中指定的域名。...
net.tsinghua.edu.cn.是这个区段的顶结点。描
述区段顶结点的资源记录对区段管理特别重要,
在例子中它们是所属域名为net.tsinghua.edu.cn.
的 SOA 记录、NS 记录以及两个 MX 记录。
SOA记录指出区段的名字服务器、管理员邮箱、
区段的序列号1999122211、刷新周期1800秒等。
授权区段的资源记录例子(续)
NS记录指出 ns.net.tsinghua.edu.cn.是所属域
的名字服务器。
 两个 MX 记录指出所属域的两个邮件服务器,其
中 ns.net.tsinghua.edu.cn.的优先级为0,最高,
首先使用,若失败则使用优先级低的。
管理域名的Internet机构为顶层域管理区段,并为其
它机构授权低层域的区段。只要上一级机构同意,
给某机构授权包含一个结点的子区段,此机构就
获得该区段的控制权。新区段可增大到任意大小,
并可进一步授权新的子区段。

名字服务器



一个名字服务器支持一个或多个DNS区段,称名
字服务器被授权管辖这些区段。
每个区段信息至少由两个名字服务器提供:一个
主服务器(primary server),以及至少一个辅服务
器(secondary server),以保证在某服务器或某通
信链路故障时仍可获得区段信息。
名字服务器的主要任务就是利用它管辖的区段中
的资源记录回答查询,若被查询的数据不在管辖
区段内,则要追踪到根名字服务器查询。
名字服务器(续)


为提高性能,名字服务器使用名字缓存(name
caching)优化查询。每个名字服务器都有一个名
字缓存器,其中存有根名字服务器的名字和地址,
还存有从其它服务器来的曾经查询的答案,以回
答将来对同一信息的查询。
名字服务器缓存的数据是非授权数据,附有由授
权服务器附加的寿命值(TTL)。缓存数据是不完备
的,与授权的区段数据不同,它通过超时机制丢
弃。
名字服务器(续)



名字服务器可被配置成主服务器(primary)、辅服
务器(secondary)、名字缓存器(cache)。
主服务器是给定域的区段信息的授权来源,区段
信息来源于域管理员创建并维护的本地磁盘文件。
域管理员在更新了文件中区段信息后必须增大
SOA记录中的序列号。
辅服务器从主服务器获得区段信息的拷贝,并按
SOA记录中指定的刷新间隔周期地检查主服务器
区段的序列号,若序列号增大了则要从主服务器
重新拷贝,即更新区段信息。
名字服务器(续)
名字服务器是服务器进程,在UNIX上它是
in.named 进程。文件/etc/named.boot配置名字服
务器及其参数。下面是named.boot的一个例子:
directory /var/named (指出下列文件所在目录)
;type
domain
source file/host
backu
file
cache
.
named.root
primary net.tsinghua.edu.cn named.hosts
primary 58.112.202.in-addr.arpa named.rev
secondary tsinghua.edu.cn 166.111.8.28
thedu.bak

名字解析器



名字解析器应用户的请求从名字服务器检索域名
数据库,例如从主机域名检索其IP地址。
从用户看来,域名树数据库是一个单一的信息集
合,名字解析器为用户隐藏了域名数据库信息在
名字服务器间分布的事实。
从名字解析器的观点看,域名数据库是分布在多
个名字服务器的。名字解析器开始至少知道一个
(本域)名字服务器,并将用户的查询提交给此服
务器。
名字解析器(续)
名字解析器是如何找到可以开始检索的名字服务器
的呢?
 若名字解析器运行在 UNIX下,解析器的配置文
件为 /etc/resolv.conf,它可能配置如下:
domain
net.tsinghua.edu.cn ;指定域名
nameserver 127.0.0.1
nameserver
202.112.58.206 ;指定名字服务器
IP地址
nameserver 166.111.8.28
;指定名字服务器IP地址
名字解析器(续)



若名字解析器运行在 Windows下,则在“控制面
板”的“网络”的组件“TCP/IP”的“DNS配置”
中指定本域的名字服务器。
名字解析器进程将待查的域名放在一个DNS查询
报文中,并发给名字服务器,名字服务器返回一
个DNS回答报文,其中包括回答查询的DNS资源
记录。
名字解析器和名字服务器之间的DNS查询报文和
DNS回答报文被封装成UDP数据报发送。即DNS
运行在UDP之上。
域名解析
名字解析器将用户的查询提交给本域的名字服务器,
会出现三种情况:
 被查询的域名在该名字服务器的授权区段内;
 被查询的域名不在该名字服务器的授权区段内,
名字服务器查看它的缓存器,若域名曾解析过,
答案还保存,则返回信息,并加“未授权”标志。
 本域的名字服务器不能回答这个查询,只能由其
它名字服务器来回答。
域名解析(续)
对第三种情况的处理有两种方式:
 递归方式(recursive):由本域名字服务器向其它
名字服务器追踪查询,并将结果返回给解析器。
 反复方式(iterative):本域名字服务器向解析器指
出应查询的另一名字服务器,由解析器追踪查询。
名字服务器至少实现反复方式,递归方式为可选。
对解析器最简单是递归方式,对服务器最简单的
是反复方式。
域名解析(续)
名字服务器如何能找到另一个名字服务器,来回答
自己不能回答的查询呢?
 DNS要求每个名字服务器知道根名字服务器,这
样就可以从根名字服务器开始自上而下进行域名
解析。
 在UNIX中 /etc/named.boot文件中的 cache 语句
指向的文件即名字缓存器的初始文件,它包含根
名字服务器的域名和IP地址。
 因为根区段的重要性,有13个根名字服务器分布
在Internet上,一般查询最近的一个。...