计算机网络篇之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 分钟前
Netty 核心组件与 Reactor 模型详解
网络·架构
ITxiaobing202318 分钟前
IP 定位服务选型指南:从准确率到工程落地的技术考察
linux·服务器·网络
wuyk55520 分钟前
【Socket 进阶之路】第 9 章 Linux 网络服务量产稳定性优化|心跳保活、TIME_WAIT、SO_LINGER、内存池、断线重连、完整异常防护框架
linux·服务器·开发语言·网络·物联网
Julien200421 分钟前
Docker 容器存储原理(一)
linux·运维·服务器·ssh·学习方法
筝筝ba32 分钟前
GUI 测试之只读用户恢复BMC出厂设置
服务器
z落落34 分钟前
C#UDP+串口服务端+UDP 客户端(含 CRC16 校验)
网络·网络协议·udp
花间相见35 分钟前
【计算基础|网络04】—— HTTP接口实战(下):接口测试、鉴权与跨域排错
java·linux·人工智能·后端·python·计算机网络·postman
Wang's Blog1 小时前
Java 项目实战: 外卖平台-新增菜品DishDto双表插入与事务控制
服务器·项目开发
云运维笔记1 小时前
华为设备IP地址配置全攻略
运维·网络·计算机网络·华为
凤年徐1 小时前
C++ 仿 muduo 高并发服务器:日志模块
linux·服务器