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

相关推荐
努力搬砖的鱼14 小时前
深信服aTrust集群从节点访问失败排查:交换机策略重定向引发的“回包丢失”之谜
运维·网络·华为
加点油。。。。14 小时前
【远程桌面连接提示你的凭据不工作怎么办?】
运维·服务器
cen__y14 小时前
Linux13(数据库)
linux·服务器·c语言·开发语言·数据库
梦奇不是胖猫14 小时前
[ 计算机网络 | 第三章 ] 数据链路层03 CSMA/CD
运维·服务器·网络·计算机网络
Shadow(⊙o⊙)14 小时前
文件-语言-系统:基础IO-2.0——IO重定向接口,语言层缓冲区,系统级缓冲区。内核级分析!
linux·运维·服务器·开发语言·c++
志栋智能14 小时前
超自动化巡检:连接运维数据孤岛的桥梁
运维·网络·人工智能·自动化
Kingairy14 小时前
Dockerfile
linux·运维·服务器
灰子学技术14 小时前
Envoy OAuth2 过滤器功能实现分析
运维·服务器·前端·网络
Yang961115 小时前
守护交通大动脉的“网络医生”:GN-W10A网络综合测试仪
网络·信息与通信
tedcloud12315 小时前
wifi-densepose部署教程:构建无线感知AI实验环境
服务器·人工智能·系统架构·powerpoint·dreamweaver