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使用os模块和fileinput模块来操作文件目录
Jan 19 Python
python将文本中的空格替换为换行的方法
Mar 19 Python
python绘制直线的方法
Jun 30 Python
数据清洗--DataFrame中的空值处理方法
Jul 03 Python
python实现图片批量压缩程序
Jul 23 Python
python绘制彩虹图
Dec 16 Python
Python谱减法语音降噪实例
Dec 18 Python
python异常处理try except过程解析
Feb 03 Python
Python的Django框架实现数据库查询(不返回QuerySet的方法)
May 19 Python
Python3.9 beta2版本发布了,看看这7个新的PEP都是什么
Jun 10 Python
python matplotlib绘制三维图的示例
Sep 24 Python
Python控制鼠标键盘代码实例
Dec 08 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
PHP 数组基本操作小结(推荐)
2016/06/13 PHP
PHP实现的敏感词过滤方法示例
2019/03/06 PHP
JSON 学习之完全手册 图文
2007/05/29 Javascript
Jquery判断IE6等浏览器的代码
2011/04/05 Javascript
js中的string.format函数代码
2020/08/11 Javascript
使用原生javascript创建通用表单验证——更锋利的使用dom对象
2011/09/13 Javascript
使用js写的一个简易的投票
2013/11/27 Javascript
php和js对数据库图片进行等比缩放示例
2014/04/28 Javascript
纯javascript判断查询日期是否为有效日期
2015/08/24 Javascript
js生成随机数(指定范围)的实例代码
2016/07/10 Javascript
EasyUI的doCellTip实现鼠标放到单元格上提示单元格内容
2016/08/24 Javascript
jQuery实现的瀑布流加载效果示例
2016/09/13 Javascript
vue.js学习笔记之绑定style样式和class列表
2016/10/31 Javascript
关于JavaScript中的this指向问题总结篇
2017/07/23 Javascript
arcgis for js栅格图层叠加(Raster Layer)问题
2017/11/22 Javascript
Auto.js自动收取自己和好友蚂蚁森林能量脚本
2018/06/28 Javascript
Websocket 向指定用户发消息的方法
2020/01/09 Javascript
JS错误处理与调试操作实例分析
2020/04/13 Javascript
在vue中使用Echarts利用watch做动态数据渲染操作
2020/07/20 Javascript
查找Vue中下标的操作(some和findindex)
2020/08/12 Javascript
vue中使用router全局守卫实现页面拦截的示例
2020/10/23 Javascript
Python解惑之True和False详解
2017/04/24 Python
你真的了解Python的random模块吗?
2017/12/12 Python
python SSH模块登录,远程机执行shell命令实例解析
2018/01/12 Python
Python3搭建http服务器的实现代码
2020/02/11 Python
Flask中sqlalchemy模块的实例用法
2020/08/02 Python
美国知名珠宝首饰品牌:Gemvara
2017/10/06 全球购物
教师师德教育的自我评价
2013/10/31 职场文书
结婚喜宴家长答谢词
2014/01/15 职场文书
第一批党的群众路线教育实践活动总结报告
2014/07/03 职场文书
党员个人对照检查材料思想汇报
2014/09/16 职场文书
2014乡镇班子个人对照检查材料思想汇报
2014/09/26 职场文书
群众路线剖析材料(四风问题)
2014/10/08 职场文书
圣贤教育改变命运观后感
2015/06/16 职场文书
浅谈sql_@SelectProvider及使用注意说明
2021/08/04 Java/Android
HTML页面点击按钮关闭页面的多种方式
2022/12/24 HTML / CSS