python 抓包基于pypcap

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

1、查询python和python-dev是否安装

dpkg-query -l python
dpkg-query -l python-dev
#没安装就先安装
sudo apt-get install python python-dev

2、安装flex和bison

sudo apt-get install flex bison

3、下载libpcap并安装

#下载地址 首页 http://www.tcpdump.org/
sudo wget http://www.tcpdump.org/release/libpcap-1.8.1.tar.gz
#安装(中间可能会有警告,但是不影响)
sudo tar -zxvf libpcap-1.8.1.tar.gz
cd libpcap-1.8.1/
sudo ./configure
sudo make
sudo make install

4、下载并安装pypcap

#下载地址 首页 https://pypi.python.org/pypi/pypcap
sudo wget https://pypi.python.org/packages/83/25/dab6b3fda95a5699503c91bf722abf9d9a5c960a4480208e4bad8747dd0c/pypcap-1.1.5.tar.gz#md5=4d762f3293d9d41a787ef753530e0d0c
sudo tar -zxvf pypcap-1.1.5.tar.gz 
cd pypcap-1.1.5/
sudo python setup.py install #中间会有很多警告,但是不影响

5、测试

#进入python命令行
>>> import pcap 
Traceback (most recent call last):File "<stdin>", line 1, in <module>File "build/bdist.linux-x86_64/egg/pcap.py", line 7, in <module>File "build/bdist.linux-x86_64/egg/pcap.py", line 6, in __bootstrap__
ImportError: libpcap.so.1: cannot open shared object file: No such file or directory
>>> 
#如果没有报错就表示安装完成,我在centos上没有问题,但是ubuntu上就有问题,在执行如下操作,
#注意必须是root用户模式下执行,sudo没有用,需要su登录
$ locate libpcap.so.1 #查询文件位置
/usr/lib/x86_64-linux-gnu/libpcap.so.1.7.4
$ cd /etc/ld.so.conf.d/
$ echo "# libpcap default configuration" >> libpcap.conf
$ echo "/usr/lib/x86_64-linux-gnu/libpcap.so.1.7.4" >> libpcap.conf
$ ldconfig

写一个测试test.py

#!/usr/bin/python
# -*- coding: UTF-8 -*-
# 测试 pypcapimport pcappc=pcap.pcap()    #注,参数可为网卡名,如eth0
pc.setfilter('tcp')    #设置监听过滤器,如tcp port 80for ptime,pdata in pc:    #ptime为收到时间,pdata为收到数据print ptime,pdata    #...
$ sudo python test.py #当然这些都是没有解包的数据,buffer(内存)
1483629320.81 �� q�4#�iTE(�e@@ �����ps��p�` � ����SP-P �h�
1483629322.85 �� q�4#�iTE4x�@@ �f���p<��0P���,E� ~�  >��  4L�
1483629322.85 �� q�4#�iTE4 �@@ �����peɩ�ƒ ������  ��  k�A  6߿
1483629322.85 �� q�4#�iTE4 �@@ HY���puz� �P6��  �
��  �  

上面这样就表示抓包成功了,当然接下去就要解包了,这个时候要找一本关于网络协议的书,我看的是tcp-ip详解,这样边看边学应该会更好

 

 

 

转载于:https://my.oschina.net/u/2607780/blog/819588

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/291766.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

推荐一个基于Dapr的 Red Dog 的完整微服务应用程序

微服务尽管构建起来非常困难&#xff0c;但它们已成为一种越来越流行的架构模式。随着开发人员开始将他们现有的单体代码库迁移到微服务系统&#xff0c;他们花费大量时间来处理分布式应用程序带来的固有挑战&#xff0c;例如状态管理和服务调用。通过引入Dapr 通过以 http/gRP…

基于事件的 NIO 多线程服务器

2019独角兽企业重金招聘Python工程师标准>>> JDK1.4 的 NIO 有效解决了原有流式 IO 存在的线程开销的问题&#xff0c;在 NIO 中使用多线程&#xff0c;主要目的已不是为了应对每个客户端请求而分配独立的服务线程&#xff0c;而是通过多线程充分使用用多个 CPU 的处…

第6章 C控制语句:循环

学习笔记——《C Prime Plus》 第6章 C控制语句&#xff1a;循环6.1 再探 while 循环6.1.1 程序注释6.1.2 C风格读取循环6.2 while 语句6.2.1 终止 while 循环6.2.2 何时终止循环6.2.3 while&#xff1a;入口循环条件6.2.4 语法要点6.3 _Bool 类型6.4 不确定循环和计数循环6.5 …

openresty 前端开发进阶一之http后端

2019独角兽企业重金招聘Python工程师标准>>> 做前端开发&#xff0c;大多数情况下&#xff0c;都需要跟后端打交道&#xff0c;而最常见的方式则是通过http请求&#xff0c;进行通信。 在openresty中&#xff0c;通过http跟后端整合通信的方式又很多种&#xff0c;各…

第7章 C控制语句:分支和跳转

学习笔记——《C Prime Plus》 第7章 C控制语句&#xff1a;分支和跳转7.1 if 语句7.2 if else 语句7.2.1 介绍 getchar() 和 putchar()7.4 一个统计单词的程序7.1 if 语句 下程序读取一列数据&#xff0c;每个数据都表示每日的最低温度&#xff08;℃&#xff09;&#xff0c…

【Blog.Core开源】网关统一集成下游服务文档

一般看到公众号更新&#xff0c;就是大概率要开始上班了&#x1f602;上回书咱们说到了《【Blog.Core开源】快速预览Admin界面效果》&#xff0c;这样我们就可以专注于后端开发&#xff0c;而且也能快速的实现效果的预览。那今天我们继续来往下走&#xff0c;说一说网关相关的内…

