ARP解析MAC地址的全过程(ARP的工作机制)

ARP 地址解析协议——IP地址MAC地址 1 阅读详情

目录

ARP解析MAC地址的过程:

源码等资料获取方法


以太网环境下,同一个网段的主机之间需要互相知道对方的MAC地址,才能访问。

TCP/IP协议栈从上层到下层的封装过程中,第三层封装需要知道目的IP,第二层封装需要知道目的MAC。

目的IP一般由用户手工输入,或者由应用程序填充,也可以通过名称解析系统解析得到,而目的MAC就需要使用ARP来解析

ARP解析MAC地址的过程:

第一步:

上层应用产生数据,这里用FTP协议为例,在FTP协议中定位了目的IP。

第二步:

那么,封装的过程如下:

  • 应用层:需要FTP的控制信息,包括用户名、密码等;

  • 传输层:目的端口号为21,源为随机端口号;

  • 网络层:目的IP为172.16.1.200,源IP为172.16.1.1;

  • 数据链路层:因为不知道目的IP 172.16.1.200对应的MAC,所以目的IP到目的MAC的封装映射失败;

三层到二层的封装失败,由于二层是以太网,ARP的工作机制便会产生ARP Request去解析目的MAC,此时,源MAC为数据发起者的MAC,目的MAC地址为 ff-ff-ff-ff-ff-ff(代表所有MAC)

第三步:

ARP Request到达本网段中的所有设备上,因为目的为ff-ff-ff-ff-ff-ff,所以所有设备都可以拆掉二层的封装,然后解读ARP数据包中需要解析的目的IP。

第四步:

目的IP不正确的设备直接忽略这个ARP请求包,目的IP正确的设备,会产生一个ARP Reply去回应这个ARP Request。

此时,二层的源MAC为被

通过执行arp命令获取MAC地址 获取单个IP或IP段的MAC地址 代码:GETMAC.java。 执行class命令示例:java-classpath bin GetMac 192.168.1.3 或 java-classpath bin GetMac 192.168.1.3 6 代码: import java.io.InputStreamReader; import java.io.LineNumberReader; import java.nio.charset.Charset; import java.util.... 阅读详情

相关推荐

ARP地址解析实验

一、ARP地址解析实验 1. 基本配置 实验环境:ensp 模拟环境: 路由器R1是公司出口网关,连接到外网。公司内所有员工在使用10.1.0.0/16,通过交换机连接到网关路由器上,为了防止ARP欺骗配置静态ARP。 主机没有配置默认网关,且分属不同广播域,造成无法通信,在路由器上配置ARP代理功能,实现网络内所有主机的通信。 1.1 ARP request包和reply包 R1配置: Int g 0/0/0 Ip add 10.1.1.254 24 Int g 0/0/1 Ip add 10.1

weixin_43522969的博客 2436

ARP协议详解,ARP协议执行原理、ARP协议如何根据IP地址寻找Mac地址

ARP协议设定了几条不证自明的公理: 每一个计算机或者路由器中都有一个ARP高速缓存,也就是IP地址Mac地址的映射表 ARP 高速缓存表只会存储当前局域网内的设备信息,这些设备包括但不限于计算机、交换机、路由器连接此局域网的接口所对应的 IP 和 Mac 映射信息 ARP高速缓存也叫ARP地址缓存表,使用命令 arp -a 可以查看ARP地址缓存表

wangyuxiang946的博客 2万+

ARP地址解析协议)编程指的是通过编程方式进行ARP操作,即根据IP地址获取对应的MAC地址

当主机A需要与主机B通信时,如果它知道主机B的IP地址但不知道对应的MAC地址,它将发送一个ARP请求广播,询问局域网中是否有主机知道该IP地址对应的MAC地址。总结起来,上述代码通过构造和发送ARP请求包,并解析接收到的ARP响应包,实现了基本的ARP解析功能。另外,代码中使用了一些特定于Linux系统的命令(例如读取网卡MAC地址的命令),如果在其他操作系统上运行,可能需要进行相应的修改。通过原始套接字,我们可以构造并发送ARP请求包,然后接收并解析ARP响应包,从中提取目标主机的MAC地址

ByteEchoX的博客 251

使用 SendARP 获取 MAC 地址

ARP 协议 ARP 协议工作在 TCP/IP 协议的第二层(数据链路层),用于将 IP 地转换为网卡物理地址(NIC 的 MAC 地址,媒体访问控制地址)。任何高层协议的通信最终都将装换为数据链路层的 MAC 地址来通信,所以说 ARP 是保证网络通信的基础协议。 ARP 基本原理 在每台安装有 TCP/IP 协议的计算机或路由器里都有一个 ARP 缓存表,表里的 IP 地址MAC...

青春不老,奋斗不止! 9105

Cisco Packet Tracer仿真实验 2:MAC地址,IP地址ARP协议,总线型以太网的特性(广播,竞争总线,冲突)

