理工论文基于winpcap的旁路ip阻断方法研究与实现

理工论文基于winpcap的旁路ip阻断方法研究与实现

ID:9910646

大小:29.00 KB

页数:5页

时间:2018-05-15

理工论文基于winpcap的旁路ip阻断方法研究与实现_第1页
理工论文基于winpcap的旁路ip阻断方法研究与实现_第2页
理工论文基于winpcap的旁路ip阻断方法研究与实现_第3页
理工论文基于winpcap的旁路ip阻断方法研究与实现_第4页
理工论文基于winpcap的旁路ip阻断方法研究与实现_第5页
资源描述:

《理工论文基于winpcap的旁路ip阻断方法研究与实现》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、基于WinPcap的旁路IP阻断方法研究与实现基于WinPcap的旁路IP阻断方法研究与实现基于WinPcap的旁路IP阻断方法研究与实现基于WinPcap的旁路IP阻断方法研究与实现是小柯论文网通过网络搜集,并由本站工作人员整理后发布的,基于WinPcap的旁路IP阻断方法研究与实现是篇质量较高的学术论文,供本站访问者学习和学术交流参考之用,不可用于其他商业目的,基于WinPcap的旁路IP阻断方法研究与实现的论文版权归原作者所有,因网络整理,有些文章作者不详,敬请谅解,如需转摘,请注明出处小柯论文网,如果此论文无法满足您的论文要求,您可以

2、申请本站帮您代写论文,以下是正文。  摘要:在审计系统中,需要阻止一些非法主机和子网的连接。基于WinPcap的网络开发包,捕获流经网卡的数据包,解析以太网数据包,并对那些非法主机进行阻断。利用hash表实现快速插入和查询功能,提高了数据包的处理速度和效率,在实际中得到很好的应用。  关键词:非法阻断;包捕获;哈希表;ARP欺骗    引言    随着Internet的迅猛发展,网络安全的形势更加严峻,迫切需要行之有效的网络安全保障系统。在网络安全审计系统中需要对那些产生危害的主机进行隔离,断开其和子网的连接。本文论述了在Win32环境中利用

3、WinPcap捕获流经网卡的数据包,对那些非法主机采用ARP欺骗实施有效阻断。    1用WinPcap捕获数据包    1.1WinPcap简介  WinPcap是由伯克利分组捕获库派生而来的分组捕获库,它是在Windows操作平台上来实现对底层包的截取过滤。采用WinPcap进行开发与使用Winsock相比,WinPcap具有很多优点。WinPcap是独立于网络协议的,可以分析处理所有网络设备接收的数据。此外WinPcap的标准抓包接口与libpcap兼容,使系统便于向UNIX平台移植。而且WinPcap具有发送ARP数据包的能力。  W

4、inPcap的体系结构如图1所示。第1个模块NPF(netgrouppacketfilter)是一个虚拟设备驱动程序文件,它的功能是过滤数据包,并把这些数据包原封不动地传给用户态模块。第2个模块Packet.dll为win32平台提供了一个公共的接口,不同版本的Windows系统都有自己的内核模块和用户层模块。Packet.dll用于解决这些不同,调用Packet.dll的程。    序可以运行在不同版本的Windows平台上,而无需重新编译。第3个模块Winpcap.dll是不依赖于操作系统的,它提供了更加高层、抽象的函数。WinPcap提

5、供了一套标准的抓包接口,充分考虑了各种性能和效率的优化,包括对于NPF内核层次上的过滤器支持,支持内核态的统计模式,提供了发送数据包的能力。  1.2基于WinPcap的抓包流程  在Windows平台下使用WinPcap很容易开发出基于原始数据包的各种网络应用软件。一般情况下,我们都用winpcap.dll提供的函数,因为它的功能更强,使用也更方便。  (1)开启指定网卡。WinPcap提供了pcap_findalldevs()这个函数来获取当前机器上所配置网络接口的内容,接口的全部信息都保存在pcap_if结构的链表中,链表的每项内容含有

6、全面的网卡信息。pcap_open_live()是专门用于打开指定网卡设备的,第3个参数如果设置为1,则代表将网卡设置为混杂模式,同时该函数如果调用成功,则返回指定网卡的操作句柄。  (2)设置过滤规则。用户可以根据需要设置相应的过滤条件,例如只接收UDP或TCP数据包,实现过滤规则的设置关键是对pcap_compile()和pcap_setfilter()两个函数进行正确的配置。  (3)捕获网络数据包。WinPcap提供了几种捕包函数以适应不同的情况,例如pcap_dispatch()每捕获一个数据包就调用一次callback函数。cal

7、lback它是一个带有三个参数的回调函数。Pcap_loop()功能基本与pcap_dispatch()函数相同,只不过该函数在cnt个数据包被处理或出现错误时才返回,但读取超时不会返回,它在没有数据流到达时将阻塞。在回调函数中就可以对所捕获的数据包进行解析。  1.3数据包的解析  利用WinPcap库捕获的数据帧其实是经过传输层、网络层和数据链路层的封装而生成的太网数据帧,因此可以对数据帧作进一步解析,该过程在回调函数中完成。  以太网数据帧由报头和数据区组成,在以太网帧的报头中包含目地址端及源地址,通常抓到的数据包已经去掉了同步码和桢分

8、界符。在具体编程实现中,可以定义以太网数据帧数据结构描述。  根据类型字段type可以判断是那种数据包。常用的有:0x0800表示IP数据包,0x0806表示ARP

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。