计算机网络篇之ARP包结构

计算机网络篇之ARP包结构

文章目录

ARP包格式

c 复制代码
struct arp_hdr
{
    uint16_t hwtype; 		//数据链路层的类型,若是以太网,值是0x0001
    uint16_t protype; 		//通信协议类型,若是ipv4,值是0x0800
    unsigned char hwsize;	//硬件字段大小(单位字节),若是mac地址就是6
    unsigned char prosize;	//协议字段大小(单位字节),若是ip地址就是4
    uint16_t opcode;		//ARP消息的类型,ARP请求是1,ARP回复是2,RARP请求是3,RARP回复是4
    unsigned char data[];	//ARP协议的数据负载
} __attribute__((packed));

ARP包里面的数据负载格式

若是ipv4, ARP协议的数据负载就是这个结构

c 复制代码
struct arp_ipv4
{
    unsigned char smac[6];//发送方的6字节mac地址
    uint32_t sip;		  //发送方的4字节ip地址
    unsigned char dmac[6];//接受方的6字节mac地址
    uint32_t dip;		  //接受方的4字节ip地址
} __attribute__((packed));

ok, 简单胜于复杂, 就聊这么多

相关推荐
thginWalker4 分钟前
演进篇 · 维护篇
服务器·数据库
余瑜鱼鱼鱼12 分钟前
NAT机制总结
运维·服务器·网络
暴力求解16 分钟前
Linux--重定向
linux·运维·服务器
LongQ30ZZ17 分钟前
博客系统测试报告
运维·服务器
The_Uniform_C@t220 分钟前
AWD | ATT&CK实战系列--蓝队防御(一)
网络·学习·网络安全
夜来小雨24 分钟前
MSTP——多生成树协议
网络
十月南城1 小时前
Exactly-once的真实成本——端到端一致性、两阶段提交与延迟权衡
网络
天上飞的粉红小猪1 小时前
网络层补充内容
网络·智能路由器
运维管理1 小时前
h3c -小型局域网通往外网
linux·服务器·网络
敲代码的哈吉蜂1 小时前
服务端I/O流程、I/O模型、网络I/O模型
linux·服务器·nginx