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

相关推荐
冯胤清7 分钟前
《Jev-IDS:网络入侵检测一种系统模型》论文深度分析总结
网络
91刘仁德2 小时前
HTTP协议详解:从URL到HTTP服务器的完整实战
服务器·网络·笔记·网络协议·http
Sarapines Programmer2 小时前
【Wireshark】安装与使用指南
网络·测试工具·wireshark
星夜夏空994 小时前
网络编程(5)—— Reactor实现(v4)
网络
lisanmengmeng6 小时前
NRPE 添加命令(一)
linux·运维·服务器
rest10246 小时前
用io_uring进行io测试
网络
恒拓高科WorkPlus6 小时前
企业怎样选择IM即时通讯平台?私有化部署还是SaaS更适合?
网络·github
树下水月7 小时前
Typora破解
linux·服务器·前端
修船大队长7 小时前
配置接受报文每个报文对应一个mailbox配置流程记录
网络·单片机·mcu
沫璃染墨7 小时前
《从零入门Linux系统篇(五十七):线程篇·十——生产者消费者模型进阶:从环形缓冲区到POSIX信号量》
linux·运维·服务器·开发语言·c++·系统架构·信号处理