Python选择网卡发包及接收数据包


Posted in Python onApril 04, 2019

当一台计算机上有多个网卡时,需要选择对应IP地址的网卡进行发送数据包或者接受数据包。

1、选择网卡发包(应用scapy):

plface=conf.route.route("××.××.××.××")[0]
#××.××.××.××为对应网卡网络中存在设备的IP地址。不能是需要发送数据包的网卡的IP地址(会报“result too large”)
pkt=conf.L2socket(plface)
pack_ip,pack_udp,pack_ether=self.udp_pack()
t= str(pack_ether/pack_ip/pack_udp/udp_packdata)
udp_pack = Ether(t)
pkt.send(udp_pack)

2、选择网卡进行包的接收

1)如下方法,只能获得一个网卡的ip地址(选择哪个网卡,优先级未知)

socket.getaddrinfo(socket.gethostname(),None)[-1][4][0]

2)如下方法,可根据ip地址确定网卡:

HOST = socket.gethostbyname(socket.gethostname())
s=socket.socket(socket.AF_INET,socket.SOCK_RAW,socket.IPPROTO_IP)
s.bind((HOST,0))

host可以直接用网卡ip地址代替,这样就可以选择网卡进行包的接受了

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。如果你想了解更多相关内容请查看下面相关链接

Python 相关文章推荐
跟老齐学Python之眼花缭乱的运算符
Sep 14 Python
python根据给定文件返回文件名和扩展名的方法
Mar 27 Python
Python记录详细调用堆栈日志的方法
May 05 Python
python自定义解析简单xml格式文件的方法
May 11 Python
python利用rsa库做公钥解密的方法教程
Dec 10 Python
Python实现针对给定字符串寻找最长非重复子串的方法
Apr 21 Python
Python(TensorFlow框架)实现手写数字识别系统的方法
May 29 Python
Python使用try except处理程序异常的三种常用方法分析
Sep 05 Python
基于Numpy.convolve使用Python实现滑动平均滤波的思路详解
May 16 Python
Python 3 使用Pillow生成漂亮的分形树图片
Dec 24 Python
python with (as)语句实例详解
Feb 04 Python
了解一下python内建模块collections
Sep 07 Python
详解Python的数据库操作(pymysql)
Apr 04 #Python
python dlib人脸识别代码实例
Apr 04 #Python
python图像处理入门(一)
Apr 04 #Python
python爬虫简单的添加代理进行访问的实现代码
Apr 04 #Python
Django项目中添加ldap登陆认证功能的实现
Apr 04 #Python
使用 Python 玩转 GitHub 的贡献板(推荐)
Apr 04 #Python
python中yield的用法详解——最简单,最清晰的解释
Apr 04 #Python
You might like
用PHPdig打造属于你自己的Google[图文教程]
2007/02/14 PHP
最新的php 文件上传模型,支持多文件上传
2009/08/13 PHP
PHP源码之explode使用说明
2011/08/05 PHP
PHP采集腾讯微博的实现代码
2012/01/19 PHP
PHP读取xml方法介绍
2013/01/12 PHP
解析使用ThinkPHP应该掌握的调试手段
2013/06/20 PHP
ThinkPHP查询返回简单字段数组的方法
2014/08/25 PHP
php获取网页里所有图片并存入数组的方法
2015/04/06 PHP
原生Js实现按的数据源均分时间点幻灯片效果(已封装)
2010/12/28 Javascript
js面向对象 多种创建对象方法小结
2012/05/21 Javascript
js关闭浏览器窗口及检查浏览器关闭事件
2013/09/03 Javascript
js导出table数据到excel即导出为EXCEL文档的方法
2013/10/10 Javascript
KnockoutJS 3.X API 第四章之表单submit、enable、disable绑定
2016/10/10 Javascript
jQuery插件FusionCharts绘制2D柱状图和折线图的组合图效果示例【附demo源码】
2017/04/10 jQuery
JScript实现表格的简单操作
2017/08/15 Javascript
vue2.0 路由不显示router-view的解决方法
2018/03/06 Javascript
Vue常见面试题整理【值得收藏】
2018/09/20 Javascript
微信小程序实现图片滚动效果示例
2018/12/05 Javascript
vue中npm包全局安装和局部安装过程
2019/09/03 Javascript
node.js中事件触发器events的使用方法实例分析
2019/11/23 Javascript
python发送HTTP请求的方法小结
2015/07/08 Python
Pycharm在创建py文件时,自动添加文件头注释的实例
2018/05/07 Python
numpy 进行数组拼接,分别在行和列上合并的实例
2018/05/08 Python
Python json模块dumps、loads操作示例
2018/09/06 Python
Python反爬虫伪装浏览器进行爬虫
2020/02/28 Python
scrapy结合selenium解析动态页面的实现
2020/09/28 Python
python time()的实例用法
2020/11/03 Python
中国电子产品外贸网站:MiniIntheBox
2017/02/06 全球购物
怎样创建、运行java程序
2014/08/01 面试题
实习鉴定范文
2013/12/19 职场文书
2014年学习雷锋活动总结
2014/03/01 职场文书
群众路线对照检查材料
2014/09/22 职场文书
党的群众路线教育实践活动教师自我剖析材料
2014/10/09 职场文书
大学生团日活动总结
2015/05/06 职场文书
社团招新宣传语
2015/07/13 职场文书
Java 超详细讲解数据结构中的堆的应用
2022/04/02 Java/Android