C++语言解析协议包

桥盛 发布于 2013/05/21 11:37
阅读 1K+
收藏 0

这是wireshark抓的NTP协议包,另存为c arrays (packet bytes)(*.c)类型。如何编写C++语言读取该文件,并从中读取协议相关信息:版本,地址等相关信息。

char pkt1[] = {
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x0c,
0x29, 0x3f, 0xc0, 0xcf, 0x08, 0x06, 0x00, 0x01,
0x08, 0x00, 0x06, 0x04, 0x00, 0x01, 0x00, 0x0c,
0x29, 0x3f, 0xc0, 0xcf, 0xc0, 0xa8, 0xfd, 0x96,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xa8,
0xfd, 0x97 };

char pkt2[] = {
0x00, 0x0c, 0x29, 0x3f, 0xc0, 0xcf, 0x00, 0x0c,
0x29, 0x1f, 0x39, 0x69, 0x08, 0x06, 0x00, 0x01,
0x08, 0x00, 0x06, 0x04, 0x00, 0x02, 0x00, 0x0c,
0x29, 0x1f, 0x39, 0x69, 0xc0, 0xa8, 0xfd, 0x97,
0x00, 0x0c, 0x29, 0x3f, 0xc0, 0xcf, 0xc0, 0xa8,
0xfd, 0x96 };


加载中
0
Tocy
Tocy
NTP协议有负载形式的,按照定义基本可以搞定。
0
L5_Railgun
L5_Railgun

定义NTP协议结构,定义一个指针变量,再把wireshark抓到的数据强制转换然后赋值给指针。

就可以解析了

返回顶部
顶部