IP和ICMP协议实验报告
网际协议(IP)实验报告
何晓晓201126630112计算机实验班1101
一、 实验目的
1. 掌握IP数据报的报文格式
2. 掌握IP校验和计算方法
3. 掌握子网掩码和路由转发
4.理解特殊IP地址的含义
二、 实验原理
(一) IP协议简介
IP(网际协议)是TCP/IP协议族中最核心的协议它负责将数据包
从源点交付到终点。所有的TCP、 UDP、 ICMP及IGMP数据都以IP数据报格式传输。 IP协议提供不可靠、无连接的数据报传送服务 即它对数据进行“尽力传输” 只负责将数据包发送到目的主机不管传输正确与否不做验证、不发确认、也不保证IP数据包到达顺序将纠错重传问题交由传输层来解决。
(二) IP地址及其表示方法
1.地址空间
2. IP地址的表示方法
3. IP地址的分类
4. 网络号和主机号
5.地址类和地址块
IP地址是网际协议地址(Internet Protocol address)的简称。一个IP地址惟一地标识了Internet上的一台主机。通信时要使用IP地址来指定相应的目的主机。
1.地址空间
地址空间就是协议所使用的地址总数。如果协议使用N位来定义地址
N每一位可以有两种不同的值(1或0) 那么地址空间就是2。
32 IP使用32位地址这表示地址空间是2或4294967296(超过40亿个) 。从理论上讲可以有超过40亿个设备连接到Internet。但是实际的数字要远小于这个数值。
2. IP地址的表示方法
IP地址有三种常用的表示方法:二进制表示方法、点分十进制表示方法和十六进制表示方法。
?二进制表示方法:
在二进制表示方法中用一个32位的比特序列表示IP地址为了使这个地址有更好的可读性通常在每个字节(8位)之间加上一个或多个空格做分隔。例如:
10000001 00001110 00000110 00011111
?点分十进制表示方法:
为了使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类地址为保留地址。
:
图3-1在二进制记法中找出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地址
2.专用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.255 1个A类网络
172. 16.0.0-172.31.255.255 16个连续的B类网络
192. 168.0.0-192. 168.255.255 256个连续的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-5 IP报文格式
在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-6 RFC2474定义的区分服务字段
前6位的区分服务码点的值用来映射一个底层的服务它决定了每一跳行为。在RFC3168中将区分服务字段中的未用位字段定义为显示拥塞通告(ECN)字段ECN字段包括2个子字段分别为:ECT字段和CE字段如下图所示:
图3-7 RFC3168定义的区分服务字段
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封装
帧中其封装方法如下图所示:
图3-8 IP封装
(七) IP数据报分片
1.最大传送单元(MTU)
RackNerd 商家给的感觉就是一直蹭节日热点,然后时不时通过修改配置结构不断的提供低价年付的VPS主机,不过他们家还是在做事的,这么两年多的发展,居然已经有新增至十几个数据中心,而且产品线发展也是比较丰富。比如也有独立服务器业务,不过在他们轮番的低价年付VPS主机活动下,他们的服务器估摸着销路不是太好的。这里,今天有看到RackNerd商家的独立服务器业务有促销。这次提供美国多个机房的高配独立...
ProfitServer已开启了黑色星期五的促销活动,一直到本月底,商家新加坡、荷兰、德国和西班牙机房VPS直接5折,无码直购最低每月2.88美元起,不限制流量,提供IPv4+IPv6。这是一家始于2003年的俄罗斯主机商,提供虚拟主机、VPS、独立服务器、SSL证书、域名等产品,可选数据中心包括俄罗斯、法国、荷兰、美国、新加坡、拉脱维亚、捷克、保加利亚等多个国家和地区。我们随便以一个数据中心为例...
iON Cloud怎么样?iON Cloud是Krypt旗下的云服务器品牌,成立于2019年,是美国老牌机房(1998~)krypt旗下的VPS云服务器品牌,主打国外VPS云服务器业务,均采用KVM架构,整体性能配置较高,云服务器产品质量靠谱,在线率高,国内直连线路,适合建站等用途,支付宝、微信付款购买。支持Windows server 2012、2016、2019中英文版本以及主流Linux发行...