毕业设计指导网:毕业设计范文、毕业答辩指导,免费毕业设计、计算机毕业论文参考资料下载服务。

技术团队主要成员为国内著名高校计算机专业导师。诚实守信,优质服务,是我们的宗旨!
当前位置:毕业设计指导网计算机毕业设计频道C++/VC设计

DNS欺骗技术研究与实现

  • 设计环境:无 + C++/VC设计
  • 论文字数:39777
  • 包含资料:开题报告+论文+源码+英文翻译+答辩ppt
  • 相关Tags:dns  安全  
  • 难度系数:

DNS欺骗技术研究与实现简介

         本文分析了在以太网中利用对网络数据监听,来截获DNS报文,进而伪造DNS报文进行DNS欺骗的技术,并给出基于WinPcap的实现。
          DNS欺骗的基础是捕获DNS请求的数据包。首先我们就介绍如何捕获数据包。打开网卡的功能是通过pcap_open_live()来实现的它有三个参数snaplen promisc to_ms。
         snaplen用于指定所捕获包的特定部分,在一些系统上(象xBSD and Win32等)驱动只给出所捕获数据包的一部分而不是全部,这样就减少了拷贝数据的数量从而提高了包捕获的效率。
promisc指明网卡处于混杂模式,在正常情况下网卡只接受去往它的包而去往其他主机的数据包则被忽略。相反当网卡处于混杂 模式时他将接收所有的流经它的数据包:这就意味着在共享介质的情况下我门可以捕获到其它主机的数据包。大部分的包捕获程序都将混杂模式设为默认,所有我们在下面的例子里也将网卡设为混杂模式。
          to_ms 参数指定读数据的超时控制,超时以毫秒计算。当在超时时间内网卡上没有数据到来时对网卡的读操作将返回(如pcap_dispatch() or pcap_next_ex()等函数)。还有,如果网卡处于统计模式下to_ms还定义了统计的时间间隔。如果该参数为0那么意味着没有超时控制,对网卡的读操作在没有数据到来是将永远堵塞。如果为-1那么对网卡的读操作将立即返回不管有没有数据可读。
         一旦网卡被打开,就可以调用pcap_dispatch() 或pcap_loop()进行数据的捕获,这两个函数的功能十分相似不同的是pcap_ dispatch()可以不被阻塞,而pcap_loop()在没有数据流到达时将阻塞。在简单的例子里用pcap_loop()就足够了,而在一些复杂的程序里往往用pcap_dispatch()。
        这两个函数都有返回的参数,一个指向某个函数(该函数用来接受数据如该程序中的packet_handler)的指针,libpcap调用该函数对每个从网上到来的数据包进行处理和接收数据包。另一个参数是带有时间戳和包长等信息的头部,最后一个是含有所有协议头部数据报的实际数据。注意MAC的冗余校验码一般不出现,因为当一个桢到达并被确认后网卡就把它删除了,同样需要注意的是大多数网卡会丢掉冗余码出错的数据包,所以WinPcap一般不能够捕获这些出错的数据报。
        基于回调包捕获机制的pcap_loop()在某些情况下是不错的选择。但是在一些情况下处理回调并不特别好:这会使程序变的复杂并且在象多线程或C++类,这些情况下它看起来到象一块绊脚石。
        在这些情况下pcap_next_ex()允许直接调用来接收包,它的参数和pcap_loop()相同:有一个网卡描述和两个指针,这两个指针会被初始化并返回给用户,一个是pcap_pkthdr结构,另一个是接收数据的缓冲区。
 

计算机毕业设计说明

本论文出自毕业设计指导网http://www.bysj120.cn,为保证客户隐私本站的成品计算机毕业设计一律不在网站上刊登任何程序截图、毕业论文目录摘要等。如需详细了解设计具体内容请联系本站在线客服索取的程序运行演示、毕业论文介绍。网站上展示的只是部分成品设计,如找不到您需要的毕业设计请联系在线客服查询。
·上一毕业设计:html静态版学术网站设计
·下一毕业设计:XML解析器文档解析的实现

在线客服

  • 咨询QQ:
  • 407894958
  • 点击和客服QQ在线沟通
  • 点击和客服QQ在线沟通
  • 成品购买:
  • 定制咨询:
  • 点击和客服QQ在线沟通
  • 点击和客服QQ在线沟通
  • 如临时会话消息无法接收 请先加客服QQ好友咨询
    微信客服

计算机毕业设计,免费毕业论文,优秀毕业设计论文下载


120毕业设计指导网
地址:徐州市西安路41号
收缩
  • 计算机毕业设计定做咨询