首页 百科知识 协议与地址

协议与地址

时间:2024-10-19 百科知识 版权反馈
【摘要】:在Internet中,数据报传送有直接传送和间接传送两类。IP协议提供了一种Internet通用的地址格式,用于屏蔽各种物理网络的地址差异,即IP地址。由于现有Internet上多数路由器还在使用4版本IP做路由,要在短期内实现4版本到6版本的转变是不现实的。目前采用的IP地址的编址方案是IPv4版本。

任务三 IP协议与地址

1.IP协议

1)IP协议的特点

(1)IP是一种不可靠的、面向无连接的数据报传输协议。无连接意味着IP并不维护IP数据报发送后的任何状态信息,它不能保证数据报的可靠投递,只是尽力而为,IP本身没有能力证实数据报是否被正确接收。数据报可能在线路延迟、路由错误或数据报分片与重组等过程中受损,但IP不检测这些错误,当发生错误时就丢弃该数据报。对于传输可靠性要求高的应用,网络层采用IP,传输层就采用TCP。

(2)IP协议对传输层屏蔽了低层物理网络实现的细节。在互联的网络中,可能是广域网,也可能是城域网或局域网,它们的物理层、介质访问控制子层的协议可能是不同的,也就是说这些物理网络协议在帧格式、地址格式及差错恢复机制等细节方面有很大差异。TCP/ IP使用IP数据报来统一不同的物理网络的帧,这样就可以屏蔽低层物理网络在帧格式与地址上的差异,使网络的互联和通信变得更易于实现。

(3)IP协议可以实现信息的跨网传输。在Internet中,数据报传送有直接传送和间接传送两类。若数据报的源主机和目标主机在同一网络内,则采用直接传送方式。若不在同一网络内,则通过路由器的转发进行间接传递,这样就可以实现数据报的跨网传输。

(4)IP协议使用统一的、全局的地址描述法。IP协议提供了一种Internet通用的地址格式,用于屏蔽各种物理网络的地址差异,即IP地址。IP地址由IP管理机构进行统一管理和分配,保证互联网上运行的设备不会产生地址冲突,保证信息能正常跨网传输。

2)IPv4

当前使用的IPv4协议是20世纪70年代末期设计和提出的,尽管取得了巨大的成功,但随着Internet规模和网络技术的发展,IPv4逐渐暴露出地址数量不足、报头过于复杂、不易扩充、缺少安全与保密机制等不足和局域性,其中以地址不能满足分配的问题最为突出。

早在1993年,研究人员即宣布现有的IPv4版本的地址将在20世纪末被全部分配完毕,但直至今天我们仍然可以通过正常途径申请获得部分IP地址(以C类地址为主)。这是因为当研究人员发现这个问题的同时,也提出了一些办法来尽可能地延缓这件事情的发生,这些措施主要包括:①采用无类域间路由(CIDR),使IP地址的分配更加合理;②采用网络地址转化(NAT)技术,节省IP地址的使用;③采用具有更大地址空间的IPv6协议地址。虽然前两种措施已被广泛采用,但却不能从根本上解决IP地址将要耗尽的问题。因此,人们期盼着IPv6的早日普及,只有它才是解决问题的根本办法。

3)IPv6

IPv6和IPv4一样,仍是无连接的传输协议,与IPv4地址不兼容,但却兼容网络层之上的协议。其主要特点如下。

(1)拥有更大地址空间。IPv6将地址长度从4版本的32位增加到128位,同时还对IP主机可能获得的不同类型地址做了一些调整。目前全球联网设备已分配的地址仅占IPv6地址空间中极小的一部分,IPv6有足够的地址空间余量供未来的发展使用,这就彻底解决了IP地址不够用的问题。

(2)简化了报头格式。IPv6使用固定长度为40字节的报头格式,称为基本头部,只包含8个字段,并取消了校验功能,这就加快了路由的处理速度。

(3)改进了扩展选项。IPv6定义了许多可选的扩展头部,把4版本的选项功能放在可选的扩展头部中,不仅可提供比4版本更多的功能,还可以提高路由效率。

