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

相关推荐
高锰酸钾_3 分钟前
单机或内网服务器快速部署软件系统完整教程
运维·服务器
网安小白的进阶之路4 分钟前
B模块 安全通信网络 第二门课 核心网路由技术-1-OSPF邻居表建立
网络·安全
恒创科技HK11 分钟前
香港服务器受欢迎的原因有哪些
运维·服务器
llilian_1612 分钟前
PTP授时和NTP授时的使用场景有何不同 卫星校时服务器
运维·服务器
若汝棋茗14 分钟前
TouchSocket奇幻漂流记:从零开始的网络编程冒险 [特殊字符]
网络
杨云龙UP14 分钟前
SQL Server小技巧:用 SSMS 重置登录密码,不影响正在运行的系统
运维·服务器·数据库·sql·sqlserver
洁洁!16 分钟前
openEuler多样性算力支持实践:容器化多架构应用部署与调度
服务器·数据库·科技·语言模型·数据分析
buyutang_30 分钟前
Linux 网络编程:深入浅出UDP协议Socket编程规范
linux·网络·udp
model200530 分钟前
Alibaba linux 3安装LAMP(3)
linux·运维·服务器
AI云原生32 分钟前
openEuler软件生态体验——从桌面到服务器的全方位探索
运维·服务器·windows·macos·docker·云计算·腾讯云