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

相关推荐
Bomangedd4 分钟前
NSK RA25BN 滚子直线导轨技术详解
运维·服务器·经验分享·规格说明书
EnCi Zheng9 分钟前
N3A-一个端口只能给一个程序使用吗?[特殊字符]
网络·nginx·docker
本尊是喵1 小时前
AutoDL--FileZilla--VS Code远程连接
运维·服务器
技术硬汉1 小时前
Ai帮我找问题-路由器拨号问题-SIM卡不识别
网络·智能路由器
帅次1 小时前
Android 高级工程师面试:网络与数据层 近1年高频追问 18 题
android·网络·okhttp·面试·retrofit·gilde
网络小白不怕黑1 小时前
11.虚拟机模拟路由器实验
linux·运维·服务器·网络
Mapleay2 小时前
Linux 内核编程基础
linux·运维·服务器
小则又沐风a2 小时前
深入理解文件系统(二)
java·服务器·前端
天蓝的想2 小时前
Kueue 如何管理 DRA 模式下的 GPU 配额
运维·服务器
ylscode10 小时前
OpenSSH 10.4 正式发布:后量子加密落地,多项高危漏洞得到修复
网络·安全·网络安全