可编程网络实验室2023暑期纳新——第二次作业
可编程网络实验室2023暑期纳新 | <班级的链接> |
---|---|
作业要求 | <作业要求的链接> |
作业目标 | <学习并使用scapy工具和count-min sketch算法> |
代码已上传至Github
一、scapy工具实现数据包的构造、发送和接收
首先在发送端构造数据包并发送
点击查看代码
from scapy.all import *
dst_ip = "192.168.163.133" #接受方ip
src_ip = "192.168.163.129" #发送方ip
packet = IP(src=src_ip,dst=dst_ip)/UDP(sport=12345,dport=54321)/Raw(load="Hello")
send(packet)
接下来在接收端接收数据包
点击查看代码
from scapy.all import *
dst_ip = 192.168.163.133
dst_port = 54321
def packet_handler(packet):
if packet.haslayer(Raw):
data = packetl[Raw].load.decode()
print(f"Received: {datal}")
filter_rule = f"udp and dst host {dst_ip} and port {dst_port}"
sniff(filter=filter_rule, prn=packet_handler)
运行程序,接收端成功接收到数据包
三、遇到的问题
发送数据包时警告:提示WARNING: No route found (no default route?)
解决方法:安装Npcap
四、生活区问答题
Q:在人生道路上,你有没有专长的技能获取的成功经验?
A:多学,多想,多问,独立思考,坚持
Q:你有什么技能比大多数人(70%以上)更好?
A:感觉我的数学勉强可以达到70%的门槛,有在数学竞赛中获得过一些奖项
Q:你是如何学习C语言的,与你的高超技能相比,C语言的学习有什么经验和教训?
A:当时跟着参考书学习,然后在网上找一些练习写,遇到不会的题目先参考答案写一遍,过几天再独立写一次。