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实现矩阵乘法的方法
Jun 28 Python
简述Python中的进程、线程、协程
Mar 18 Python
Python制作刷网页流量工具
Apr 23 Python
Anaconda2下实现Python2.7和Python3.5的共存方法
Jun 11 Python
Python操作word常见方法示例【win32com与docx模块】
Jul 17 Python
python ddt数据驱动最简实例代码
Feb 22 Python
Python中注释(多行注释和单行注释)的用法实例
Aug 28 Python
解决python Jupyter不能导入外部包问题
Apr 15 Python
Python Scrapy多页数据爬取实现过程解析
Jun 12 Python
Python实时监控网站浏览记录实现过程详解
Jul 14 Python
Python数据可视化之绘制柱状图和条形图
May 25 Python
总结Python连接CS2000的详细步骤
Jun 23 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
第十四节--命名空间
2006/11/16 PHP
php去除换行符的方法小结(PHP_EOL变量的使用)
2013/02/16 PHP
php计算整个mysql数据库大小的方法
2015/06/19 PHP
PHP的命令行命令使用指南
2015/08/18 PHP
php截取视频指定帧为图片
2016/05/16 PHP
PHP入门教程之面向对象的特性分析(继承,多态,接口,抽象类,抽象方法等)
2016/09/11 PHP
js 无提示关闭浏览器页面的代码
2010/03/09 Javascript
纯javascript模仿微信打飞机小游戏
2015/08/20 Javascript
第三章之Bootstrap 表格与按钮功能
2016/04/25 Javascript
jQuery简单实现iframe的高度根据页面内容自适应的方法
2016/08/01 Javascript
jQuery.ajax实现根据不同的Content-Type做出不同的响应
2016/11/03 Javascript
Vue2.0父组件与子组件之间的事件发射与接收实例代码
2017/09/19 Javascript
原生JS实现ajax与ajax的跨域请求实例
2017/12/01 Javascript
VUEX 数据持久化,刷新后重新获取的例子
2019/11/12 Javascript
Python的Flask开发框架简单上手笔记
2015/11/16 Python
Python 内置函数complex详解
2016/10/23 Python
Python中二维列表如何获取子区域元素的组成
2017/01/19 Python
Python多线程实现同步的四种方式
2017/05/02 Python
django数据库migrate失败的解决方法解析
2018/02/08 Python
深入理解Python爬虫代理池服务
2018/02/28 Python
python实现基于信息增益的决策树归纳
2018/12/18 Python
Python 数据库操作 SQLAlchemy的示例代码
2019/02/18 Python
Python 如何查找特定类型文件
2020/08/17 Python
python3中for循环踩过的坑记录
2020/12/14 Python
CSS中几个与换行有关的属性简明总结
2014/04/15 HTML / CSS
英国Amara家居法国网站:家居装饰,现代装饰和豪华礼品
2016/12/15 全球购物
澳大利亚最好的电动自行车:Leon Cycle
2020/12/19 全球购物
JACK & JONES荷兰官网:男士服装和鞋子
2021/03/07 全球购物
this关键字的含义
2015/04/08 面试题
linux比较文件内容的命令是什么
2015/09/23 面试题
银行求职信怎么写
2014/05/26 职场文书
委托书格式
2014/08/01 职场文书
家长会开场白和结束语
2015/05/29 职场文书
建立共青团委员会的请示
2019/04/02 职场文书
小学生六年级作文之关于感恩
2019/08/16 职场文书
公历12个月名称的由来
2022/04/12 杂记