标签: c sockets dhcp
我正在尝试在C中编写数据包嗅探器。为了识别ARP数据包,我已经定义了一个结构,其中16位整数给出了一个十六进制值,我可以将其与ARP的库定义进行比较,即ETH_P_ARP来自哪里可以确认数据包是否为ARP。
结构:
struct ethernet { unsigned char dest[6]; unsigned char source[6]; uint16_t eth_type;};
我想为DHCP做类似的事情,但我无法识别它。
答案 0 :(得分:0)
查找端口67(服务器)和68(客户端)之间的UDP流量。有关数据包编码的详细信息,请参阅this Wikipedia entry。