了解网络协议ARP,偷偷看姑娘空间,妹子直呼哥哥好厉害!
1.IP数据包格式
协议字段
版本:版本字段
首部长度:IP包头部长度
TTL:生命周期字段
协议号:协议字段
总长度:IP数据总长度
段偏移量:上层的数据到IP层会被分片
优先级与服务类型:该字段用于表示数据包的优先级和服务类型,8bit。通过在数据包中划分一定优先级,用于实现Qos(服务质量)的要求
标识符:该字段用于表示IP数据包的标识符,16Bit。当IP对上层数据进行分片时,它将给所有的分片分配同一组编号,然后将这些编号放入标识符字段中,保证分片不会被错误的重组。路由器将一个包拆分后,所有拆分开的小包被标记相同的值,以便目的端设备能够区分哪个包属于被拆分的包的一部分
段偏移量:该字段用于表示段偏移量,13bit。段偏移量中包含的信息是指在一个分片序列中如何将各分片重新连接起来
首部效验和:该字段用于表示效验和,16bit。接收方和网关用来效验数据有没有被改动过
2.ICMP协议
icmp是一个错误侦测与回馈机制
通过IP数据包封装的
用来发送错误和控制信息的
注:这里有个小命令route print 查看pc机路由表,用于排障
IP v4路由表,如果有两个网关,两个路由器,选择越小的跃点数,越小越优先
名词(生产环境中有容灾链路)
ICMP协议的封装
icmp协议属于网络层协议
如图icmp的封装过程
3.一些简单要学会的ping的命令
ping 192.168.1.1 网关
例子 ping 192.168.1.11 出现无法访问目标主机
可能是因为没有正确配置网关参数
出现请求超时,在规定时间没有收到返回的应答消息
ping 192.168.0.11 -t 查看网络丢包
-t参数会一直不停的执行ping
调试故障或需进行持续连通性测试时应用
CTRL+c 可以中段命令
ping -a 192.68.0.25 可以看到主机名
ping 192.168.0.25 -l 10000
-l参数可以设定ping包的大小
单位的字节,可用于简单测试通信
注:这里的IP地址是随便写的,用自己的IP地址进行命令
4.ARP协议概述
局域网中主机的通信
ip地址与mac地址
什么是ARP协议
Address Resolution Protocol 地址解析协议
5.ARP协议
IP地址解析为mac地址
pc1发送数据给pc2,查看缓存没有pc2的mac地址
IP地址解析为MAC地址
1.pc1发送给数据给pc2.查看缓存没有pc2的mac地址
2.pc1发送ARP请求消息(广播)
3.所有主机收到ARP请求消息
pc2回复ARP应答(单播)
其他主机丢弃
4.pc1将pc2的mac地址保存到缓存中,发送数据
6.Windows系统中的ARP命令 以管理员身份运行
arp -a:查看arp缓存表
arp -d:清除arp缓存
7.ARP原理
需求分析
对等网的环境
pc1和pc2第一次通信
实现步骤
使用ipconfig /all 查看pc1和pc2MAC地址
用arp -a 查看arp缓存
在pc1上 ping pc2后,再用arp -a查看arp缓存表
8.ARP攻击原理
欺骗其他所有计算机
欺骗被攻击计算机
9.ARP欺骗主机
10.ARP故障处理
使用arp防火墙,自动抵御arp欺骗和攻击
在主机b上开启arp防火墙
在主机a上开启长角牛网络监控机,模拟arp病毒发作
查看arp防火墙统计数据变化
在主机b上测试与网关的连通性
总结:主要了解arp的原理,攻击原理以及欺骗原理,以及arp的故障处理。还有一些ping的命令,自己也可以试试敲敲。这篇理解的较多,本人写的很详细。可以多看看。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)