scapy中sniff怎么设置只捕获DNS流量?

2023-10-09 00:59

本文主要是介绍scapy中sniff怎么设置只捕获DNS流量?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

现在自己要做一个分析DNS的程序,需要借助到scapy的sniff函数实时捕获网卡上的DNS流量,实现原理是需要设置sniff函数中的filter参数端口为53,因为DNS的端口为53

pkts = sniff(iface = "Intel(R) Dual Band Wireless-AC 8265",filter = "port 53",count = 20 , prn = lambda x: x.summary()) 

想到这样过滤的思路如下:

之前自己经过上网查询后,知道了sniff中的filter参数属于BPF语法(跟wireshark过滤语法相同),在wireshark中设置“捕获过滤器”语法也能照搬。(所以后面也会用wireshark设置“捕获过滤器”语法举例子)
filter的用法
在这里插入图片描述
但是发现协议中并没有"DNS"这个协议,自己如果直接设置 dns过滤器,显示无法设置,如下:(为了演示直观,展示了Wireshark界面,而不是sniff函数,两者的过滤语法是相同的)
在这里插入图片描述
后来从这篇博文中获得灵感,
Wireshark使用教程(因为其中也会用到BPF语法)
在这里插入图片描述
我们知道DNS所占端口号是53,意思是只要设置过滤出端口号为53的流量记录,就相当于过滤出协议为DNS的流量,所以如下设置:
在这里插入图片描述
捕获流量均为DNS
在这里插入图片描述
同理,在sniff的filter中也这么写,
在这里插入图片描述
其中

wrpcap("1.pcap", pkts)

这句可以把抓到的流量,存储为1.pcap文件,

pkts = sniff(iface = "Intel(R) Dual Band Wireless-AC 8265",filter = "port 53",count = 20 , prn = lambda x: x.summary()) 

用Wireshark打开pcap文件,验证确实全部都为DNS流量
在这里插入图片描述

这篇关于scapy中sniff怎么设置只捕获DNS流量?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/169206

相关文章

MySQL设置密码复杂度策略的完整步骤(附代码示例)

《MySQL设置密码复杂度策略的完整步骤(附代码示例)》MySQL密码策略还可能包括密码复杂度的检查,如是否要求密码包含大写字母、小写字母、数字和特殊字符等,:本文主要介绍MySQL设置密码复杂度... 目录前言1. 使用 validate_password 插件1.1 启用 validate_passwo

Java异常捕获及处理方式详解

《Java异常捕获及处理方式详解》异常处理是Java编程中非常重要的一部分,它允许我们在程序运行时捕获并处理错误或不预期的行为,而不是让程序直接崩溃,本文将介绍Java中如何捕获异常,以及常用的异常处... 目录前言什么是异常?Java异常的基本语法解释:1. 捕获异常并处理示例1:捕获并处理单个异常解释:

DNS查询的利器! linux的dig命令基本用法详解

《DNS查询的利器!linux的dig命令基本用法详解》dig命令可以查询各种类型DNS记录信息,下面我们将通过实际示例和dig命令常用参数来详细说明如何使用dig实用程序... dig(Domain Information Groper)是一款功能强大的 linux 命令行实用程序,通过查询名称服务器并输

python设置环境变量路径实现过程

《python设置环境变量路径实现过程》本文介绍设置Python路径的多种方法:临时设置(Windows用`set`,Linux/macOS用`export`)、永久设置(系统属性或shell配置文件... 目录设置python路径的方法临时设置环境变量(适用于当前会话)永久设置环境变量(Windows系统

Go语言编译环境设置教程

《Go语言编译环境设置教程》Go语言支持高并发(goroutine)、自动垃圾回收,编译为跨平台二进制文件,云原生兼容且社区活跃,开发便捷,内置测试与vet工具辅助检测错误,依赖模块化管理,提升开发效... 目录Go语言优势下载 Go  配置编译环境配置 GOPROXYIDE 设置(VS Code)一些基本

小白也能轻松上手! 路由器设置优化指南

《小白也能轻松上手!路由器设置优化指南》在日常生活中,我们常常会遇到WiFi网速慢的问题,这主要受到三个方面的影响,首要原因是WiFi产品的配置优化不合理,其次是硬件性能的不足,以及宽带线路本身的质... 在数字化时代,网络已成为生活必需品,追剧、游戏、办公、学习都离不开稳定高速的网络。但很多人面对新路由器

关于DNS域名解析服务

《关于DNS域名解析服务》:本文主要介绍关于DNS域名解析服务,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录DNS系统的作用及类型DNS使用的协议及端口号DNS系统的分布式数据结构DNS的分布式互联网解析库域名体系结构两种查询方式DNS服务器类型统计构建DNS域

linux hostname设置全过程

《linuxhostname设置全过程》:本文主要介绍linuxhostname设置全过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录查询hostname设置步骤其它相关点hostid/etc/hostsEDChina编程A工具license破解注意事项总结以RHE

Python设置Cookie永不超时的详细指南

《Python设置Cookie永不超时的详细指南》Cookie是一种存储在用户浏览器中的小型数据片段,用于记录用户的登录状态、偏好设置等信息,下面小编就来和大家详细讲讲Python如何设置Cookie... 目录一、Cookie的作用与重要性二、Cookie过期的原因三、实现Cookie永不超时的方法(一)

怎么用idea创建一个SpringBoot项目

《怎么用idea创建一个SpringBoot项目》本文介绍了在IDEA中创建SpringBoot项目的步骤,包括环境准备(JDK1.8+、Maven3.2.5+)、使用SpringInitializr... 目录如何在idea中创建一个SpringBoot项目环境准备1.1打开IDEA,点击New新建一个项