struct 理论学习网站:https://www.liaoxuefeng.com/wiki/897692888725344/923056128128864
以一个例子的解决为线索:
已知 ip+udp 字符串码流如下,根据协议,解出各个字段值
import struct
ip_and_udp_buf = '4500011052bb00000111fdc20a680a37ef53646dd690824b00fcf391'
1. 了解IP头和UDP头结构
(1)IP头
IP header固定字节共占据20字节:
class IpHeader(object):
def __init__(self):
self.versionAndLen=None # 4bit version 4bit header length
self.tos=None # 8bit type of service
self.tolalLen = None # 16bit total length
self.identification =None # 16bit