(4)支持网络资源的预分配。支持主机面向实时的视频传输等带宽和延时较高的应用。

(5)允许协议扩充。IPv6允许协议增加新的内容,以适应未来技术的发展。

(6)加入身份验证和保密机制。IPv6全面支持IPSec(IP Security),使用了两种安全性扩展,IP身份验证头信息(AH)和IP封装安全性程序(ESP)。

4)IPv4到IPv6的过渡

由于现有Internet上多数路由器还在使用4版本IP做路由,要在短期内实现4版本到6版本的转变是不现实的。因此,IPv4到IPv6的过渡只能采用循序渐进的方式,同时还必须能向后兼容,能路由和转发IPv4的分组。目前,常用双协议栈技术和隧道技术来实现过渡策略。

双协议栈技术是指在完全过渡到IPv6之前,使一部分主机和路由器同时安装IPv4和IPv6两个协议。同时,主机和路由器必须同时具有两种IP地址,即一个IPv4地址和一个IPv6地址。这种装有两种协议的主机和路由器既可以使用IPv4通信,也能使用IPv6通信。但是,双协议栈主机仍需使用域名系统DNS来确定目标主机的地址类型。

隧道技术是在IPv6的数据报进入IPv4网络前,把IPv6数据报作为数据部分整个封装成IPv4数据报,就像把信装进信封一样,然后IPv6数据报就可以在IPv4的网络中进行传输了。当IPv4数据报离开IPv4网络时,再将原来的IPv6数据报交给主机的IPv6协议栈处理。这种方法就像在IPv4网络中开了一个专门传输IPv6数据报的隧道一样,所以叫隧道技术。

由于IP协议是网络层的核心协议,所以它的转变会比较缓慢。在未来的时间里,IPv4 和IPv6将同时并存、相互作用一段时间,但从IPv4过渡到IPv6已成为网络发展的必由之路,IPv6的发展将使用户感受到新技术带来的全新服务,并在下一代网络中发挥巨大作用。

2.IPv4地址

1)IP地址的组成与表示

IP地址是网络上任一设备用来区别于其他设备的标志,不可争用。目前采用的IP地址的编址方案是IPv4版本。根据TCP/IP的规定,IP地址用4个字节共32位二进制数表示,由网络号和主机号两部分组成,其中网络号用来标志互联网中的一个特定网络;主机号用来标志该网络中主机的一个特定连接,如图1-27所示。

img28

图1-27 IP地址的组成

其表示方法主要有点分十进制法和后缀标记法两种。

(1)点分十进制法。将每个字节的二进制数转化为0~255之间的十进制数,各字节之间采用“.”分隔。例如:11000000101010000000111100001010可表示为192.168.15.10。

(2)后缀标记法。在IP地址后加“/”,“/”后的数字表示网络号位数。例如:129.16.7.31/16,其中16表示网络号占16位。

2)IP地址的分类

为适应不同大小的网络,Internet定义了5种类型的IP地址,即A、B、C、D、E类,使用较多的是A、B、C类,D类用于组播,E类为保留使用的地址。5类IP地址的构成情况如图1-28所示。

img29

图1-28 IP地址的构成情况

(1)A类地址。用于支持特大型网络,第一个字节的第一位为“0”,其余7位表示网络号;第二、三、四个字节共计24个比特位,用于表示主机号,如图1-29所示。

img30

图1-29 A类地址构成

通过网络号和主机号的位数,可以知道A类地址的网络数为27(128)个,每个网络包含的主机数为224(16 777 216)个,A类地址的范围是0.0.0.0~127.255.255.255,如图1-30所示。

img31

图1-30 A类地址范围

由于网络号0和127被保留用于特殊目的,所以A类地址的有效网络数为27-2(126)个,其范围为1~126。另外,主机号全为0和全为1也有特殊作用,所以每个网络号包含的主机数目应该是224-2(16 777 214)个。因此,一台主机能够使用的A类地址的有效范围是1.0.0.1~126.255.255.254。

(2)B类地址。用于支持大中型网络,前两位为“10”,剩下的6位和第二个字节的8位共14个比特位用来表示网络号;第三、四个字节共计16个比特位,用于表示主机号,如图1-31所示。

