首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否有用于构建网络协议头的封装软件?

是否有用于构建网络协议头的封装软件?
EN

Software Recommendation用户
提问于 2020-09-30 08:34:41
回答 1查看 17关注 0票数 1

是否有用于构建网络协议头的封装软件?

看到我的代码,我可以使用struct.pack()来构造ICMP数据包。

代码语言:javascript
复制
import socket
import struct

rawsocket = socket.socket(socket.AF_INET, socket.SOCK_RAW, socket.getprotobyname('icmp'))
packet = struct.pack('!BBHHH13s', 8, 0, 0, 1, 0, b'qasdssdehello')
chksum = checksum(packet)

但是,我认为它是复杂和难以使用的,是否有任何开放源代码的封装struct?这样我就可以很容易地构造一个协议包。

EN

回答 1

Software Recommendation用户

发布于 2020-10-01 14:41:01

斯卡皮是允许以高级方式构造网络数据包的库:

ICMP ping示例

可以使用以下命令模拟ICMP Ping : ans,unans =sr(IP(dst=“192.168.1.1-254”)/ICMP(),可以通过以下请求收集有关活动主机的信息: ans.summary(lambda,r: r.sprintf("%IP.src%是活着的“))

票数 2
EN
页面原文内容由Software Recommendation提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwarerecs.stackexchange.com/questions/76264

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档