ARP 与 MAC 地址解析:局域网通信的第一步

ARP 与 MAC 地址解析:局域网通信的第一步

    • [一. 什么是 ARP?](#一. 什么是 ARP?)
    • [二. 上手实践](#二. 上手实践)
    • [三. ARP 欺骗](#三. ARP 欺骗)
    • [四. 小结](#四. 小结)

前言

肝文不易,点个免费的赞和关注,有错误的地方请指出,看个人主页有惊喜。

作者:神的孩子都在歌唱

在局域网中,不论你是访问打印机还是浏览网页,第一步其实都是"问路"------而这个问路的过程,靠的就是 ARP 协议 。它负责把我们知道的 IP 地址翻译成真正用于通信的 MAC 地址。

一. 什么是 ARP?

ARP(Address Resolution Protocol)是地址解析协议。它的作用很简单:

已知对方 IP 地址,向局域网请求它的 MAC 地址。

这个解析过程发生在二层网络(数据链路层)和三层网络(网络层)之间,是 TCP/IP 协议栈中不可缺少的一环。

如下ARP工作流程图: PC1 想与 PC2 通信(知道 IP,不知道 MAC)

ARP 的关键行为

  • ARP 请求是 广播 ,即发给局域网中所有主机(目的 MAC 是 FF:FF:FF:FF:FF:FF)
  • ARP 响应是 单播,即只有目标主机回应请求者
  • 每台主机有一个 ARP 缓存表,记录已知的 IP-MAC 映射,避免频繁广播

ARP 在通信中的作用: 我们发送的数据帧,都需要一个目标 MAC。IP 地址只是逻辑地址,真正让网卡能发出去的数据,得靠 MAC 地址。ARP 就是 IP 到 MAC 的"翻译官"。没有 MAC 地址,局域网通信就没法进行。

二. 上手实践

神唱一直都觉得光看原理不实践等于白看,那么接下来以 eNSP 为例去看看他是如何运作的,首先我们查看PC1的arp

可以看到此时的ARP表都是空的,然后我们使用PC1去请求 PC2

通过抓包可以发现,刚开始请求的时候回去ARP询问 谁是192.168.1.20,告诉192.168.1.10 , 然后第二条回应的就是 192.169.1.20对应的MAC地址是 54-89-98-F5-2F-D4

现在我们再来看看PC1和交换机的ARP表

可以发现PC1有了PC2的地址和MAC的对应信息了。

小知识:动态的ARP都是有生存时间的,也就是过段时间后这条记录就没有了

三. ARP 欺骗

ARP 也有"软肋"------因为它信任任何响应,没有验证机制。攻击者可以伪造 ARP 响应,把自己冒充成网关,形成中间人攻击(Man-in-the-Middle)。

防范方法:

  • 使用静态 ARP 表;
  • 开启 ARP 防攻击机制;
  • 在三层交换或安全设备上设置 IP-MAC 绑定。

四. 小结

  1. ARP 是连接 IP 与 MAC 的桥梁;

  2. 每次局域网通信,第一步都是先找 MAC 地址;

  3. ARP 请求是广播,响应是单播;

  4. 交换机只转发,不解析;

  5. 安全环境下建议配合静态 ARP 或防攻击设置。

作者:神的孩子都在歌唱

本人博客:https://blog.csdn.net/weixin_46654114

转载说明:务必注明来源,附带本人博客链接

相关推荐
ManageEngine卓豪44 分钟前
企业 Mac终端如何统一管控?配置、补丁与应用的落地框架
macos·mdm·uem·终端管理系统
SHENGWEI胜为1 小时前
交换机端口显示正常,终端却获取不到 IP 地址?从 DHCP 流程定位故障
服务器·网络·测试工具·缓存·通信工程
IMPYLH3 小时前
Linux 系统备份与镜像
linux·服务器·网络
淘气包海鸟4 小时前
水声网络框架
网络·ns3·水
国科安芯5 小时前
星间激光通信终端CANFD控制网络的时延确定性与辐射可靠性
网络·嵌入式硬件·信息与通信·canfd·低轨卫星·商业航天·抗辐射
中屹指纹浏览器svip5 小时前
网络抖动会标记账号异常?分清两种波动
网络
承渊政道5 小时前
Linux网络学习【传输层协议UDP】
linux·网络·网络协议·学习·ubuntu·udp
黑化旺仔5 小时前
【OC】Runtime:类元数据、加载初始化与消息派发
开发语言·macos·ios·objective-c
小此方6 小时前
Linux网络(三十三):告别O(n)噩梦:从select/poll的挣扎到epoll红黑树+回调的降维打击,一文打通IO多路复用
linux·网络·驱动开发
2301_777998346 小时前
Linux 网络:数据链路层
linux·服务器·网络