img32

图1-31 B类地址构成

B类地址的网络数为214个,每个网络包含的主机数为216个(实际有效的主机数是216-2),由于主机号全为0和全为1有特殊作用,所以B类地址的有效范围是128.0.0.1~191.255.255.254。

(3)C类地址。用于支持大量的小型网络,前三位为“110”,剩下的5位和第二、三个字节的16位共21个比特位用来表示网络号;第四个字节共计8个比特位,用于表示主机号,如图1-32所示。

C类地址的网络数为221个,每个网络包含的主机数为28个(实际有效的主机数是28-2),由于主机号全为0和全为1也有特殊作用,所以C类地址的有效范围是192.0.0.1~223.255.255.254。

img33

图1-32 C类地址构成

(4)D类地址。用于支持组播,所谓组播就是能同时把数据发送给一组主机,只有那些已经登记可以接收组播地址的主机才能接收组播的数据包。D类地址第一个字节前四位为“1110”。它是一类专门用途的地址,并不指向特定网络。D类地址的范围是224.0.0.1~239.255.255.254。

(5)E类地址。第一个字节前四位为“1111”。E类地址是为将来预留的,同时也用于实验目的,但它们不能被分配给主机。E类地址的范围是240.0.0.1~255.255.255.254。

要判断一个IP地址是属于哪一类IP,只要看第一个字节二进制数转化为十进制数后的数值即可。

3)特殊的IP地址

(1)网络地址(Network Address)。IP地址方案规定,网络地址中包含一个有效的网络号和一个全“0”的主机号。

(2)广播地址(Broadcasting Address)。当一个设备向网络上所有的设备发送数据时,就产生了广播。为了使网络上所有设备能够注意到这样一个广播,必须使用一个可进行识别和侦听的IP地址。IP地址方案规定,主机号为全“1”的IP地址是保留给广播使用的。其中又分为包含一个有效的网络号和一个全“1”的主机号的直接广播(Directed Broadcasting)和32位全为“1”的全网广播(Limited Broadcasting)。

(3)回送地址(Loopback Address)。任何一个以127开头的IP地址(127.0.0.1~127.255.255.255)都是回送地址,也叫回环地址。用于网络软件测试以及本地主机进程间通信。在每个主机上对应于IP地址127.0.0.1都有个接口,称为回送接口。IP地址方案规定,无论什么程序,一旦使用回送地址发送数据,协议软件不进行任何网络传输,立即将其返回。

(4)“零”地址(Zero Address)。网络号为“0”的IP地址是指本网络上的某台主机。而32位全为“0”的地址(0.0.0.0),则可以让任何主机用来表示自己。

(5)特殊用途地址。特殊测试用途的IP地址,如169.254.X.X。如果你的主机使用了动态主机设置协议(DHCP)功能自动获得一个IP地址,那么当你的DHCP服务器发生故障,或响应时间太长而超出了一个系统规定的时间,系统就会为你分配这样一个地址。也就是说它是用于补充DHCP服务器功能停止的缺陷而专门设计的一种IP地址。

(6)特别保留地址,又称私有地址。它是IANA(Internet Assigned Numbers Authority)为了满足像企业网、校园网、办公室、网吧等内部网络使用TCP/IP协议的需要,将A、B、C类地址中的一部分保留出来,作为私有用途的IP地址空间。这样既可节省IP地址,又可以隐藏内部网络的结构,提高内部网络的安全性。当内部网络使用这类地址接入Internet时,它们不会与Internet相连的其他使用相同IP地址的内部网络发生地址冲突,原因是使用了地址转换技术(NAT)将私有地址转换成合法的公用地址,见表1-1。

表1-1 NAT的A、B、C类IP地址范围

img34

(7)组播地址。从224.0.0.0到239.255.255.255都是组播地址。组播地址多用于一些特定的程序,其中224.0.0.1特指所有主机,224.0.0.2特指所有路由器。

4)子网掩码

与IP地址一样,子网掩码也是由32位二进制数组成,子网掩码不能单独存在,它必须结合IP地址一起使用。

