《计算机网络与因特网》实验指导书.docx
- 文档编号:10866063
- 上传时间:2023-02-23
- 格式:DOCX
- 页数:49
- 大小:1.58MB
《计算机网络与因特网》实验指导书.docx
《《计算机网络与因特网》实验指导书.docx》由会员分享,可在线阅读,更多相关《《计算机网络与因特网》实验指导书.docx(49页珍藏版)》请在冰豆网上搜索。
《计算机网络与因特网》实验指导书
《计算机网络与因特网》
实验指导书
长江师范学院
计算机实验教学中心
《网络协议分析》实验大纲
一、实验目的
《网络协议分析》是计算机相关专业的主要基础课程之一。
通过该课程的学习力求使学生了解计算机网络通信协议领域内研究与发展的现状与动态。
该课程主要是在学习“计算机网络”课程的基础上,就网络协议的基础理论、体系结构、性能特性、技术方法和所解决的问题等方面进行讲解。
要求学生通过本课程学习,具备网络协议的基本知识,了解各个协议的工作流程及所在层次,能对网络中出现的问题进行分析。
同时也希望在本课程的学习过程中,进一步培养学生的逻辑思维能力及用计算机处理问题的思维方法,为后续课程的学习打下良好的基础。
因此本实验环节目的如下:
1.通过上机实验,加深对每种协议的报文格式的理解,增强对常见网络问题的分析和解决能力。
2.通过分析相关数据包的格式,加深对网络协议分层思想的理解。
3.要发挥自主学习的能力,充分利用时间,安排好实验的时间计划,并在实验过程中不断检测自己的计划完成情况,及时的向教师汇报。
二、适应专业
计算机科学与技术,网络与信息安全
三、实验内容及学时安排
实验一点到点协议PPP2学时
实验二地址转换协议ARP2学时
实验三网际协议IP2学时
实验四Internet控制报文协议ICMP2学时
实验五用户数据报协议UDP2学时
实验六传输控制协议TCP2学时
实验七域名服务协议DNS2学时
实验八简单网络管理协议SNMP2学时
实验一点到点协议PPP
实验目的
1.理解PPP协议的工作原理及作用。
2.练习PPP,CHAP的配置。
3.验证PPP,CHAP的工作原理。
实验环境
1.安装Windows操作系统的PC计算机。
2.BosonNetSim模拟仿真软件。
实验原理
点对点协议(Point-to-PointProtocol,PPP)是一个工作在数据链路层的广域网协议。
它为路由器到路由器、主机到网络之间使用串行接口、通过同步链路或异步链路进行连接提供了OSI第二层的服务。
例如利用Modem进行拨号上网就是使用PPP在异步链路上实现连接的功能(同步传输与异步传输是串行传输的两种不同方式。
在路由器上,通常既提供同步传输的串行口如Serial接口,也提供异步传输口如AUX口与Console口)。
PPP由因特网工程任务组(InternetEngeineeringTaskForce,IETF)开发,目前已被广泛使用并成为国际标准。
PPP作为第二层的协议,在物理上可使用各种不同的传输介质,包括双绞线、光纤及无线传输介质;对网络层协议的支持包括多种不同的主流协议,如IP和IPX等。
从这个意义上讲,有时可以将PPP视为TCP/IP协议族的一部分。
PPP的基本组件除了用于点对点链路的数据帧封装格式外,还包括了LCP与NCP协议。
链路控制协议(LinkControlProtocol,LCP)用于数据链路连接的建立、配置与测试,网络控制协议(NetworkControlProtocol,NCP)则是一组用于为不同的网络层协议建立支持和配置的协议,包括IPCP,IPXCP和BCP等。
PPP的连接一般要经历链路建立、链路质量协商、网络层协议选择和链路拆除4个阶段。
在链路建立阶段主要是通过发送LCP帧来对链路进行相关的配置,包括数据的最大传输单元、是否采用PPP的压缩、PPP的认证方式等;链路质量协商阶段作为一个可选的阶段主要用于对链路质量进行测试,以确定其能否为上层所选定的网络协议提供足够的支持。
另外,若连接双方要求采用安全认证,则也在该阶段按所选定的认证方式进行相应的身份认证;在网络层协议这个阶段通过发送NCP包来选择网络层协议并进行相应的配置,不同的网络层协议要分别进行配置;在第三个阶段完成后,即可在所建立的PPP链路上进行数据传输。
任何时候只要用户请求或者由于链路故障,PPP的连接都会被终止。
尽管PPP的验证是一个可选项,但一旦选择了采用身份认证,则其必在网络协议分阶段之前进行。
有两种类型的PPP验证,即口令认证协议(PasswordAuthenticationProtocol,PAP)与基于挑战的握手认证协议(ChallengeHandshakeAuthenticationProtocol,CHAP)方式。
PAP采用的是两次握手协议,远程节点提供用户名和密码,本地节点提供身份验证的确认或拒绝;用户名与密码对由远程网路节点不断地在链路上发送,直到验证被确认或被终结。
密码在传输过程中采用的是明文方式,而且发送登录请求的时间和频率完全由远程节点控制,所以这种验证方式简单但易受到攻击。
CHAP所使用的是3次握手的验证方式,本地节点提供一个用于身份验证的挑战值,远程节点根据所收到的挑战值计算出一个回应值发送回本地节点,若该值与本地节点的计算结果一致,则远程节点被验证通过。
显然一个没有获得挑战值的远程节点是不可能尝试登录并建立连接的,也就是说CHAP是由本地控制着登录的时间与频率,并且由于每次所发送的挑战值都是一个不可预测的随机变量,所以CHAP较之PAP更加安全有效。
因此在通常情况下,更多采用的是CHAP验证方式。
实验步骤
1、绘制实验拓扑图
利用BosonNetworkDesigner绘制实验网络拓扑图,绘制好的拓扑图如图1-1所示。
图1-1实验连接图
本实验选择两台4500型号的路由器。
同时,采用Serial串行方式连接两台路由器,并选择点到点类型。
其中DCE端可以任意选择,不过在实验配置的时候,对于DCE端路由器的接口(Serial0/0)需要配置时钟信号(这里用R1的Serial0/0作为DCE端)。
2、配置路由器基本参数
绘制完实验拓扑图以后,可以将其保存并装入BosonNetSim中开始实验配置。
配置时点击BosonNetSim程序中工具栏按钮“eRouters”,选择“R1”并按下面的过程进行路由器1的基本参数配置:
Router>enable
Router#conft
Router(config)#hostR1
R1(config)#enablesecretc1
R1(config)#linevty04
R1(config-line)#passwordc2
R1(config-line)#interfaceserial0/0
R1(config-if)#ipaddress192.168.0.1255.255.255.0
R1(config-if)#clockrate64000
R1(config-if)#noshutdown
R1(config-if)#end
R1#copyrunning-configstartup-config
点击工具栏按钮“eRouters”,选择“R2”并按下面的过程进行路由器2的基本参数配置:
Router>enable
Router#conft
Router(config)#hostR2
R2(config)#enablesecretc1
R2(config)#linevty04
R2(config-line)#passwordc2
R2(config-line)#interfaceserial0/0
R2(config-if)#ipaddress192.168.0.2255.255.255.0
R2(config-if)#noshutdown
R2(config-if)#end
R2#copyrunning-configstartup-config
3、配置、测试PPP
选择路由器R1并配置PPP,如下所示:
R1#conft
R1(config)#interfaceserial0/0
R1(config-if)#encapsulationppp
R1(config-if)#end
R1#copyrunning-configstartup-config
选择路由器R2并配置PPP,如下所示:
R2#conft
R2(config)#interfaceserial0/0
R2(config-if)#encapsulationppp
R2(config-if)#end
R2#copyrunning-configstartup-config
选择路由器R1,按照下面的步骤测试并观察PPP诊断输出:
R1#ping192.168.0.2
R1#debugpppnegotiation
R1#conft
R1(config)#interfaceserial0/0
R1(config-if)#shutdown
R1(config-if)#noshutdown
R1(config-if)#end
R1#undebugall
4、配置、测试CHAP
选择路由器R1并配置CHAP,如下所示:
R1#conft
R1(config)#usernameR2passwordsamepwd
R1(config)#interfaceserial0/0
R1(config-if)#pppauthenticationchap
R1(config-if)#end
R1#copyrunning-configstartup-config
选择路由器R2并配置CHAP,如下所示:
R2#conft
R2(config)#usernameR1passwordsamepwd
R2(config)#interfaceserial0/0
R2(config-if)#pppauthenticationchap
R2(config-if)#end
R2#copyrunning-configstartup-config
选择路由器R1,按照下面的步骤测试并观察CHAP配置:
R1#showipinterfacebrief
R1#ping192.168.0.2
思考题
1.两台路由器上所使用的串行口分别是什么?
2.两台路由器的IP地址及子网掩码分别是多少?
3.哪台路由器上的串行接口为DCE(DataCommunicationsEquipment)端?
使用R1#showcont
4.本串行链路所使用的时钟频率是多少?
5.在CHAP验证中,对所设置的用户名和密码是否存在什么特殊要求?
请结合实验过程给出你的结论。
实验二地址转换协议ARP
实验目的
1.能够使用ARP命令对ARP选路表(下文简称ARP表)进行简单操作。
2.学会使用WIRESHARK捕获ARP数据包并分析其格式。
3.深入理解ARP(地址解析协议)的工作原理和重要作用。
实验环境
1.安装Windows2000/2003Server/XP操作系统的PC计算机一台。
2.每台PC具有一块以太网卡,通过双绞线与局域网相连。
2.每台PC运行网络协议分析软件WIRESHARK。
实验原理
ARP协议是“AddressResolutionProtocol”的缩写。
在局域网中,网络中实际传输的是“帧”,帧里面是有目标主机的MAC地址的。
在以太网中,一个主机要和另一个主机进行直接通信,必须要知道目标主机的MAC地址。
但这个目标MAC地址是如何获得的呢?
它就是通过地址解析协议获得的。
所谓“地址解析”就是主机在发送帧前将目标IP地址转换成目标MAC地址的过程。
ARP协议的基本功能就是通过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。
在DOS提示符下使用arp-a命令就可以查看本地的ARP缓存内容,所以,执行一个本地的PING命令后,ARP缓存就会存在一个目的IP的记录了。
当然,如果你的数据包是发送到不同网段的目的地,那么就一定存在一条网关的IP-MAC地址对应的记录。
知道了ARP协议的作用,就能够很清楚地知道,数据包的向外传输很依靠ARP协议,当然,也就是依赖ARP缓存。
要知道,ARP协议的所有操作都是内核自动完成的,同其他的应用程序没有任何关系。
同时需要注意的是,ARP协议只使用于本网络。
硬件类型(值为1)
协议类型(值为0800H)
硬件长度(值为6)
协议长度(值为4)
操作:
请求1,响应2
发送MAC地址(6字节)
发送IP地址(4字节)
目标端MAC地址(6字节)(并未包含在请求报文中)
目标端IP地址(4字节)
图2-1使用IP协议的以太网中ARP报文格式
字段说明:
硬件类型:
表示硬件类型,例如:
1表示以太网。
协议类型:
表示要映射的协议类型,例如0x0800表示IP地址。
硬件长度:
指明硬件地址长度,单位是字节,MAC是48位,长度是6个字节。
协议长度:
高层协议地址的长度,对于IP地址,长度是4个字节。
操作字段:
共有二种操作类型,1表示ARP请求,2表示ARP应答。
发送方MAC:
6个字节的发送方MAC地址。
发送方IP:
4个字节的发送方IP地址。
目的MAC:
6个字节的目的MAC地址。
目的IP:
4个字节的目的IP地址。
图2-2ARP地址解析过程
实验步骤
1、使用ARP命令
打开“命令提示符”界面,键入“arp-a”指令查看本机ARP表中的内容。
如图2-1所示。
图2-1查看本机ARP表的内容
注意:
在ARP表中,各主机的逻辑地址与物理地址是一一对应的,由此形成表项。
主机之间进行物理通信前,首先要查找本机ARP表,如果有对应项,则将通信对方的IP地址转换为相应的物理地址。
“Type”栏下的“dynamic”字段表明该表项处在动态更新中。
如果20分钟内没有其它访问网络的操作,ARP表会自动清空。
如果不想等待20分钟,可使用“arp-d”命令主动清空ARP表的内容。
此时再执行“arp-a”命令,会发现ARP表已经清空。
我们还可以使用“arp-s”命令手工设置ARP表表项,如:
“arp–s192.168.12.25300-cd-0d-33-00-34”。
(arp–sIP地址MAC地址)
图2-2手动添加ARP表表项
2、分析ARP协议的工作过程
具体操作步骤是:
(1)相邻的两名同学为一组,清除ARP表中的所有项。
(2)运行WIRESHARK程序,执行分组捕获操作。
(3)向另一台机器发送Ping包,稍后停止发Ping包。
(4)查看WIRESHARK捕到的ARP包,分析ARP协议执行的全过程。
3、用ARP命令查找IP地址冲突主机
我们知道,如果网络中存在相同IP地址的主机的时候,就会报告出IP地址冲突的警告。
这是怎么产生的呢?
比如某主机B规定IP地址为192.168.12.251,如果它处于开机状态,那么其他机器A更改IP地址为192.168.12.251就会造成IP地址冲突。
其原理就是:
主机A在连接网络(或更改IP地址)的时候就会向网络发送ARP包广播自己的IP地址。
如果网络中存在相同IP地址的主机B,那么B就会通过ARP来reply该地址,当A接收到这个reply后,A就会跳出IP地址冲突的警告,当然B也会有警告。
如果能同时观察到这些主机,那么通过修改其中一台主机的IP地址即可解决问题。
但是如果我们仅能观察到其中一台PC提示“IP地址192.168.12.251与网络上的其他地址冲突”,那么应如何确定是哪两台主机设置了相同的IP地址呢?
(1)将该报警主机的IP地址修改为一个未用地址。
如:
192.168.12.253
(2)在该机命令提示符界面输入“Ping192.168.12.251”。
(3)执行“arp-a”命令。
思考题
1.结合实验画出地址解析的流程图。
2.根据ARP协议的工作机制考虑是否存在地址欺骗的安全隐患?
试考虑可能的解决途径。
3.ARP协议只能解析本网络地址,那么跨网络如何解析地址呢?
实验三网际协议IP
实验目的
1.掌握IP数据报的报文格式。
2.掌握IP校验和计算方法。
3.理解特殊IP地址的含义。
4.理解IP分片过程。
实验环境
1.安装Windows2000/2003Server/XP操作系统的PC计算机一台。
2.每台PC具有一块以太网卡,通过双绞线与局域网相连。
2.每台PC运行网络协议分析软件WIRESHARK。
实验原理
一、IP报文格式
IP数据报是由IP首部加数据组成的。
IP首部的最大长度不超过60字节。
IP数据报文格式如下图所示:
4位版本
4位首部长度
8位服务类型
16位总长度(字节数)
16位标识
3位标志
13位片偏移
8位生存时间
8位协议类型
16位首部检验和
32位源IP地址
32位目的IP地址
选项(如果有)
数据
图3-1IP报文格式
二、IP分片
链路层具有最大传输单元(MTU)这个特性,它限制了数据帧的最大长度。
不同的网络类型都有一个上限值。
以太网通常是1500字节。
如果IP层有数据包要传输,而数据包的长度超过了MTU,那么IP层就要对数据包进行分片操作。
使每一片长度都小于MTU。
IP首部中“16位标识”、“3位标志”和“13位片偏移”包含了分片和重组所需的信息。
另外,当数据被分片后,每个片的“16位总长度”值要改为该片的长度值。
三、IP路由表
大部分网络层设备都存储着一张记录路由信息的表格,称为路由表。
它由许多条项目组成。
网络层设备收到数据报后,根据其目的IP地址查找路由表确定数据报传输的最佳路径(下一跳)。
然后利用网络层的协议重新封装数据报,利用下层提供的服务把数据报转发出去。
路由表的项目一般含有五个基本字段:
目的地址、网络掩码、下一跳地址、接口、度量。
路由表按如下顺序匹配:
●直接交付:
路由表表项的“目的地址”字段是交付主机的本网络地址。
●特定主机交付:
路由表表项的“目的地址”字段是某台特定主机的IP地址。
●特定网络交付:
路由表表项的“目的地址”字段是另一个网络的地址。
●默认交付:
路由表表项的“目的地址”字段是一个默认路由器(默认网关)。
四、路由选择过程
路由选择模块从IP处理模块接收到IP分组后,使用该分组的目的IP地址同路由表中的每一个项目按特定的顺序(按照前面介绍的“路由表匹配顺序”)查找匹配项,当找到第一个匹配项后就不再继续寻找了,这样就完成了路由选择过程。
匹配路由表项的方法是将IP地址与路由表中的一个项目的“子网掩码”进行按位“与”操作,然后判断运算结果是否等于该项目的“目的地址”,如果等于,则匹配成功,否则,匹配失败。
图3-2路由选择模块的工作过程
实验步骤
1、IP首部校验和的计算
IP/ICMP/IGMP/TCP/UDP等协议的校验和算法都是相同的,算法如下:
在发送数据时,为了计算IP数据包的校验和。
应该按如下步骤:
(1)把IP数据包的校验和字段置为0;
(2)把首部看成以16位为单位的数字组成,依次进行二进制反码求和;
(3)把得到的结果存入校验和字段中。
所谓的二进制反码求和,即为先进行二进制求和,然后对和取反。
计算对IP首部检验和的算法如下:
(1)把IP数据包的校验和字段置为0;
(2)把首部看成以16位为单位的数字组成,依次进行二进制求和(注意:
求和时应将最高位的进位保存,所以加法应采用32位加法);
(3)将上述加法过程中产生的进位(最高位的进位)加到低16位(采用32位加法时,即为将高16位与低16位相加,之后还要把该次加法最高位产生的进位加到低16位)
(4)将上述的和取反,即得到校验和。
例一:
现假如一个IP数据报首部为
450005D4CAE0400075060000CA623964C0A80002
根据IP数据报的格式可以看出它的首部校验和字段为0000,现在根据上述求校验和的算法将校验和字段求出来。
2、特殊的IP地址
(1)直接广播地址
其中:
目的MAC地址:
FFFFFF-FFFFFF。
目的IP地址:
192.168.32.255。
(2)受限(有限)广播地址
其中:
目的MAC地址:
FFFFFF-FFFFFF。
目的IP地址:
255.255.255.255。
(3)环回地址:
127.0.0.1
ping127.0.0.1
正常情况下,主机发送到127.0.0.1的数据报,会不会出现在本地网络?
3、IP数据报的分片
(1)启动:
network.htm#jiaofu/网络在线实验/IP分片程序。
(2)根据提示输入进入该网络IP数据报的原始大小、数据报的标识值以及该网络的MTU值。
(3)点击Calculate按钮,将会出现如图3-3所示的结果。
图3-3IP数据报分片结果
(4)理解IP数据报的分片原理,并将如下几个字段的值记录到表3-1中。
表3-1IP数据报分片结果
字段名称
分片序号1
分片序号1
分片序号1
Identification字段值
777
777
777
Morefragments字段值
1
1
0
Fragmentoffset字段值
0
1480
2960
传输的数据量
1500
1500
1040
思考题
1.试说明IP地址与硬件地址的区别。
为什么要使用这两种不同的地址?
2.IP数据报中的首部检验和并不检验数据报中的数据。
这样做的最大好处是什么?
坏处是什么?
3.不同协议的MTU的范围从296到65535。
使用大的MTU有什么好处?
使用小的MTU有什么好处?
实验四Internet控制报文协议ICMP
实验目的
1.掌握使用WIRESHARK工具对ICMP协议进行抓包分析的方法。
2.理解不同类型ICMP报文的具体意义。
3.通过实验,进一步了解ICMP协议。
实验环境
1.安装Windows2000/2003Server/XP操作系统的PC计算机一台。
2.每台PC具有一块以太网卡,通过双绞线与局域网相连。
3.每台PC运行网络协议分析软件WIRESHARK。
实验原理
ICMP是InternetControlMessageProtocol(Internet控制报文协议)的缩写,是TCP/IP协议族的一个子协议,用于在主机和路由器之间传递控制消息。
控制消息是指网络通不通、主机是否可达、路由器是否可用等网络本身的消息。
由于IP网络的不可靠并且不能保证信息传递,因此当发生问题时,通知发送者是很重要的。
ICMP协议提供有关阻止数据包传递的网络故障问题反馈信息的机制,它让TCP等上层协议能够意识到数据包没有送达目的地,ICMP协议提供一种查出灾难性问题的方法。
这些灾难性的问题包括“TTLExceeded”(超
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机网络与因特网 计算机网络 因特网 实验 指导书