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

相关推荐
JZZC212 小时前
39.IPv6——无状态地址自动配置
计算机网络·ipv6·无状态
AlanBruce12 小时前
摩尔信使MThings新功能:水电不分家、一键设备扫描
网络·自动化·plc·mthings·摩尔信使·电气·西门子s7
Titan202412 小时前
Linux网络基础知识
linux·服务器·网络·c++·学习
RisunJan13 小时前
Linux命令-tcpdump(网络数据包捕获)
linux·网络·tcpdump
Titan202413 小时前
Linux网络学习:套接字、UDP的封装与应用
linux·服务器·开发语言·网络·c++
-今昭-14 小时前
Logstash 管理
java·服务器·前端
Rsingstarzengjx15 小时前
stm32m157 U-boot 测试
linux·运维·服务器
啦啦啦啦啦zzzz16 小时前
TCP协议详解
网络·网络协议·tcp/ip
野生码农AI实战16 小时前
奇耻大辱,我的网站被挂马,服务器已沦陷三个月
服务器
jason.zeng@150220716 小时前
服务器磁盘读写效率,网络吞吐量查看,mysql性能调优
服务器·网络·mysql