DNSWatch 是一款强大的数据包嗅探工具,旨在监控和分析网络中的 DNS(域名系统)流量。本脚本提供了一套全面的功能,帮助用户高效地理解和管理 DNS 活动。无论您是网络管理员、网络安全专业人员,还是好奇的爱好者,DNSWatch 都能让您深入了解 DNS 请求、检测异常并增强网络安全。
git clone https://github.com/HalilDeniz/DNSWatch.git
pip install -r requirements.txt
$ python3 dnswatch.py [-h] [-i INTERFACE] [-v] [-t TARGET_IP] [-d] [--doh] [-D TARGET_DOMAINS [TARGET_DOMAINS ...]] [-p FILTER_PORT] [-s FILTER_SRC_IP] [-r FILTER_DST_IP] [--dns-type DNS_TYPE] [--pcap-file PCAP_FILE] [--firewall] [--threshold THRESHOLD] [--window-size WINDOW_SIZE] [--version]
-i, --interface:用于指定监听的网络接口。例如:-i eth0-v, --verbose:使用此标志获取详细输出。-t, --target-ip:用于指定要监控的特定 IP 地址。例如:-t 8.8.8.8-d, --analyze-dns-type:使用此标志分析 DNS 类型。--doh:使用 DNS over HTTPS (DoH) 进行 DNS 解析。-D, --target-domains:用于指定要监控的目标域名。接受多个域名的空格分隔列表。例如:-D example.com example.org-p, --filter-port:使用此标志后跟端口号,按特定端口过滤。例如:-p 53-s, --filter-src-ip:使用此标志按特定源 IP 地址过滤。例如:-s 192.168.1.1-r, --filter-dst-ip:使用此标志按特定目标 IP 地址过滤。例如:-r 8.8.4.4--dns-type:使用此标志后跟 DNS 类型,按特定 DNS 类型过滤。例如:--dns-type 1(对应 A 类型)--pcap-file:使用此标志将捕获的数据包保存为 PCAP 文件。例如:--pcap-file captured_packets.pcap--firewall:启用 DNS 防火墙模式。--threshold:使用此标志设置 DNS 查询数量的阈值。例如:--threshold 50--window-size:使用此标志设置时间窗口大小(以秒为单位)。例如:--window-size 60--version:使用此标志显示程序的版本号。按 Ctrl+C 停止嗅探过程。
以下是 DNSWatch 的一些使用示例:您可以在此处探索:
DNSWatch 采用 MIT 许可证。详情请参阅 LICENSE 文件。
此工具仅供教育和测试目的使用。不得用于任何恶意活动。
感谢您考虑支持我!您的支持让我能够投入更多时间和精力来创建像 DNSWatch 这样的有用工具,并开发新项目。通过贡献,您不仅帮助我改进现有工具,还激发了新的想法和创新。您的支持对这个项目及未来努力的发展至关重要。让我们一起继续构建和学习。谢谢!