用scapy解析geneve包

时间:2017-09-22 00:08:14

标签: python wireshark scapy

我正在尝试使用scapy来解析我的pcap文件中的geneve数据包,但我只是将其作为Raw获取。

我从这里克隆scapy geneve: https://github.com/p4lang/scapy-vxlan

遵循README的安装步骤,

-bash-4.2$ scapy
Welcome to Scapy (2.2.0-dev)
>>> load_contrib('geneve')
>>> a=rdpcap("geneve.pcap")
>>> len(a)
15
>>> pkt=a[3]
>>> pkt.show()
###[ Ethernet ]###
  dst= 00:00:00:11:01:01
  src= 00:00:00:00:00:00
  type= n_802_1Q
###[ 802.1Q ]###
     prio= 0
     id= 0
     vlan= 1000
     type= IPv4
###[ IP ]###
        version= 4
        ihl= 5
        tos= 0x0
        len= 197
        id= 0
        flags= DF
        frag= 0
        ttl= 64
        proto= udp
        chksum= 0xe3fb
        src= 22.22.22.1
        dst= 21.21.21.1
        \options\
###[ UDP ]###
           sport= flirtmitmir
           dport= 6081
           len= 177
           chksum= 0x0
###[ Raw ]###
              load= '\t\x00eX\xe3\x03\xe8\x00\x01\x03\x02\x08\x00d\x00\x00\x06\x83\xc1\x9a\xb6;\x04\x00\x00\x00\x80\x00\x00\x00\x00\x02\x90\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x02\x81\x00\x03\xe8\x08\x00E\x00\x00k\x00\x00\x00\x00@=zW\x00\x00\x00\x00\x00\x00\x00\x00\xa9-!\xd0`\x00\x00\x00\x08\t\n\x0b\x05\xa1H\x8e\x00C\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRST\xd8\xe9'
###[ Padding ]###
                 load= '`Jy\xa6'

1 个答案:

答案 0 :(得分:1)

您隐藏了有趣的图层,这些图层可以解释您的数据包未被解码为GENEVE()图层的原因。

由于此fork基于一个非常古老的Scapy版本,我建议您从the official repository获取Scapy,只需从您正在使用的存储库中添加contrib file即可。如果您需要此协议,您还可以在Scapy中创建一个拉取请求,以便与Scapy集成(并支持)此协议。