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

相关推荐
上海云盾商务经理杨杨24 分钟前
付费网站的攻防战:2026年,如何破解并抵御爬虫攻击
网络·安全
emma羊羊28 分钟前
【wordpress-wpdiscuz-rce】
网络·web安全·wordpress
青果全球http28 分钟前
静态IP是什么意思?和动态IP有什么区别
网络·网络协议·tcp/ip
Anthony_2311 小时前
一、网络通信的本质与OSI模型
网络·网络协议·tcp/ip·http·https·udp·ssl
河码匠1 小时前
VXLAN 简介、实现虚拟机跨物理机通信和网络隔离
网络·vxlan
小镇学者2 小时前
【python】python项目是如何部署到服务器上的
服务器·python·github
2501_945837432 小时前
事件驱动无服务器,Knative重塑原子化运算
服务器
旖旎夜光2 小时前
Linux(11)(中)
linux·网络
yaoxin5211232 小时前
296. Java Stream API - 二元操作符与“单位元“
java·服务器·windows
猿码优创3 小时前
过滤境外ip和域名访问的解决方案
网络·网络协议·tcp/ip·安全·阿里云