实验4 网际协议(IP)

更新时间:2023-11-01 15:44:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

实验4网际协议(IP)

【实验目的】

1.掌握IP数据报的报文格式 2.掌握IP校验和计算方法 3.掌握子网掩码和路由转发 4.理解特殊IP地址的含义 5.理解IP分片过程

6.理解协议栈对IP协议的处理方法

7.理解IP路由表作用以及IP路由表的管理

【学时分配】

4学时

【实验环境】

该实验采用网络结构二

【实验内容】

一.IP协议简介

IP(网际协议)是TCP/IP协议族中最核心的协议,它负责将数据包从源点交付到终点。所有的TCP、UDP、ICMP及IGMP数据都以IP数据报格式传输。IP协议提供不可靠、无连接的数据报传送服务,即它对数据进行“尽力传输”,只负责将数据包发送到目的主机,不管传输正确与否,不做验证、不发确认、也不保证IP数据包到达顺序,将纠错重传问题交由传输层来解决。

二.IP地址及其表示方法

IP地址是网际协议地址(InternetProtocoladdress)的简称。一个IP地址惟一地标识了Internet上的一台主机。通信时要使用IP地址来指定相应的目的主机。

1.地址空间

地址空间就是协议所使用的地址总数。如果协议使用N位来定义地址,每一位可以有两种不同的值(1或0),那么地址空间就是2N。

IP使用32位地址,这表示地址空间是232,或4294967296(超过40亿个)。从理论上讲,可以有超过40亿个设备连接到Internet。但是,实际的数字要远小于这个数值。

2.IP地址的表示方法

IP地址有三种常用的表示方法:二进制表示方法、点分十进制表示方法和十六进制表示方法。

●二进制表示方法:

在二进制表示方法中,用一个32位的比特序列表示IP地址,为了使这个地址有更好的可读性,通常在每个字节(8位)之间加上一个或多个空格做分隔。例如:

10000001000011100000011000011111 ●点分十进制表示方法:

为了使32位地址更加简洁和更容易阅读,Internet的地址通常写成用小数点把各字节分隔开的形式。每个字节用一个十进制数表示,这个数小于256。例如:

129.14.6.31

●十六进制表示方法:

有时会见到十六进制表示方法的IP地址。每一个十六进制数字等效于4个位。例如: 0x810E061F

3.IP地址的分类

IP地址分成5类:A类,B类,C类,D类和E类。其中A类、B类和C类地址是基本的Internet地址,是用户使用的地址,D类地址用于广播,E类地址为保留地址。

下图描述了IP地址的二进制表示方法的分类:

图3-1在二进制记法中找出IP地址的类别

下图描述了IP地址的十进制表示方法的分类:

图3-2在点分十进制记法中找出IP地址的类别

4.网络号和主机号

在分类编址的A类,B类和C类地址中,IP地址可划分为网络号(net-id)和主机号(host-id)。这两部分长度都是可变的,取决于地址的类型。下图给出了网络号和主机号所占的字节。应该注意的是,D类地址和E类地址不划分网络号和主机号。

图3-3网络号和主机号

5.地址类和地址块

分类编址将每一类地址都划分为固定数目的地址块,并且每一个地址块的大小都是固定的。

A类地址共分为128个地址块,每个地址块都包含有16777216个地址。这表明要使用这类地址的机构一定是一个非常庞大的机构。但是,每个地址块中的地址数比机构的地址需求大的多,所以,在这类地址中,许多地址都被浪费了。

B类地址共划分为16384个地址块,每个地址块都包含有65536个地址。这个地址数往往大于中等规模机构的地址需求,所以,在这类地址中,也有许多地址被浪费了。

C类地址共划分为2097152个地址块,每个地址块都包含有256个地址。这类地址中的地址数对大多数机构来说是不够用的,因此许多机构不太愿意要这类地址。

D类地址只有一个地址块。它用来进行多播。 E类地址只有一个地址块。它是保留地址。 三.特殊的IP地址 1.特殊的IP地址

●网络地址:主机号为全“0”的IP地址不分配给任何主机,而是作为网络本身的标识。

例:主机202.198.151.136所在网络地址为202.198.151.0。

●直接广播地址:主机号为全“1”的IP地址不分配给任何主机,用作广播地址,目的地址为直接广播地址的数据包传递给该网络中的所有节点(能否执行广播,则依赖于支撑的物理网络是否具有广播功能)。

例:202.198.151.136所在网络的广播地址为202.198.151.255。

●有限广播地址:32位为全“1”的IP地址(255.255.255.255)称为有限广播地址,通常由无盘工作站启动时使用,希望从网络IP地址服务器处获得一个IP地址。

●主机本身地址:32位全“0”的IP地址(0.0.0.0)称为主机本身地址。

●回环地址:127.0.0.1称为回环地址,常用于本机上软件测试和本机上网络应用程序之间的通信地址。

2.专用IP地址

随着Internet的飞速发展,IP地址资源已经开始告急,专用IP地址的使用是解决IP地址紧缺的一种方法。原理是定义两类IP地址:

●全局IP地址:用于Internet上的公共主机; ●专用IP地址:仅用于专用网内部的本地主机。

公共主机和本地主机可以共存于同一网络并进行互访,而大多数路由器不转发携带专用IP地址的数据包。本地主机必须经网络地址转换服务器(NAT或代理服务器)才能访问Internet。专用IP地址为:

10.0.0.0-10.255.255.2551个A类网络

172.16.0.0-172.31.255.25516个连续的B类网络 192.168.0.0-192.168.255.255256个连续的C类网络 四.子网划分

