以太网协议
以太网和IEEE802的封装
最常使用的封装格式是RFC894定义的格式
类型(上层数据类型):
- IPv4:0x0800
- ARP:0x0806
- ARP:0x8035
- PPPoE:0x8864
- 802.1Q tag:0x8100
- IPV6:0x86DD
- MPLS Label:0x8847
ARP
ar_hrd:1,表示以太网
ar_hln和ar_pln:对于以太网上IP地址的ARP请求或应答,他们的值分别为6和4
op:
- 1,表示ARP请求
- 2,表示ARP应答
- 3,表示RARP请求
- 4,表示RARP应答
举例
0000 ff ff ff ff ff ff 00 0c f1 d4 d9 60 08 06 00 01
0010 08 00 06 04 00 01 00 0c f1 d4 d9 60 c0 a8 01 0f
0020 00 00 00 00 00 00 c0 a8 01 02
ff ff ff ff ff ff
是以太网目的地址,一个广播地址;
00 0c f1 d4 d9 60
是以太网源地址;
0806
帧类型,指的是后面的数据是属于ARP协议,到这里以太网帧头就结束了。
00 01
硬件类型,是以太网;
08 00
协议类型,是IP协议;
硬件地址长度和协议地址长度分别是6和4;
00 01
是ARP请求包;
00 0c f1 d4 d9 60
是发送者MAC地址;
c0 a8 01 0f
是发送者IP地址;
00 00 00 00 00 00
是想要得到的目标MAC地址;
c0 a8 01 02
是目标IP
MPLS Label
- 20-bit label (a number)
- 3-bit experimental field (usually used to carry IP precedence value)
- 1-bit bottom-of-stack indicator (indicates whether this is the last label before the IP header)
- 8-bit TTL (equal to the TTL in IP header),used to prevent indefinite looping of packets.
最大传输单元MTU
如果在IP层要传输一个数据报比链路层的MTU还大,那么IP层就会对这个数据报进行分片
以太网帧长度
最小长度为64字节(6+6+2+46+4)
最大长度为1518字节(6+6+2+1500+4)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!