福建农林大学计算机与信息学院实验报告课程名称:计算机网络姓名:学院:计算机与信息学院专业:计算机科学与技术年级:学号:指导教林要华师:职称:讲师2015年10月27日实验项目列表序号实验项目名称成绩指导教师1TCP/IP实用程序的使用2345678总评45实验报告系:计算机科学专业:计算机科学与技术年级:姓名:学号:实验室号:计算机号:实验日期:2015年10月27日指导教师签字:成绩:报告退发(订正、重做)实验三网络监听实验(二)一、实验目的1、熟悉IP地址与MAC地址的概念2、理解ARP协议及ICMP协议原理3、了解TELNET应用二、实验原理1、IP地址与MAC地址、ARP协议数据链路层使用物理地址(即MAC地址),网络层使用IP地址,当数据包在网络层和数据链路层之间传输时,需要进行MAC地址和IP地址的转换。ARP协议的功能是实现IP地址到MAC地址的转换。每个主机都设有一个ARP高速缓存,操作系统通常会将从网络中得到的IP地址和MAC地址的映射关系存放在本机的高速缓存中,使用arp命令,可以查看、添加和删除高速缓冲区中的ARP表项。在Windows操作系统中,高速缓存中的ARP表项可以包含动态和静态表项,动态表项随时间推移自动添加和删除,而静态表项则一直保留在高速缓存中,直到人为删除或重启计算机。2、ICMP协议ICMP协议是配合IP协议使用的网络层协议,它的报文不是直接传送到数据链路层,而是封装成IP数据报后再传送到数据链路层。分组网间探测PING是ICMP协议的一个重要应用,它使用ICMP回送请求与回送应答报文,用来测试两个主机之间的连通性。命令格式为:ping目的IP地址。ICMP回送请求与回送应答报文格式如下:类型:8或0代码:0校验和标识符序号可选数据6说明:类型为8---回送请求,为0---回送应答TRACERT程序是ICMP协议的另一个应用,命令格式为:tracert目的地址。Tracert从源主机向目的主机发送一连串的IP数据报P1,P1的TTL设置为1,当它到达路径上的第一个路由器R1时,R1先收下它,把P1的TTL值减1,变成0,R1丢弃P1,并向源主机发送一个ICMP超时差错报告报文。源主机接着又发送第二个TTL值为2的IP数据报P2,路径上的第一个路由器把P2的TTL值减小1,当P2到达路径上第二个路由器时,第二个路由器把P2丢弃,并向源主机发送一个ICMP超时差错报告报文。如此继续,最后一个IP数据报到达目的主机时,目的主机和源主机间发送ICMP回送请求与回送应答报文。路径上的这些路由器和目的主机向源主机发送的ICMP报文告诉源主机,到达目的主机所经过的路由器的IP地址及往返时间。3、远程终端协议TELNETTelnet协议基于TCP协议,默认端口号为23。应用Telnet协议能够把本地用户所使用的计算机变成远程主机系统的一个终端。Telnet远程登录服务分为以下4个过程:1)本地与远程主机建立连接。该过程实际上是建立一个TCP连接,用户必须知道远程主机的Ip地址或域名;2)将本地终端上输入的用户名和口令及以后输入的任何命令或字符以NVT(NetVirtualTerminal)格式传送到远程主机。该过程实际上是从本地主机向远程主机发送一个IP数据报;3)将远程主机输出的NVT格式的数据转化为本地所接受的格式送回本地终端,包括输入命令回显和命令执行结果;4)最后,本地终端对远程主机进行撤消连接。该过程是撤销一个TCP连接。本次上机建议采用WireShark软件(网络协议分析器)。官方下载地址:三、实验步骤1、查看本机IP地址与MAC地址在命令行中输入命令:ipconfig/all,记录显示结果72、操作本机高速缓存中的ARP表(1)查看高速缓存中的ARP表查看命令:arp-aARP表项在没有进行手工配置前,通常都是动态ARP表项,所以不同时间运行arp–a命令,运行结果也不大相同。运行arp–a命令,查看运行结果。8运行WireShark软件,选择capture---options,在capturefilter文本框中输入:arpandhost本机IP地址,例如:arpandhost192.168.0.101,这个过滤条件的意思是指只监听进出主机192.168.0.101的arp数据包。点击start开始监听。用ping命令去ping局域网中的其它主机B(192.168.0.100),且主机B的IP地址不在本机的ARP高速缓存中。WireShark中开始监听到数据包,当没有数据包到来后,停止监听并保存监听记录为5-1.pcap。示例监听结果如下图:对监听到的数据进行分析:结合arp协议工作原理对监听记录进行分析;选择第一条监听记录,分析ARP报文格式。再次用命令arp-a查看ARP表项的变化情况。9此时,在WireShark中设置capturefilter为:host192.168.0.101andarporicmp。点击start按钮进行监听。用ping命令再去ping主机B,保存监听记录为5-2.pcap。对监听结果进行分析:结合ICMP协议的工作原理对监听记录进行分析;选择一条监听记录,分析IP报文和ICMP询问报文的格式;查看ICMP询问报文的数据部分。与上一次监听结果进行比较,两次监听结果的不同说明了什么问题?隔2分钟后,再次使用arp–a,记录ARP表项的变化情况,并分析原因。用ping命令去ping局域网中的一台没有开机的主机(192.168.0.123),再查看ARP表。保存监听记录为5-3.pcap(2)添加ARP静态表项命令:arp–sIP地址MAC地址把第(1)步中找到的一个合法IP地址(如:192.168.0.93)和对应MAC地址添加进ARP表中,命令为:arp–s192.168.0.9300-C0-9F-FF-E9-E5。查看ARP表项,可发现增加了一个类型为static的表项;隔2分钟后,再次使用arp–a,看看static表项是否存在。10(3)删除ARP静态表项的命令:arp–dIP地址例如:arp–d192.168.0.93(4)清空ARP高速缓存的命令:arp–d*3、ICMP的应用——tracert(1)监听准备运行WireShark软件,选择capture---options,在capturefilter文本框中输入icmp,点击start开始监听。(2)运行命令tracert打开命令行程序,输入命令:tracert,观察返回信息。并且可以发现WireShark中收集了一连串记录。保存监听记录为5-4.pcap。(3)分析监听结果利用监听结果,分析ICMP超时差错报告报文:选择一条“Timetoliveexceeded”记录,分析ICMP超时差错报告报文的格式;11选择一条“Timetoliveexceeded”记录,其中的两个IP首部是一样的吗?为什么?;针对“Echo(ping)request”记录,观察每个IP数据报的初始TTL值及数据部分内容;记录源主机到目的主机所经过的路径及花费的时间。4、远程登录Telnet应用本实验需要局域网环境下的两台PC机,主机A(设IP地址为:169.254.104.2)充当客户端,主机B(设IP地址为:169.254.240.102)充当服务器。(1)在主机B中创建管理员用户在主机B上创建一个新的用户名,并让它属于管理员组,用来进行登录测试。创建新用户的方法为:“管理”--“管理工具”--“本地用户和组”--“用户”;在“操作”菜单中选择“新用户”,设置用户名为testuser,密码为fortest;把新用户添加进管理员组的方法:右击“testuser”项,选择“属性”--“隶属于”--“添加”--“高级”--“立即查找“--选择“Administrators”组--“确定”,即可把用户testuser添加到管理员组中。(2)在主机B上启动telnet服务启动方法:右击我的电脑,选择“管理”--“服务和应用程序”--“服务”,在列表中找到Telnet选项。右击Telnet属性,在启动类型中改禁用为手动,点击应用。最后再点击服务状态下的启动按钮,确定退出。(3)在主机A上监听启动监听软件WireShark,过滤条件(capturefilters)设置为:port23,点击start,开始监听。(4)在主机A上登录主机B“开始”--“运行”—输入命令cmd,打开命令行窗口。输入命令:telnet169.254.240.102,出现欢迎界面,并提示安全信息(如图所示),输入y后回车,进入登录界面,在login:处输入登录用户名testuser,在password:处输入密码fortest。12(5)操作主机B中的数据主机B验证用户名和密码正确无误后,主机A可以进入主机B的目录c:\DocumentsandSettings\testuser\中,此时主机A即可任意操作主机B中所有的数据资料,包括创建、删除、修改、拷贝等操作,就像控制自己机器上的数据一样。例如,输入d:回车,可进入D盘。(6)输入dir命令,可以看到主机B上在D盘中的所有文件和文件夹信息。(7)输入help命令,显示可用的DOS命令。然后,尝试删除D盘上某个文件或文件夹,如:type1.txt,del1.txt等。输入exit命令,断开跟服务器的连接。(8)在主机A上点击stop,停止监听,保存监听结果为5-5.pcap。若第15条监听记录的窗口下文内容处看到登录提示login:,则从第16条记录开始查看远程登录所用的用户名和密码信息。13总结:通过本次试验,熟悉IP地址与MAC地址的概念,理解ARP协议及ICMP协议原理,了解TELNET应用。