第二次作业

发布时间 2023-08-02 21:00:48作者: 隔壁老王fzu
这个作业属于哪个课程 https://edu.cnblogs.com/campus/fzu/2023summer
这个作业要求在哪里 https://edu.cnblogs.com/campus/fzu/2023summer/homework/12995
这个作业的目标 学习使用scapy进行数据包的构造,发送,接收 学习并使用count-min sketch算法

一.使用scapy工具实现数据包的构造、发送和接收
先在发送端(192.168.11.3)构造数据包,接收端为192.168.11.2
from scapy.all import *
//目标IP地址和端口
receiver_ip = "192.168.11.2" receiver_port = 12345
packet = IP(dst=receiver_ip)/UDP(dport=receiver_port)/Raw(load="FZU_laowang")
send(packet)

构造一个UDP数据包并发送

在接收端准备了两个接收工具,分别是scapy和wireshark

1)scapy

先写接收脚本

点击查看代码
from scapy.all import *
//监听的IP地址和端口
receiver_ip = "192.168.11.2"
receiver_port = 12345
//定义回调函数处理接收到的数据包
def packet_handler(packet):
    if packet.haslayer(Raw):
        data = packet[Raw].load.decode()
        print("Received data:", data)
sniff(iface= 'ens33',filter=f"udp and host {receiver_ip} and port {receiver_port}", prn=packet_handler)<details>

发送接收都成功了

2>wireshark


发送并成功接收