首先,我是python的初学者.我利用在第2层运行的PF_PACKET接口开发了一个简单的原始数据包嗅探器.

嗅探器只是找出以下内容…

-以太网头(源-目标-协议)

-IP标头(源IP-目标IP)

-TCP标头(源端口-目标端口)

这是我到目前为止编写的代码…

#!/usr/bin/env python

import struct

import socket

import binascii

rawSocket=socket.socket(socket.PF_PACKET,socket.SOCK_RAW,socket.htons(0x0800))

#ifconfig eth0 promisc up

receivedPacket=rawSocket.recv(2048)

#Ethernet Header...

ethernetHeader=receivedPacket[0][0:14]

ethrheader=struct.unpack("!6s6s2s",ethernetHeader)

destinationIP= binascii.hexlify(ethrheader[0])

sourceIP= binascii.hexlify(ethrheader[1])

protocol= binascii.hexlify(ethrheader[2])

print "Destinatiom: " + destinationIP

print "Souce: " + sourceIP

print "Protocol: "+ protocol

#IP Header...

ipHeader=receivedPacket[0][14:34]

ipHdr=struct.unpack("!12s4s4s",ipHeader)

destinationIP=socket.inet_ntoa(ipHdr[2])

print "Source IP: " +sourceIP

print "Destination IP: "+destinationIP

#TCP Header...

tcpHeader=receivedPacket[0][34:54]

tcpHdr=struct.unpack("!2s2s16s",tcpHeader)

sourcePort=socket.inet_ntoa(tcpHdr[0])

destinationPort=socket.inet_ntoa(tcpHdr[1])

print "Source Port: " + sourcePort

print "Destination Port: " + destinationPort

我似乎在以太网头部分和无法弄清的解压缩方法中遇到了问题.提前致谢 :)

python嗅探器_Python中的简单原始数据包嗅探器相关推荐

  1. python推荐_Python中一个简单的基于内容的推荐引擎

    假设,我们需要为一个电子商务网站建立一个推荐引擎. 基本上,你有两种方法:基于内容和协同过滤.我们将看看每种方法的优缺点,然后深入一个基于内容的引擎的一个简单的实现(准备在Heroku之上部署!). ...

  2. python调用r语言加载包错误_Python中调用R语言包指南.docx

    Python中调用R语言包指南R语言是非常强大的做统计分析和建模方面的开源软件,它有非常丰富的统计软件包,做统计可以说只有你想不到的,没有R办不到的.Python又是当下最流行的编程软件之一,Pyth ...

  3. python绝对值编程_python中取绝对值简单方法总结

    python如何使用绝对值?下面给大家介绍三种求绝对值的方法: import math def abs_value1(): a = float(input('1.请输入一个数字:')) if a &g ...

  4. python求绝对值_python中取绝对值简单方法总结

    python如何使用绝对值?下面给大家介绍三种求绝对值的方法: import math def abs_value1(): a = float(input('1.请输入一个数字:')) if a &g ...

  5. python中绝对值怎么表示_python中取绝对值简单方法总结

    python如何使用绝对值?下面给大家介绍三种求绝对值的方法: import math def abs_value1(): a = float(input('1.请输入一个数字:')) if a &g ...

  6. python加绝对值_python中取绝对值简单方法总结

    python如何使用绝对值?下面给大家介绍三种求绝对值的方法: import math def abs_value1(): a = float(input('1.请输入一个数字:')) if a &g ...

  7. 绝对值在python中怎么打出来_python中取绝对值简单方法总结

    python中取绝对值简单方法总结,绝对值,请输入,数字,值为,方法 python中取绝对值简单方法总结 易采站长站,站长之家为您整理了python中取绝对值简单方法总结的相关内容. python如何 ...

  8. python标准化_python中标准化

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! sdk 3.0 实现了统一化,各个语言版本的 sdk具备使用方法相同.接口调用方 ...

  9. python字符集_PYTHON 中的字符集

    Python中的字符编码是个老生常谈的话题,今天来梳理一下相关知识,希望给其他人些许帮助. Python2的 默认编码 是ASCII,不能识别中文字符,需要显式指定字符编码:Python3的 默认编码 ...

  10. python参数化_Python 中如何实现参数化测试的方法示例

    之前,我曾转过一个单元测试框架系列的文章,里面介绍了 unittest.nose/nose2 与 pytest 这三个最受人欢迎的 Python 测试框架. 本文想针对测试中一种很常见的测试场景,即参 ...

最新文章

  1. 寒冰linux视频教程笔记8 系统监控
  2. 第十六届全国大学生智能车竞赛线上赛点赛道审核 - 浙江赛区
  3. ipython notebook主题背景颜色更改
  4. class ts 扩展方法_如使用Typescript撸Vue(Vue2 + TS +TSX+CSS module)
  5. 小程序存emoji表情 不改变数据库
  6. 进程死锁的危害、导致原因和解决方法
  7. s:textfield format date
  8. nyoj-68--三点顺序
  9. 智能合约语言 Solidity 教程系列8 - Solidity API
  10. Mac下安装event库
  11. Android App界面和流畅度优化
  12. Seek the Name, Seek the Fame - POJ 2752(next运用)
  13. 未来:互联网+数字经济,智慧零售到底智慧在哪儿?
  14. 解决办法:不在sudoers文件中此事将被报告
  15. 小米手机鸿蒙开机动画,华为“鸿蒙”来了!开机动画美炸了,用PPT一分钟就搞定...
  16. 基于Python的RRT算法实现
  17. 重装电脑xp系统找不到服务器,技术员为你解答XP系统提示“没有启动服务器服务”的修复方案...
  18. 各国语言缩写-各国语言简称,世界各国域名缩写
  19. 长连接、短连接和心跳(有图有案例)
  20. 冬至幻灵怎么修改服务器名字,冬至幻灵如何给自己加元宝

热门文章

  1. Hadoop MapReduce实现人员二度关系运算
  2. 太帅了!钟楚曦这件老爹裤A到炸裂,一般人可穿不出这种范
  3. Oracle RAC原理
  4. matlab屏保弹球,连续时间下的弹球建模
  5. 如何用python爬取下载微博视频_程序员徒手用python教你爬取新浪微博,一天可抓取 1300 万条数据...
  6. 学英语《每日一歌》之Traveling Light
  7. Chi-Plots和Kendall Plots
  8. excel之天数转年月日
  9. 华大单片机开发板HC32L13X上手入门
  10. c语言程序设计对称字符串,清华大学C语言程序设计 L13_字符串精选.pdf