【原创】scapy简单教程
2013-11-29 by muzi如果你是网络研究的爱好者,有一个工具是对你很有用的,那就是scapy!
scapy能够封装出目前网络上绝大多数(不确定是不是全部)的数据包,如IP,ARP,ICMP。有了这些数据包,你再也不需要为如何产生某些数据包而烦恼了。
首先我们需要先安装scapy
具体可以自行google,baidu,或者查看:http://www.secdev.org/projects/scapy/doc/installation.html
构建一个简单的IP包
ip_paket = IP(dst = '10.0.0.1')
这样你就可以构造出一个IP包了。括弧里面填写的内容就是相关字段的内容。
查看字段
如果你想知道有那些字段,那么你就需要用到ls()命令。如:
ls(IP)
运行结果:
ls在scapy中可以直接对任何结构体进行解析。可以把数据包的内容展现在你面前。
我们还可以直接查看某一个字段
Payload为数据包的净荷,可以由以下的代码可以查看payload。
我们继续感受一下scapy的便捷。
我们也可以看看scapy的封装解封装能力!
数据包的发送与接收:
我们可以发现第一次发送的时候,在选路过程中,收到了27个数据包回复。接下来就越来越少,最后只剩下一个了。
我们可以看到是echo_reply的类型。
原创作品,转载请说明。