计算机网络篇之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, 简单胜于复杂, 就聊这么多

相关推荐
Stella252123 分钟前
实习日志|知识总结
linux·服务器·软件测试·数据库
weixin_4624462327 分钟前
【原创实践】使用 shell 脚本批量创建 Linux 用户并生成随机密码
linux·服务器·前端
gugugu.31 分钟前
Redis ZSet类型深度解析:有序集合的原理与实战应用
网络·windows·redis
海奥华232 分钟前
进程调度算法 笔记总结
linux·运维·服务器·笔记·学习
茉莉玫瑰花茶2 小时前
ProtoBuf - 3
服务器·c++·protobuf
KingRumn2 小时前
Linux进程间通信之消息队列(POSIX)
linux·服务器
laoliu19962 小时前
Odoo 18企业版源码 包含 部署教程
运维·服务器
开开心心就好3 小时前
免费卸载工具,可清理残留批量管理启动项
linux·运维·服务器·windows·随机森林·pdf·1024程序员节
车载测试工程师3 小时前
CAPL学习-AVB交互层-功能函数-通用函数
网络·tcp/ip·以太网·capl·canoe