子网掩码中用1的位数表示IP地址中网络号部分和子网号部分,用0的位数表示IP地址中主机号部分。若没有进行子网划分,则默认的子网掩码数值在各类IP地址中的情况如表1-2所示。

表1-2 各类IP地址中子网掩码数值

img35

子网掩码的主要功能如下。

(1)用来将一个网络划分成多个子网。通过子网的划分,使我们对网络的有效管理及范围得到了精确和缩小。划分后,我们得到了更多的网络,所以说管理精确了;但同时每个网络内可支持的主机数量却相对减少了,所以说范围缩小了。

(2)用来区分一个IP地址内的网络号和主机号所占的位数,也就是通常我们判断一个IP地址属于哪个网络时所用的基本理论。其方法是将IP地址和对应的子网掩码做二进制“与”运算,得到的网络号即为该IP地址所属的网络或子网。例如:判断主机地址192.9.168.210/28处于哪一个网络或子网,如表1-3所示。

表1-3 判断IP地址属哪个网络示例

img36

5)IP地址的获取方法

一台使用TCP/IP协议进行网络连接操作的主机,必须在使用协议之前获取IP配置,即每台主机均需要一个“IP地址”、一个“子网掩码”和一个“默认网关”。IP配置内容的获取方法主要有以下两种。

(1)静态指定。它是采用手工配置IP地址的方法,使每台主机拥有一个固定不变的IP地址。

(2)动态获得。它是采用自动获取IP地址的方法,在打开计算机时,由DHCP服务器临时分配一个IP地址,主机通过这种方法所获取的IP地址不是固定的。

3.IPv6地址

IPv6地址的长度为128位,即有2128个IP地址,其地址空间是IPv4的296倍,足以保证全世界每个人都拥有一个或多个IP地址。IPv6地址有3种表示方法:冒号十六进制表示法、零压缩表示法和内嵌IPv4的IPv6表示法。

1)冒号十六进制表示法

冒号十六进制表示法是IPv6首选的、书写形式最长的、最完整的表示方法。这种方法用冒号将128位分割成8个16位的段,每段被转换成一个4位十六进制数,并用冒号隔开。即有8段,每段4位十六进制数,用冒号分割。例如:

2254:cade:23ef:cdae:ad54:cda3:3340:bacd

2)零压缩表示法

零压缩表示法是当IPv6地址中有0值时的表示方法,具体有以下3种情况。

(1)前导压缩法。当IPv6地址中存在一个或多个前导0的16位十六进制字段时,可以使用16位字段的前导压缩法。用这种方法表示IPv6地址时,每个字段的前导0可以简单地去除,以缩短IPv6地址的书写长度。但是,如果16位字段的每个十六进制数都是0,则至少要保留一个0。例如:

0000:0000:0000:0000:0000:0000:0000:0001,可表示为0:0:0:0:0:0:0:1

(2)双冒号法。若在一个以冒号十六进制的表示法表示的IPv6地址中有多个连续的字段的值都是0,这些0可以简记为“::”,表示有多组16位零。这种零压缩法又称双冒号法。“::”只能在一个地址中出现一次,可用于压缩一个地址中前导、末尾或相邻的16位零。例如:

ace5:1:0:0:0:0:0:36cd,可以表示为ace5:1::36cd

(3)两种方法结合。将上述两种零压缩表示法相结合,即同时压缩连续的0的16位字段和压缩16位字段中的前导0,可以缩短IPv6地址的书写长度。例如:

0000:0000:0000:0000:0000:0000:0000:0001,可表示为::1

3)内嵌IPv4的IPv6表示法

这种地址表示法由两部分组成:6个高16位的十六进制数字段和4个低8位的二进制字段(即IPv4地址)。其中,6个高位字段之间用冒号分隔,后面4个低位字段(4位十进制数)之间用点号分隔,也可以将后面32位的IPv4地址用4位十六进制数字表示。例如:

0000:0000:0000:0000:0000:0000:211.98.168.32,也可表示为0:0:0:0:0:0:211.98.168.32或::211.98.168.32