本实验通过Cisco Packet Tracer模拟器探究了计算机网络寻址问题。实验分为两部分:第一部分验证了ARP协议的工作流程,展示主机如何通过ARP请求获取目标MAC地址并建立ARP缓存表;第二部分验证了总线型以太网的广播特性和碰撞问题,证明集线器连接的星型网络实质仍为总线型结构,所有主机都能收到数据且会发生碰撞。实验结果表明:MAC地址和IP地址网络通信的关键标识,而总线型网络虽然结构简单但存在碰撞缺陷。通过实验加深了对网络寻址和以太网特性的理解。

小李独爱秋的博客 2539

深度解析arp-scan工作原理:从MAC地址解析到数据包捕获

arp-scan是一款强大的网络扫描工具,通过发送ARP请求并捕获响应来识别局域网内的活跃设备。本文将深入剖析arp-scan的工作原理,从MAC地址解析到数据包捕获的完整流程,帮助新手用户全面理解这款工具的核心功能。 ## 一、ARP协议基础:网络通信的基石 ARP地址解析协议)是TCP/IP协议栈中的关键协议,负责将IP地址转换为MAC地址。在局域网通信中,设备需要知道目标设备的MAC

gitblog_00941的博客 871

ARP(地址解析协议)

ARP(Address Resolution Protocol,地址解析协议)可以在以太网上,根据已知的IP地址查找主机的硬件地址

weixin_62594100的博客 1万+

ARP协议入门:如何通过IP地址找到对应的MAC地址

本文介绍了ARP协议的基础知识,重点讲解了如何通过IP地址查找对应MAC地址的核心原理。文章从网络通信的重要性出发,系统性地阐述了ARP协议的概念、技术内涵与关键术语,包括OSI模型、TCP/IP协议栈等基础理论。通过分层模型和工作流程示意图,详细解析ARP在数据链路层的工作原理。文中还提供了Python示例代码,展示了网络编程的基本实现方法,帮助读者理解IP地址MAC地址转换的实际应用。最后介绍了IP地址转换工具类等实用技术,为网络通信问题的排查与优化提供了参考。

编程世界如山海,探索不止。 7493

如何根据IP获取对方的MAC地址ARP协议了解一下

上一章介绍了ICMP协议,网络排障工具:ping 和 tracert 技术详解。今天介绍下同属于网络层的ARP协议。 一台主机要发送数据给另一台主机时,必须要知道目的主机的网络地址(即IP地址)。IP地址网络层来提供,但是仅有IP地址是不够的。 IP数据报文必须封装成帧才能通过数据链路进行发送。数据帧必须要包含目的MAC地址,因此发送端还必须获取到目的MAC地址。那么如何获取对方的mac地址呢? 通过ARP(Address Resolution Protocol)协议可以根据IP...

sinat_38673660的博客 7165

ARP地址解析协议详解

ARP地址解析协议详解 网络层的ARP协议完成IP地址与物理地址的映射。首先,每台主机都会在自己的ARP缓冲区中建立一个ARP缓存表,以表示IP地址MAC地址的对应关系。当源主机需要将一个数据包发送到目的主机时,会首先检查自己ARP缓存表中是否存在该IP地址对应的MAC地址:如果有,就直接将数据包发送到这个MAC地址;如果没有,就向本地网段发起一个ARP请求的广播包,查询此目的主机对应...

ypshowm的博客 1万+

ARP工作原理,相同网段和不同网段通信过程,代理ARPARP的区别,MAC地址为什么不能用来寻址

ARP 地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/IP协议。主机发送信息时将包含目标IP地址ARP请求广播到局域网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源。 在相同网段的ARP工作原理 如图,在相同网段的时候,PC5会广播ARP请求,然后根据交换机的工作原理,如果划分了VLAN就在相同的VL.

qq_44314045的博客 5352

MAC地址解析工具:ARP命令

网络中每台设备都有一个唯一的网络标识,这个地址MAC地址或网卡地址,由网络设备制造商生产时写在硬件内部。形象地说,MAC地址就如同身份证上的身份证号码,具有唯一性。无论是局域网,还是广域网中的计算机之间进行通信时,最终都表现为数据包从某种形式的链路上的一个初始节点出发,从一个节点传递到另一个节点,最终到达目的节点。数据包在这些节点之间的传递都是由ARP负责将IP地址映射到MAC地址上来完成的。

IT_zhangsan 2298

ARP地址解析协议)

地址解析协议ARP(Address Resolution Protocol)是用来将IP 地址解析MAC地址的 协议。[反向地址解析协议RARP(Reverse Address Resolution Protocol)是用来将MAC地址 解析为IP地址的协议。ARP是三层协议(网络层)

2301_77455319的博客 2579
上一篇: TCP/IP详解
下一篇: 跨网络的通信过程、路由的作用以及默认网关
bug捕手
博客等级 码龄4年 890粉丝 417原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值