import socket
import threading
import time activeDegree=dict()
flag=1
def main():
global activeDegree
global glag
#获取本机IP地址
HOST=socket.gethostbyname(socket.gethostbyname())
#创建原始套接字,适用于Windows平台
#对于其他系统,要把socket.IPPROTO_IP替换为socket.IPPROTO_ICMP
s=socket.socket(socket.AF_INET,socket.SOCK_RAW,socket.IPPROTO_IP)
s.bind((HOST,0))
#设置在捕获数据包中含有IP包头
s.setsockopt(socket.IPPROTO_IP,socket.IP_HDRINCL,1)
#启用混杂模式,捕获所有数据包
s.ioctl(socket.SIO_RCVALL,socket.RCVALL_ON)
#开始捕获数据包
while flag:
c=s.recvfrom(65535)
host=c[1][0]
activeDegree[host]=activeDegree.get(host,0)+1
#假设本机ip地址为10.2.1.8
if c[1][0] != '10.2.1.8':
print(c)
#关闭混杂模式
s.ioctl(socket.TIO_RCVALL,socket.RCVALL_OFF)
s.close()
t=threading.Thread(target=main)
t.start()
time.sleep(60)
flag=0
t.join()
for item in activeDegree.items():
print(item)

Python_sniffer(网络嗅探器)的更多相关文章

  1. C语言实现Linux网络嗅探器

    C语言实现Linux网络嗅探器 0x01 实验简介 网络嗅探器是拦截通过网络接口流入和流出的数据的程序.所以,如果你正在浏览的互联网,嗅探器以数据包的形式抓到它并且显示.在本实验中,我们用 C 语言实 ...

  2. 网络嗅探器Wireshark

    http://www.wireshark.org/   About Wireshark Wireshark is the world's foremost network protocol analy ...

  3. tcpdump、nc网络工具使用

    tcpdump: 网络嗅探器 nc: nmap: 端口扫描 混杂模式(promisc) C设置为监控,当A和B通信,C是无法探测到数据的,除非有交换机的权限,将全网端口的数据通信都发送副本到C的端口上 ...

  4. 用C++实现网络编程---抓取网络数据包的实现方法

    一般都熟悉sniffer这个工具,它可以捕捉流经本地网卡的所有数据包.抓取网络数据包进行分析有很多用处,如分析网络是否有网络病毒等异常数据,通信协议的分析(数据链路层协议.IP.UDP.TCP.甚至各 ...

  5. 六款主流免费网络嗅探软件wireshark,tcpdump,dsniff,Ettercap,NetStumbler

    1.WireShark WireShark是一个开源免费的高性能网络协议分析软件,它的前身就是非常著名的网络分析软 件Ethereal.你可以使用它来解决网络疑难问题,进行网络协议分析,以及作为软件或 ...

  6. 网络的基本概念TCP, UDP, 单播(Unicast), 多播(多播)(Multicast)

    章相当低级,但相当重要! 我们周围一切差点儿都依赖于把事情抽象成低等级,并在某一点把它详细化,在一些设计概念中.接口层十分清晰而且目标非常集中,应用程序不用考虑操作系统怎样工作,操作系统也不用考虑硬件 ...

  7. 网络实时流量监控工具iftop---转

    网络实时流量监控工具iftop 分类: LINUX 1.安装依赖软件库 [root@localhost ~]# yum install libpcap libpcap-devel ncurses nc ...

  8. 2018-2019-2 20165215《网络对抗技术》Exp5 MSF基础应用

    目录 实验内容 实验原理 实验步骤 (一)一个主动攻击实践 ms08_067(成功) (二)一个针对浏览器的攻击 ms14_064(成功) (三)一个针对客户端的攻击 Adobe(成功) CVE-20 ...

  9. 1. Packet sniffers (包嗅探器 14个)

    十多年来,Nmap项目一直在编目网络安全社区最喜爱的工具. 2011年,该网站变得更加动态,提供打分,评论,搜索,排序和新工具建议表单. 本网站除了我们维护的那些工具(如Nmap安全扫描器,Ncat网 ...

随机推荐

  1. Java 类加载机制 ClassLoder

    纸上得来终觉浅,绝知此事要躬行  --陆游       问渠那得清如许,为有源头活水来  --朱熹 一个类从被加载到内存中开始到卸载出内存为止,它的整个生命周期包括了:加载(loading).验证(V ...

  2. 在Android中afinal框架下实现sqlite数据库版本升级的办法

    上一篇文章采用的是SQLiteOpenHelper中的onUpgrade方法实现数据库的升级. 首先获取Context: private Context mContext=this; 然后实现Fina ...

  3. inittab文件剖析[CentOS 5.X](第二版)

    inittab文件剖析[CentOS 5.X] grep -v "^#" /etc/inittab | more #过滤掉以#开头的行 inittab文件格式 id:runleve ...

  4. 《java入门第一季》之面向对象面试题(面向对象都做了哪些事情)

    创建对象内存图解.

  5. AP INVOICES IMPORT API(NOT request)

    PROCEDURE process_cux_to_ap(x_return_status OUT NOCOPY VARCHAR2, x_msg_count OUT NOCOPY NUMBER, x_ms ...

  6. UML之时序图

            时序图,英文名曰:Sequence Diagram,也称顺序图和序列图,是一种行为图,她通过描述对象之间发送消息的时间顺序显示多个对象之间的动态协作.她可以表示用例的行为顺序,当执行一 ...

  7. BezierDemo开源项目的学习

    多看多学涨姿势,no zuo nuo die做暖男 1.概述 国际惯例,首先感谢一下开源作者. 这个项目主要是实现实现qq红点拖拽的效果 地址在https://github.com/chenupt/B ...

  8. 【算法编程】基于Miller-Rabin的大素数测试

    基本原理: 费尔马小定理:如果p是一个素数,且0<a<p,则a^(p-1)%p=1.        利用费尔马小定理,对于给定的整数n,可以设计素数判定算法,通过计算d=a^(n-1)%n ...

  9. OpenCV 矩形轮廓检测

    转载请注明出处:http://blog.csdn.net/wangyaninglm/article/details/44151213, 来自:shiter编写程序的艺术 基础介绍 OpenCV里提取目 ...

  10. ubuntu12.04:Tomcat 7服务器:手动安装

    1.下载tomcat7.0.34. 网址:http://tomcat.apache.org/ 2.下载的文件解压在下载: 进入目录: cd /usr/local 创建目录 : sudo mkdir d ...