android4.3 截屏功能的尝试与失败分析

1.背景 上一篇讲了在源码中捕获到了android手机的截屏函数&#xff08;同时按下电源键与音量减&#xff0c;详情http://blog.csdn.net/buptgshengod/article/details/19911909&#xff09;&#xff0c;经过一周的研究还是没有在手机上实现系统截屏功能&#xff0c;总结下尝试的…

numpy方法总结

2019独角兽企业重金招聘Python工程师标准>>> 一、数组方法 创建数组&#xff1a;arange()创建一维数组&#xff1b;array()创建一维或多维数组&#xff0c;其参数是类似于数组的对象&#xff0c;如列表等 反过来转换则可以使用numpy.ndarray.tolist()函数&#xff0…

阿里云离线数据仓库

阿里云离线数据仓库第1章 数据仓库概念第2章 项目需求及架构设计2.1 项目需求分析2.2 阿里云技术框架2.2.1 技术选型2.2.2 系统数据流程设计第3章 数据生成模块3.1 埋点数据基本格式3.2 事件日志数据3.2.1 商品列表页&#xff08;loading&#xff09;3.2.2 商品曝光&#xff08…

技术分享 | 混合云模式下SaaS端前端最佳实践

导读&#xff1a;集成开放平台采用的是混合云部署架构&#xff0c;包含两个大的组件&#xff0c;管理控制台和引擎。管理控制台是SaaS的&#xff0c;部署在公有云&#xff0c;按租户隔离。引擎部署在客户私有云。一套SaaS版的管理控制台如何适配不同客户的引擎&#xff0c;本文…

记一则Hadoop DataNode OOM故障,以及解决方案

一、故障症状最近公司一个集群跑大任务时&#xff0c;datanode日志报DataXceiveServer: Exiting due to:java.lang.OutOfMemoryError: unable to create new native thread异常&#xff0c;然后计算节点上的DataNode直接挂掉。DataNode异常日志截图如下&#xff1a;2014-03-06 …

阿里云实时数据仓库

阿里云实时数据仓库——学习笔记 课程目标 学习搭建一个实时数据仓库&#xff0c;掌握数据采集、存储、计算、输出、展示等整个业务流程。整个实时数据仓库系统是在阿里云架构上搭建&#xff0c;掌握并学会运用各个服务组件&#xff0c;及各个组件之间如何联动。前置知识要求&…

手动挡五个档位示意图_汽车档位越多越好?听听专业回答

如今的汽车市场百花齐放&#xff0c;汽车厂商们也不断在研发过程中寻找不同的突破口&#xff0c;其中汽车变速器的档位变化就是众多汽车品牌当做噱头的重点&#xff0c;不知从什么时候开始&#xff0c;自动变速箱档位数量变多成为了深受汽车品牌喜爱的突破点&#xff0c;渐渐的…

Android之用netcfg命令获取手机虚拟网卡tun0的信息

1、在终端输入下面命令 adb shell adb netcfg 2、展示结果 3、使用总结 我们得到手机 tun0 地址为10.1.102.11 然后在vpn后台&#xff0c;我们先找到是哪个tun&#xff0c;我们可以使用ip route命令ip route show table2 这个允许结果就是 地址 哪个tun比如我们得到是tun2 然…

C# 基于事件的异步模式

点击蓝字 关注我们开工大吉EventBasedAsyncPattern 方法使用了基于事件的异步模式。这个模式定义了一个带有 “Async” 后缀的方法。示例代码再次使用了WebClient 类。对于同步方法DownloadString&#xff0c;WebClient类提供了一个异步变体方法 DownloadStringAsync。当请求完…

Tomcat 下 Memcached 集群与 Terracotta 集群比较

总结&#xff1a;Terracotta 集群配置要比Memcached 集群简单&#xff0c;但Terracotta 集群启动的速度要比Memcached 集群慢&#xff0c;性能Terracotta 集群要比Memcached 集群好。但性能都好不过weblogic单机的性能&#xff01;&#xff01; Terracotta 集群效果图如下&…

IDEA简单配置教程

IDEA简单配置教程 ——做好前期配置工作&#xff0c;后期少走弯路。 创建模块(Module) 设置(Settings) 设置主题 窗体及菜单字体及大小 设置编辑区主题 通过插件(plugins)更换主题 设置鼠标滚轮修改字体大小 设置鼠标悬浮提示 设置自动导包功能 显示行号和方法间的分隔符 忽略…

MariaDB Spider 数据库分库分表实践 分库分表

分库分表一般来说&#xff0c;数据库分库分表&#xff0c;有以下做法&#xff1a;按哈希分片&#xff1a;根据一条数据的标识计算哈希值&#xff0c;将其分配到特定的数据库引擎中&#xff1b;按范围分片&#xff1a;根据一条数据的标识&#xff08;一般是值&#xff09;&#…

【树莓派】配置介绍

网络是个好东西&#xff0c;好多同学分享的博文&#xff0c;极大的方便我们学习&#xff0c;谢谢~ 1、初始化配置树莓派 装上新系统&#xff0c;连接到树莓派后&#xff0c;一切都是新的&#xff0c;需要配置树莓派的一些选项。 使用putty连接到树莓派后&#xff0c;输入指令su…

C语言之函数指针和函数的首地址

1、爆简单的代码 因为容易忘记&#xff0c;还是再记录一次吧。 2、展示结果 至于函数指针用法&#xff0c;一眼便知对于add和&add你应该这样理解&#xff0c;add是函数的首地址&#xff0c;它的类型是void ()&#xff0c;&add表示一个指向函数add这个对象的地址&#x…