Sniffer工具在计算机网络教学中的应用论文
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Sniffer工具在计算机网络教学中的应用
在传统教学模式中,计算机网络课程偏向于静态的教学方法,尤其对于各种网络协议的学习,教师在讲台上讲,学生在座位上听;至多再加入一些练习和考试。
然而计算机学科是一门实践的学科,在如此发达的网络时代,这种传统的教学方法显得有一些单调,不能激发学生的学习兴趣,也难以产生良好的学习效果;我们需要能够在不增加教学成本的前提下,不断尝试不同的教学方法,通过实践来让网络课程的教学焕发活力。
sniffer工具是用来抓取网络数据包的一类软件,通过将本机网卡为混杂模式,使其可以抓取所有流经本机网卡的数据包(本文对于sniffer工具抓取的信息统称数据包),其捕获的数据包中包含了各层网络协议的报头与数据信息,可以为教学提供现实意义的参考。
我们选取sniffer pro作为sniffer工具,以获得各层协议在现实环境中的应用情况。
一、tcp协议分析
tcp/ip协议簇是事实上的网络协议通讯标准,tcp协议的学习重点包括连接的建立与终止、流量控制与拥塞控制。
传统教学中,tcp的socket编程是tcp协议的一个重要的实验,该实验使用高级编程语言提供的网络接口,完成tcp的相关活动;通过构建服务器端和客户端的tcp通讯,了解tcp的运行原理。
结合使用sniffer 工具,会起到一个更好的效果。
tcp协议的连接是通过三次握手来进行的,以syn标志位发起连接,seq为数据包(segment)的序列号,ack为确认序号,tcp通过seq与ack的对应关系来确保数据包是否传送成功。
上图是截取的一个ftp连接建立的过程,主机a为192.168.1.5(客户机),主机b为tianfu-af7c424a(服务器);截图只显示了摘要信息,在抓取数据包后,可以清晰的看到192.168.1.5这台主机是如何与ftp服务器建立连接的:
1)序号为1的数据包,首先主机192.168.1.5在自己的端口52807上发起一个到服务器tianfu-af7c424a的21端口的tcp
连接请求(syn标记位),我们知道,21端口是一个well-known port,可以预测这是一个ftp连接;此时的seq为3367193685 2)序号为2的数据包,服务器tianfu-af7c424a从自己的21端口给出了对于数据包1的回复,目的端口是192.168.1.5的52807;2号数据包同样含有一个syn标记位,所不同的是,它有了一个ack的确认,其值为3367193686,刚好是1号数据包的seq+1;此时,其seq的值为1611317685
3)序号为3的数据包,tcp连接需要3次握手才能成功,主机192.168.1.5在收到服务器的确认包后,将2号数据包的seq+1作为自己的ack发给服务器,其值为1611317686。
到此为止,tcp 连接建立完毕。
我们还可以通过观察数据包的头部结构来进行更深入的对比学习;使教学、编程与抓包分析相结合,学生在tcp协议的学习上一
定会得到更多的收获。
二、arp命令中ip地址与mac地址的绑定分析
arp协议的主要功能是负责将ip地址解析成mac地址,从而为链路层的寻址提供支持。
arp攻击是常见的局域网攻击,也是在高校宿舍网中经常发生的攻击之一,常会导致大面积断网,乃至于局域网的瘫痪。
将主机的ip与mac地址绑定是解决arp攻击的最简单且有效的方法,通过实验,我们不但要解决arp攻击问题,也要能够了解arp 攻击原理;激发学生的学习兴趣。
1. 使用ipconfig命令取得网关地址
得到网关的ip地址为10.30.33.62,下一步我们将会把一个错误的mac地址绑定到这个ip地址上,并观察结果
2. 绑定错误的网关mac地址,测试并监控网络
a)绑定ip与错误mac地址
先查看本地arp缓存,得到正确的mac地址:38-22-d6-e0-3f-04 将ip地址10.30.33.62绑定到错误的mac地址:
38-22-d6-e0-3f-77,完成绑定后的,再次查看arp缓存,发现网关ip 10.30.33.62已经绑定到了错误的物理地址,且类型为静态。
b)ping网关ip,使用sniffer pro获取ping数据
可以截取到的icmp的包仅有从本机发出的包,而没有回应,数量为4;这正是ping命令默认发出的4个数据包,且都以超时结束;观察数据包的详细情况,可以发现在链路层上,使用了错误的目的
地址38-22-d6-e0-3f-77,如果遭遇arp攻击,就会出现类似的情况。
c)使用浏览器上网,通过sniffer pro获取相关数据
上图中,可以观察到本机一直在像dns服务器10.20.1.2请求同一网站的各种域名,然而都没有任何的响应数据;观察详细数据,会发现链路层上的目的地址仍是38-22-d6-e0-3f-77,即dns服务器不在本局域网内,需要通过网关才能访问,但是网关地址错误,无法取得,因此会不断尝试,直至超时。
3. 取消网关错误的ip地址与mac地址绑定,重启电脑,测试网络连通性
截取到8个数据包,2个包对,刚好构成icmp的echo与echo reply,即每一个echo都会得到目的地址的响应,说明网络已经连通。
三、总结
就计算机网络这门课程的教学来说,知识的传授形式可以依靠如sniffer工具这样的辅助手段来加以丰富,通过分析解决实际存在的网络问题可以使学习变成一种能力的培养,即学习能力与解决问题的能力,这是学生在日后工作中能够不断进步的有力保障。
本文通过实例研究,分析了如何使用sniffer工具验证tcp连接的理论知识,从而使理论落地;通过ip地址与mac地址的绑定情景分析,结合sniffer工具,了解arp攻击的原理,验证巩固了相关的网络知识。
实际网络环境是复杂多变的,涉及到的知识点也
是很庞杂的,这个阶段课程的教学只能提供基础知识的准备,结合sniffer工具的使用,我们可以培养学生的自主实践,自我学习能力,从而达到更好的教学效果。