4.域名地址

1)域名概念

在网络上辨别一台计算机的方式是利用IP地址。但是一组IP地址数字很不容易记忆,因此,需要为网上的服务器取一个有意义又容易记忆的名字,这个名字就是域名(Domain Name)。

例如百度网站,一般使用者在浏览这个网站时,都会输入www.baidu.com,而很少有人会记住这台服务器的IP地址是多少,就如同我们在称呼朋友时,一定是叫他的名字,而没有人会去叫他的身份证号码。但由于在Internet上真正区分主机的还是IP地址,所以当使用者输入域名后,浏览器必须先去一台有域名和IP地址对应关系的数据库主机中查询这台主机的IP地址。而这台被查询的主机称为域名服务器(Domain Name Server),由域名地址转换到IP地址的过程称为域名解析服务(Domain Name Resolution Service)。这种由客户端查询到服务器端解析所构成的系统称为域名系统。

2)域名结构

域名结构采用层次化的树状结构。因看似一棵倒挂的树,也称域树结构。其结构分为不同级别,包括根域、顶级域、一级子域、二级子域等,如图1-33所示。

img37

图1-33 域名结构

其中,根节点仅代表域名命名空间的根,不代表任何具体的域,称为根域(Root)。顶级域的划分采用了两种模式,即组织模式和地理模式。组织模式最初只有6个,分别是com(商业机构)、edu(教育单位),gov(政府部门)、mil(军事单位)、net(提供网络服务的系统) 和org(非商业机构的组织),后来又增加了一个为国际组织所使用的int;地理模式是指代表不同国家或地区的顶级域,如cn表示中国、us表示美国、uk表示英国、jp表示日本、hk代表中国香港等。

顶级域的管理权被分派给指定的管理机构,各管理机构对其管理的域可继续进行划分,即划分子域并将子域的管理权授予其下属的管理机构,如此层层细分,就形成了层次化的域名结构。

Internet的域名由因特网网络协会负责网络地址分配的委员会进行登记和管理。全世界现有3个大的网络信息中心:InterNIC负责美国及其他地区,RIPENIC负责欧洲地区,APNIC负责亚太地区。中国互联网络信息中心(China Internet Network Information Center,CNNIC)负责管理我国顶级域名cn,为我国的互联网服务提供商(ISP)和网络用户提供IP地址、自治系统AS号码和中文域名的分配管理服务。

一台主机的名字由它所属各级域的域名和分配给该主机的名字共同构成。书写的时候,按照由小到大的顺序,顶级域名放在最右边,分配给主机的名字放在最左边,每级名字的长度最多63个字符,各级名字之间用圆点“.”分隔,全名总长则不能超过255个字符。

3)域名解析

域名解析是指将域名转换成对应的IP地址的过程,它主要由DNS服务器来完成。DNS使用了分布式的域名数据库,以层次型结构分布在世界各地,每台DNS服务器只存储了本域名下所属各域的DNS数据。当客户端需要将某主机域名转换成IP地址时,询问本地DNS,当数据库中有该查询域名记录时,DNS会直接做出回答。如果没有,本地DNS会向根DNS服务器发出查询请求。域名解析采用自顶向下的查询方法,从根服务器开始直到最底层的服务器。域名解析的具体实现可采用递归解析和迭代解析两种方式。

(1)递归解析。本地DNS服务器会向根DNS服务器发出查询请求,根DNS服务器向该域之下一层DNS服务器查询,该层DNS服务器再向其下层DNS服务器查询,依次逐层查询,直到获得客户端所要查询的结果为止。将结果逐次向上层DNS服务器回传,最后由根DNS服务返回给本地DNS服务器,再返回给客户端。一次性完成全部域名到IP地址变换。

(2)迭代解析。本地DNS会向根DNS服务器发出查询请求,上层DNS服务器会将该域名之下一层授权服务器的地址告知本地DNS服务器。本地DNS服务器然后向那台DNS服务器查询,远方服务器回应查询。若该回应并非最后一层的答案,则继续往下一层查询,直到获得客户端所要查询的结果为止,再将结果回应给客户端。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