为了便于网络的管理、提高系统的可靠性、改进系统性能、克服简单局域网的技术条件限制、通过设置不同访问权限来增强系统的安全保障,人们采用了划分子网的办法将网络进一步划分成独立的组成部分。

现在的主机都要求支持子网编址。不是把IP地址看成由单纯的一个网络号和一个主机号组成,而是把主机号再分成一个子网号和一个主机号。例如,把一个B类网络地址的16位主机号分成8位子网号和8位主机号如下图所示:

图3-4子网划分

这样就允许有254个子网,每个子网可以有254台主机。对A类和B类网络,许多管理员采用自然的划分方法,即以8位为单位划分子网地址和主机号。这样用点分十进制方法表示的IP地址就可以比较容易确定子网号。但是,并不要求A类或B类地址的子网划分都要以字节为分界限。子网对外部路由器来说隐藏了内部网络组织的细节。

主机除了知道IP地址以外,还需要知道IP中有多少位用于子网号,多少位用于主机号。这是通过使用一个称为“子网掩码”的32位值来完成的。其中值为1的位留给网络号和子网号,为0的位留给主机号。

给定IP地址和子网掩码以后,主机就可以确定IP数据包的目的是本子网中的主机、本网络中其它子网中的主机还是其它网络上的主机。

如果知道本机的IP地址,那么就知道它是否为A类、B类或C类地址(从IP地址的高位可以得知),也就知道网络号和子网号之间的分界线。而根据子网掩码就可知道子网号与主机号之间的分界线。

子网掩码除了可以如IP地址一样用“点分十进制”方式表示外,还可以在IP地址后用一个斜线(/)后面写明子网掩码的位数的方法来表示。如:192.168.1.25/24表示IP地址192.168.1.25的掩码为255.255.255.0。

五.IP报文格式

IP数据报格式如下图所示,它是由IP首部与数据组成的。IP首部长度通常为20字节。如果含有选项字段,IP首部长度将会大于20字节,但不会超过60字节。

图3-5IP报文格式

在IP首部中各个字段的意义如下:

●版本号:这个字段定义了IP的版本。目前主流的是版本4(IPv4),但它正逐渐地被版本6(IPv6)所替代。

●首部长度:由于IP选项字段的存在,所以IP首部长度是可变的。该字段用4位来定义首部长度。将该值乘4可得到用字节表示的长度,所以IP首部长度为20~60个字节。

●区分服务:该字段以前叫做服务类型(在RFC791中定义),是由3位优先域、4位服务类型域和1位未用位(该位必须置为0)组成,其中4位服务类型分别代表:最小时延、最大吞吐量、最高可靠性和最小费用。该字段在RFC2474中被重新定义,在新的定义中将该字段命名为区分服务,其中包含一个6位的区分服务码点(DSCP)字段和一个2位的未用位(CU)字段。如下图所示:

图3-6RFC2474定义的区分服务字段

前6位的区分服务码点的值用来映射一个底层的服务,它决定了每一跳行为。在RFC3168中,将区分服务字段中的未用位字段定义为显示拥塞通告(ECN)字段,ECN字段包括2个子字段,分别为:ECT字段和CE字段,如下图所示:

图3-7RFC3168定义的区分服务字段

ECN字段用于指定发送数据的主机是否支持拥塞通告以及指示网络中是否有拥塞发生。ECN通过两个子字段的不同值组合来做到这一点:

00:发送主机不支持ECN。 01或10:发送主机支持ECN。 11:路由器正在经历拥塞。

●总长度:该字段以字节为单位定义IP数据报的总长度(首部加上数据)。要得到IP上层数据的长度,只需从总长度中减去首部长度即可。

●标识:每一个IP数据包在发送时被给定特有的标识值。如果数据包必须被分割成碎片以适应支持小型数据包的网络,那么每一个碎片中都设置相同的标识号码。

●标志:标志由3位组成,第1位保留;第2位为不分片标志,表示此数据包不可以被分片;第3位为更多分片标志,表示在分片包之后还有分片,即此包不是最后分片。

●偏移量:如果数据包是一个分片包,该域指明了当前分片包在与其它分片包被重新组装成一个单独数据包时,应该位于数据包的什么位置。该域的值以8字节为单位。

●生存时间:该字段表明数据包保存的生存时间,单位为秒,在实际的应用中,生存时间是按照数据包经过路由器的跳数计算的。通常生存时间的值是32、64、128。

●高层协议类型:该字段定义了使用IP层服务的较高层协议。一个IP数据报能封装来自诸如TCP、UDP、ICMP和IGMP等较高层协议的数据。

●首部校验和:IP首部校验和只对首部内容进行错误检测,并不包括数据包的其它内容。校验和采用16位反码求和的算法。

●源IP地址:该字段定义了源主机的IP地址。在IP数据包从源主机传送到目的主机期间,该字段保持不变。

●目的IP地址:该字段定义了目的主机的IP地址。在IP数据报从源主机传送到目的主机期间该字段保持不变。

●IP选项:这个字段是可选项。它们通常用于网络测试和调试。虽然可选项不是IP头部所必需的部分,但要求IP软件能够处理它们。目前,这些选项定义如下:

(1)安全和处理限制(用于军事领域);

(2)记录路径(让每个路由器记下它的IP地址);

(3)时间戳(让每个路由器都记下它的IP地址和时间);

(4)宽松的源站选路(为数据报指定一系列必须经过的IP地址);

(5)严格的源站选路(与宽松的源站选路类似,但是要求只能经过指定的这些地址,不能经过其它的地址)。

六.IP封装

IP数据报直接封装到数据链路层帧中,其封装方法如下图所示:

本文来源:https://www.bwwdw.com/article/0p22.html

Top