pcap_dnsproxy-master.zip

  • 李大师
    了解作者
  • Visual C++
    开发工具
  • 7.8MB
    文件大小
  • zip
    文件格式
  • 0
    收藏次数
  • 1 积分
    下载积分
  • 5
    下载次数
  • 2014-08-19 01:45
    上传日期
pcap 截获dns 的一个示例DEMO 。可以下载来学习一下
pcap_dnsproxy-master.zip
内容介绍
Pcap_DNSProxy ===== A local DNS server base on WinPcap and LibPcap. ### 关于分支 本分支 master 为 Pcap_DNSProxy 项目的主分支,用于存放源代码,**编译版本请移步 [Release 分支](https://github.com/chengr28/pcap_dnsproxy/tree/Release)** ### 使用方法 * Windows 版参见 [Wiki](https://github.com/chengr28/pcap_dnsproxy/wiki) 中 [ReadMe](https://github.com/chengr28/pcap_dnsproxy/wiki/ReadMe) 之内容 * Linux 版参见 [Wiki](https://github.com/chengr28/pcap_dnsproxy/wiki) 中 [ReadMe_Linux](https://github.com/chengr28/pcap_dnsproxy/wiki/ReadMe_Linux) 之内容 * Mac 版参见 [Wiki](https://github.com/chengr28/pcap_dnsproxy/wiki) 中 [ReadMe_Mac](https://github.com/chengr28/pcap_dnsproxy/wiki/ReadMe_Mac) 之内容 ### 最新版本 * **Windows 版本:v0.4 Beta(2014-07-20)** * **Linux 版本:v0.2(2014-03-02)** * **Mac 版本:v0.1(2014-03-02)** ### 简介 * **Pcap_DNSProxy 是一个基于 LibPcap/WinPcap 制作的用于忽略DNS投毒污染的小工具,后期也加入了对包含正则表达式的Hosts的支持**<br /> * 很多使用TCP协议进行解析的工具,可以用于忽略DNS投毒污染。但事实上已经出现有使用TCP协议请求域名解析时被连接重置的情况,而使用UDP协议则又会被DNS投毒污染,导致其始终无法获得正确的域名解析。**本工具主要工作在UDP协议上,可以将伪造的数据包完全过滤**,同时UDP协议比起TCP协议更具有占用资源低和发送转发接收速度快等特点。**本工具同时也支持使用TCP协议进行请求,而且在被连接重置时会自动切换到UDP协议,可以使请求者获得正确的域名解析**<br /> * **完全支持正则表达式 Hosts 条目,可以为使用者提供更加便捷的途径设定域名所对应的地址,避免修改系统文件的麻烦**<br /> * 本工具使用 C/C++ 编写而成,使用 Visual Studio 2012(Update 3)/VC++ 11.0(Windows)、GCC 4.7.2/g++(Linux) 和 Xcode 5.0.1/Apple LLVM 5.0(Mac) 进行编译,完全支持 Unicode ### 特点 * 同时支持本地IPv4/IPv6协议监听和远程请求 * 普通DNS请求模式同时支持TCP/UDP协议 * Native Code 原生码编译,不含任何托管代码,x64版为原生64位目标平台编译 * 作为系统服务工作于底层 * 多线程模型 * 使用 LibPcap/WinPcap 利用系统底层驱动抓取数据包,多种过滤方式忽略接收到的伪造数据包 * 支持服务器模式,相当于一个小型的DNS服务器,能为其它设备提供解析服务,并可限制可请求的范围 * 主要和备用双服务器模式,提高DNS解析的可靠性 * DNS缓存功能 * 支持 EDNS0 标签 * 支持 DNSCurve/DNSCrypt 协议 * Hosts Only 模式可只适用本工具支持正则表达式的 Hosts 的功能 * 支持 Local Hosts 境内DNS服务器解析功能,可提高对境内域名的解析速度和服务器的访问速度 * 丰富的配置选项,读取文件支持 ANSI、UTF-8(/BOM)、UTF-16(LE/BE) 和 UTF-32(LE/BE) 编码以及 Windows/Unix/Macintosh 换行格式 * 错误报告功能 ### 使用的库 * 正则表达式支持由 C++ STL(Windows)/系统自带的正则库(Linux/Mac) 提供 * 文件 Hash 使用的算法由 [SHA-3/Keccak](http://keccak.noekeon.org) 提供 * 由 C++ STL 自带的梅森旋转算法引擎产生离散型均匀分布随机数,用于随机域名探测 * DNSCurve 协议使用的 Curve25519/Salsa20/Poly1305 算法由 [LibSodium](https://github.com/jedisct1/libsodium) 提供 * DNSCurve 协议加密模式使用的一次性 Nonce 亦由 [LibSodium](https://github.com/jedisct1/libsodium) 附带的随机数产生器提供 ### 支持平台 * 本工具**抓包模块**所支持的网络类型 * 网络设备类型为 Ethernet 的网络 * 原生IPv4网络和原生IPv6网络**(非原生IPv6网络环境切勿开启IPv6功能)** * 基于PPPoE或PPPoEv6的IPv4网络和IPv6网络 * 如果需要支持更多网络类型,可与作者联系 * Windows 平台 * **所有 Windows XP/2003 以及更新内核的版本(32位/x86版本)和 Windows Vista/2008 以及更新的版本(64位/x64版本)** * 支持最新版本 [WinPcap](http://www.winpcap.org/install/default.htm) * Linux 平台 * 支持 [编译所需依赖包](https://github.com/chengr28/pcap_dnsproxy/wiki/ReadMe_Linux) 的Linux发行版 * 支持最新版本 [Libpcap](http://www.tcpdump.org) * Mac 平台 * **采用Intel平台处理器的 Mac OS X 10.5 Leopard 以及更新的版本** ### 许可证 GNU General Public License/GNU GPL v2
评论
    相关推荐