python的scapy模块简介

一 点睛

scapy(http://www.secdev.org/projects/scapy/)是一个强大的交互式数据包处理程序,它能够对数据包进行伪造或解包,包括发送数据包、 包嗅探、应答和反馈匹配等功能。可以用在处理网络扫描、路由跟踪、 服务探测、单元测试等方面,可以实现TCP协议方式对服务可用性的探测,比如常用的80(HTTP)与 443(HTTPS)服务,并生成美观的路由线路图报表,让管理员清晰了解探测点到目标主机的服务状态、骨干路由节点所处的IDC位置、经过的运营商路由节点等信息。

二 scapy模块的安装

# scapy模块需要tcpdump程序支持,生成报表需要graphviz、ImageMagick图像处理包支持。

[root@localhost ~]# yum -y install tcpdump graphviz ImageMagick 
[root@localhost ~]# pip install scapy

三 模块常用方法说明

scapy模块提供了众多网络数据包操作的方法,包括发包 send()、SYN\ACK扫描、嗅探sniff()、抓包wrpcap()、TCP路由跟踪traceroute()等。

traceroute()

traceroute(target,dport=80,minttl=1,maxttl=30,sport= ,l4=None,filter=None,timeout=2,verbose=None, **kargs) 

该方法实现TCP跟踪路由功能。 

  • target:跟踪的目标对象,可以是域名或IP,类型为列表,支持同时指定多个目标,如 ["www.qq.com","www.baidu.com","www.google.com.hk"] 
  • dport:目标端口,类型为列表,支持同时指定多个端口,如[80,443]
  • minttl:指定路由跟踪的最小跳数(节点数)
  • maxttl:指定路由跟踪的最大跳数(节点数)

 

你可能感兴趣的:(python)