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

相关推荐
沉默的八哥10 分钟前
Linux中LVM逻辑卷扩容
linux·运维·服务器
YZJenny15 分钟前
没有管理员权限,在服务器安装使用 Jupyter + R 内核
服务器·jupyter
wanhengidc1 小时前
服务器机柜与网络机柜各自的优势
服务器·网络·智能路由器
网易独家音乐人Mike Zhou2 小时前
【Linux应用】开发板USB共享网络,网线或USB以太网共享网络(局域网连接PC和开发板,实现PC给开发板共享网络,USB通过NDIS驱动共享)
linux·网络·单片机·mcu·物联网·嵌入式·iot
托比-马奎尔2 小时前
第十二章:网络编程
网络
颖川初尘3 小时前
端口到底是个什么鬼?回答我!
服务器·网络·tcp/ip·node.js
stark张宇3 小时前
Linux 文件创建、删除、移动、复制基础知识整理
linux·服务器·centos
将心ONE3 小时前
使用 lstrip() 和 rstrip() 方法
运维·服务器
Two_brushes.5 小时前
【linux网络】深入理解 TCP/UDP:从基础端口号到可靠传输机制全解析
linux·运维·服务器
FJW0208145 小时前
【Linux】系统引导修复
linux·运维·服务器