我正在尝试使用 scapy 构建一个 MODBUS 数据包, 但 Wireshark 无法识别它。我的意思是,MODBUS 被解释为 TCP 数据。
这是 Scapy 的 python 代码:
from scapy.all import *
class Modbus(Packet):
name = "Modbus/tcp"
fields_desc = [ ShortField("Transaction Identifier", 1),
ShortField("Protocol Identifier", 0),
ShortField("Length", 5),
XByteField("Unit Identifier",0),
]
def make_test():
pkt = TCP(sport=502, dport=502)
return Ether()/IP(src="5.5.5.101",dst="5.5.5.100")/pkt/Modbus()
while True:
send(make_test())
有人知道如何解决它?