python

Python模拟抓包工具怎么用

小亿
116
2023-10-16 14:42:21
栏目: 编程语言

要使用Python来模拟抓包工具,可以使用scapy库。下面是一个简单的示例代码,演示了如何使用Python和scapy来模拟抓包工具:

from scapy.all import *
def packet_handler(packet):
if packet.haslayer(TCP):
src_ip = packet[IP].src
dst_ip = packet[IP].dst
src_port = packet[TCP].sport
dst_port = packet[TCP].dport
print(f"Source IP: {src_ip}, Destination IP: {dst_ip}")
print(f"Source Port: {src_port}, Destination Port: {dst_port}")
# 使用sniff函数进行抓包,参数count表示要捕获的数据包数量
sniff(filter="tcp", prn=packet_handler, count=10)

在上面的代码中,我们首先导入了scapy库,然后定义了一个packet_handler函数来处理捕获到的数据包。在这个示例中,我们只处理TCP数据包,并打印出源IP、目标IP、源端口和目标端口。

最后,我们使用sniff函数来开始捕获数据包。filter参数可以用于过滤数据包,prn参数指定了捕获到数据包时要调用的处理函数,count参数指定了要捕获的数据包数量。

运行这个示例代码后,它将开始捕获数据包,并将打印出每个捕获到的TCP数据包的源IP、目标IP、源端口和目标端口。你可以根据需要自定义packet_handler函数来处理数据包。

0
看了该问题的人还看了