实验11 ARP地址解析的应用
ARP(地址解析协议)理论与实践论文

ARP(地址解析协议)理论与实践论文摘要:充分认识ARP的作用与工作过程,有助于我们认识网络,理解TCP/IP体系的通信原理,从而更好的指导我们分析网络中,故障发生的原因,以及采用有效的方法排查。
关键词:网段,子网掩码,ARP协议;RARP协议(反向地址解析协议)充分认识ARP的作用与工作过程,有助于我们认识网络,理解TCP/IP体系的通信原理,从而更好的指导我们分析网络中,故障发生的原因以及采用有效的方法排查。
首先,子网掩码、网关与ARP 协议的概念,初学者往往难以一下子掌握。
因此,很有必要通过实验来帮助学员更加深入直观地了解子网掩码、网关与ARP协议的基本概念与工作原理。
一、子网掩码(Subnet Mask)子网掩码的主要功能是告知网络设备,一个特定的IP地址的哪一部分是包含网络地址与子网地址,哪一部分是主机地址。
网络的路由设备只要识别出目的地址的网络号与子网号即可作出路由寻址决策。
IP地址的主机部分不参与路由器的路由寻址操作,只用于在网段中唯一标识一个网络设备的接口。
子网掩码使用与IP相同的编址格式,子网掩码为1的部分对应于IP地址的网络与子网部分,子网掩码为0的部分对应于IP地址的主机部分。
将子网掩码和IP地址做“与”操作后,IP地址的主机部分将被丢弃,剩余的是网络地址和子网地址。
二、网关(Gateway)在Internet中的网关,一般是指用于连接两个或者两个以上网段的网络设备,通常使用路由器(Router)作为网关。
在TCP/IP 网络体系中,网关的基本作用是根据目的IP地址的网络号与子网号,选择最佳的出口对IP分组进行转发,实现跨网段的数据通信。
三、ARP协议(地址解析协议Address Resolution Protocol)在以太网(Ethernet)中,一个网络设备要和另一个网络设备进行直接通信,除了知道目标设备的网络层逻辑地址(如IP地址)外,还要知道目标设备的第二层物理地址(MAC地址)。
网络协议之ARP协议原理及应用 (2)

网络协议之ARP协议原理及应用一、引言ARP(Address Resolution Protocol)是一种网络协议,用于将IP地址映射到物理硬件地址(MAC地址)。
本协议旨在解决在局域网中,通过IP地址无法直接发送数据包的问题。
本文将详细介绍ARP协议的原理和应用。
二、ARP协议原理1. ARP请求和应答当主机A需要向主机B发送数据包时,首先会检查本地ARP缓存表。
如果找到了主机B的IP地址对应的MAC地址,主机A就可以直接将数据包发送给主机B。
如果ARP缓存表中没有对应的记录,主机A会发送一个ARP请求广播,询问局域网中所有主机:“谁有IP地址为X的主机的MAC地址?”其他主机收到该请求后,会检查自己的IP地址是否与请求中的IP地址相同。
如果相同,就会发送一个ARP应答包,告诉主机A自己的MAC地址。
主机A收到应答包后,就会将主机B的IP地址和MAC地址添加到ARP缓存表中,以便下次直接发送数据包。
2. ARP缓存表ARP缓存表是主机上存储IP地址和对应MAC地址的表格。
每当主机发送或接收ARP请求或应答时,都会更新ARP缓存表。
如果ARP缓存表中的记录过期,主机将重新发送ARP请求,更新对应的MAC地址。
ARP缓存表的大小有限,当表格已满时,会根据一定的策略替换旧的记录。
三、ARP协议应用1. IP地址解析ARP协议的主要应用是解析IP地址和MAC地址之间的映射关系。
通过ARP 协议,主机可以根据IP地址找到对应的MAC地址,从而实现数据包的传输。
2. 局域网内的通信在局域网内,主机之间的通信是基于MAC地址的。
ARP协议通过解析IP地址和MAC地址之间的映射关系,使主机能够直接通过MAC地址进行通信,提高了局域网内部的通信效率。
3. ARP欺骗攻击的防范ARP欺骗攻击是指攻击者通过伪造ARP应答包,将自己的MAC地址伪装成目标主机的MAC地址,从而截获目标主机的数据包。
为了防范ARP欺骗攻击,可以使用静态ARP表、动态ARP表和ARP防火墙等安全措施。
ARP协议解析解析IP地址与MAC地址之间的映射

ARP协议解析解析IP地址与MAC地址之间的映射ARP(Address Resolution Protocol)是一种用于在IP地址和MAC地址之间建立映射的网络协议。
在计算机网络通信过程中,ARP协议起着重要的作用,它能够动态地解析IP地址与MAC地址之间的映射关系,以便实现数据包的传输。
一、ARP协议的基本原理ARP协议的作用是通过网络通信中的ARP请求和ARP响应消息,在局域网内查找目标IP地址对应的MAC地址。
当主机A要向主机B发送数据包时,首先会在本地的ARP缓存表(ARP Cache Table)中查找与主机B的IP地址对应的MAC地址。
如果ARP缓存表中存在对应的记录,则直接使用此MAC地址进行通信;如果没有对应的记录,则需要进行ARP协议的解析。
具体来说,当主机A要发送数据包给主机B时,主机A首先通过广播方式发送一个ARP请求消息,在该消息中包含自己的MAC地址和IP地址,以及目标IP地址。
所有收到此请求消息的主机都会进行比对,看是否与自己的IP地址相匹配。
如果有主机的IP地址与目标IP地址匹配,则该主机会向主机A回复一个ARP响应消息,其中包含自己的MAC地址。
主机A收到ARP响应消息后,就可以将目标IP地址与MAC地址对应起来,并将此对应关系存储在自己的ARP缓存表中,以便下次直接使用。
二、ARP协议的解析过程1. 主机A发送ARP请求消息主机A通过广播方式发送ARP请求消息,该消息包含自己的IP 地址和MAC地址,以及目标IP地址。
广播方式可以确保在局域网内的所有主机都能收到此消息。
2. 主机B收到ARP请求消息主机B在接收到ARP请求消息后,首先检查自己的IP地址是否与消息中的目标IP地址相匹配。
如果匹配成功,则进行下一步;如果不匹配,则忽略此消息。
3. 主机B发送ARP响应消息主机B向主机A发送ARP响应消息,该消息包含主机B的MAC 地址和IP地址。
由于是点对点通信,因此可以直接向主机A发送响应消息,而不用广播方式。
ARP协议原理分析

实验一 ARP协议原理分析1、ARP协议简介ARP,全称Address Resolution Protocol,中文名为地址解析协议,它工作在数据链路层,在本层和硬件接口联系,同时对上层提供服务。
IP数据包常通过以太网发送,以太网设备并不识别32位IP地址,它们是以48位以太网地址传输以太网数据包。
因此,必须把IP目的地址转换成以太网目的地址。
在以太网中,一个主机要和另一个主机进行直接通信,必须要知道目标主机的MAC地址。
但这个目标MAC地址是如何获得的呢?它就是通过地址解析协议获得的。
ARP协议用于将网络中的IP地址解析为的硬件地址(MAC地址),以保证通信的顺利进行。
1. ARP报头结构ARP的报头结构,如图1所示。
硬件类型协议类型协议长度操作类型硬件地址长度发送方的硬件地址(0-3字节)源物理地址(4-5字节)源IP地址(0-1字节)源IP地址(2-3字节)目标硬件地址(0-1字节)目标硬件地址(2-5字节)目标IP地址(0-3字节)(图1 ARP/RARP报头结构)硬件类型字段指明了发送方想知道的硬件接口类型,以太网的值为1;协议类型字段指明了发送方提供的高层协议类型,IP为0800(16进制);硬件地址长度和协议长度指明了硬件地址和高层协议地址的长度,这样ARP报文就可以在任意硬件和任意协议的网络中使用;操作字段用来表示这个报文的类型,ARP请求为1,ARP响应为2,RARP请求为3,RARP响应为4;发送方的硬件地址(0-3字节):源主机硬件地址的前3个字节;发送方的硬件地址(4-5字节):源主机硬件地址的后3个字节;发送方IP(0-1字节):源主机硬件地址的前2个字节;发送方IP(2-3字节):源主机硬件地址的后2个字节;目的硬件地址(0-1字节):目的主机硬件地址的前2个字节;目的硬件地址(2-5字节):目的主机硬件地址的后4个字节;目的IP(0-3字节):目的主机的IP地址。
2. ARP的工作原理ARP的工作原理如下:1. 首先,每台主机都会在自己的ARP缓冲区 (ARP Cache)中建立一个 ARP列表,以表示IP地址和MAC地址的对应关系。
地址解析协议ARP命令

地址解析协议ARP命令地址解析协议(ARP)是计算机网络中的一种协议,用于将一个IP地址映射到相应的MAC地址。
MAC地址是一个唯一的硬件地址,用于在局域网中唯一标识一个网络设备。
当一个设备需要将数据发送给另一个设备时,它需要知道目标设备的MAC地址。
ARP命令是用来执行地址解析协议操作的命令工具。
ARP命令主要用于在计算机网络中查询和缓存MAC地址。
具体来说,ARP命令可以执行以下操作:1.查询指定IP地址的MAC地址:ARP命令可以用来查询特定IP地址对应的MAC地址。
通过在命令行中输入"arp -a"命令,系统将会显示本地主机的ARP缓存表,包含了目标IP地址对应的MAC地址以及相关信息。
2.清除ARP缓存表:在一些情况下,ARP缓存表可能会出现不正确的条目,导致设备之间无法正确通信。
此时,可以使用ARP命令清除ARP缓存表。
在命令行中输入"arp -d"命令,系统将会清除本地主机的ARP缓存表。
3.添加静态ARP条目:静态ARP条目是手动添加到ARP缓存中的,用于指定一些IP地址对应的MAC地址。
在命令行中输入"arp -s <IP地址> <MAC地址>"命令,系统将会添加一个静态ARP条目到ARP缓存中。
4.修改ARP缓存表的超时时间:ARP缓存表中的每个条目都有一个超时时间,默认情况下为两分钟。
如果需要修改超时时间,可以使用ARP命令。
在命令行中输入"arp -s <IP地址> <MAC地址> temp"命令,系统将会将指定的ARP条目设置为临时条目,不受超时时间限制。
5.刷新ARP缓存表:在一些情况下,需要手动刷新ARP缓存表,以确保其中的条目是最新的。
在命令行中输入"arp -d *"命令,系统将会删除所有ARP条目并重新查询。
总结来说,ARP命令是一种非常有用的工具,可以用来查询、清除和添加ARP缓存表中的地址解析条目。
网络协议之ARP协议原理及应用

浅谈网络协议之ARP协议原理及应用------ 关于ARP欺骗攻击技术简析和防范您是否遇到局域网内频繁性区域或整体掉线,重启计算机或网络设备后恢复正常?您的网速是否时快时慢,极其不稳定,但单机进行光纤数据测试时一切正常?您是否时常听到身边人的网上银行密码、游戏及QQ账号频繁丢失的消息?……这些问题的出现有很大一部分要归功于ARP攻击,那么什么是ARP协议?ARP是如何攻击的呢?又该怎样防御呢?一.ARP协议及其基本原理ARP( Address Resolution Protocol),中文名为地址解析协议,它工作在数据链路层,在本层和硬件接口联系,同时对上层提供服务。
IP数据包常通过以太网发送,以太网设备并不识别32位IP地址,它们是以48位以太网地址传输以太网数据包。
因此,必须把IP目的地址转换成以太网目的地址。
在以太网中,一个主机要和另一个主机进行直接通信,必须要知道目标主机的MAC地址。
但这个目标MAC地址是如何获得的呢?它就是通过地址解析协议获得的。
ARP协议用于将网络中的IP地址解析为的硬件地址(MAC 地址),以保证通信的顺利进行。
如图即为ARP报头结构:下面介绍一下ARP协议的工作原理。
我们知道每台主机都会在自己的ARP 缓冲区(ARP Cache)中建立一个存放有本局域网上的各主机和路由器的IP地址到硬件地址的映射表,这些都是主机目前知道的一些地址。
假设有三台主机:A: IP地址192.168.0.1 硬件地址AA:AA:AA:AA:AA:AAB: IP地址192.168.0.2 硬件地址BB:BB:BB:BB:BB:BBC: IP地址192.168.0.3 硬件地址CC:CC:CC:CC:CC:CC当主机A需要将一个数据包要发送到本局域网上的某个目的主机B时,会首先检查自己ARP列表中是否存在该主机B的IP地址,如果有﹐就在ARP高速缓存中查出其对应的硬件地址,再把这个硬件地址写入MAC帧,然后通过局域网把该MAC帧发往此硬件地址;如果查不到主机B的IP地址的项目,在这种情况下主机A就向本地网段发起一个ARP请求的广播包,查询此目的主机B 对应的MAC地址。
arp使用方法
arp使用方法
一、什么是arp
ARP即地址解析协议(Address Resolution Protocol),是一种网络协议,它用于在通用的IP网络中,把一台计算机的IP地址与它的物理地址(MAC地址)联系起来。
二、arp的使用
1、arp -a
该命令可以用于查看当前路由器的ARP表中的映射关系,它显示出活动的IP地址,它们的物理(MAC)地址以及状态。
2、arp -s
该命令用于将一个已知的IP地址和物理(MAC)地址的静态条目添加到ARP表中。
3、arp -d
该命令用于从ARP表中删除一个特定的IP地址,它删除ARP表中的某一项,或者删除ARP表中的所有项。
4、arp -n
该命令可以查看网络中的IP地址和MAC地址映射关系,它不受ARP缓存的影响,它可以在网络中搜索所有IP地址和MAC地址的映射关系。
三、arp的优势
1、ARP是一种简单高效的协议,它可以极快地将两者联系起来,从而减少网络中的广播流量。
2、ARP支持网络的透明性,使网络用户不必担心底层设备及其地址,同时能够解决不同网络设备之间的通讯问题。
3、ARP能够使设备自动发现网络,这可以为网络管理者带来很大的便利,也减少了网络管理的工作量。
网络协议之ARP协议原理及应用
网络协议之ARP协议原理及应用ARP协议原理及应用一、协议原理ARP(Address Resolution Protocol)是一种用于将IP地址解析为物理地址的协议。
在计算机网络中,每个设备都有一个唯一的物理地址(MAC地址)和一个逻辑地址(IP地址)。
而ARP协议的作用就是通过逻辑地址获取对应的物理地址。
ARP协议的工作原理如下:1. 当主机A需要与主机B通信时,首先会检查本地的ARP缓存表,查看是否已经有主机B的MAC地址记录。
如果有,则直接使用该MAC地址进行通信。
2. 如果ARP缓存表中没有主机B的MAC地址记录,主机A就会发送一个ARP请求广播,该广播会包含主机A的IP地址和MAC地址,并请求其他主机回复自己的MAC地址。
3. 其他主机收到ARP请求后,会检查自己的IP地址是否与请求中的目标IP地址相同。
如果相同,则会向主机A发送一个ARP响应,包含自己的IP地址和MAC地址。
4. 主机A收到ARP响应后,会将主机B的IP地址和MAC地址添加到ARP缓存表中,并使用该MAC地址进行通信。
5. 主机A和主机B之间的通信就可以通过MAC地址进行。
二、协议应用ARP协议在计算机网络中有广泛的应用,以下是一些常见的应用场景:1. IP地址解析:ARP协议通过将IP地址解析为MAC地址,实现了不同设备之间的通信。
在局域网中,主机之间的通信离不开ARP协议的支持。
2. 网络扫描:网络扫描工具常常使用ARP协议来获取局域网内的设备信息。
通过发送ARP请求广播,扫描工具可以获取到局域网内所有设备的IP地址和MAC地址。
3. ARP欺骗检测:ARP欺骗是一种网络攻击手段,攻击者通过发送伪造的ARP响应,将自己的MAC地址伪装成其他设备的MAC地址,从而实现对网络流量的监控或篡改。
为了检测和防止ARP欺骗,可以使用ARP协议进行MAC地址的验证和比对。
4. 路由器转发:在路由器中,ARP协议被用于转发数据包。
ARP协议解析实现IP地址与MAC地址映射的协议
ARP协议解析实现IP地址与MAC地址映射的协议ARP(Address Resolution Protocol,地址解析协议)是计算机网络通信协议中一种解析实现IP地址与MAC地址映射的协议。
在网络通信中,为了实现数据包的传输,需要将目标主机的IP地址转换为相应的MAC地址,这个过程就是地址解析。
本文将详细介绍ARP协议的原理和实现方式。
一、ARP协议的基本原理ARP协议是一个基于请求-响应工作原理的协议。
当主机A需要向主机B发送数据包时,主机A首先会检查本地ARP缓存表,如果找到目标主机B的IP地址对应的MAC地址,则直接发送数据包到目标主机;如果在ARP缓存表中未找到对应的MAC地址,则会发送一个ARP请求广播。
其他主机收到ARP请求后,会检查自己的IP地址,如果与请求的目标IP地址匹配,则向发送请求的主机回复一个ARP响应,包含自己的MAC地址。
发送请求的主机收到ARP响应后,会将目标主机的IP地址和MAC地址添加到本地的ARP缓存表中,以便下次直接发送数据包。
二、ARP协议的实现步骤1. 发送ARP请求广播:当主机A需要解析IP地址为IP_B的MAC 地址时,会在本地网络中广播一个ARP请求,该ARP请求中包含了A 主机的IP和MAC地址,以及目标IP_B的IP地址。
2. 响应ARP请求:网络中的其他主机收到ARP请求后,会检查自己的IP地址是否与请求中的目标IP匹配,如果匹配则向主机A发送一个ARP响应,该ARP响应包含了主机B的IP地址和MAC地址。
3. 更新ARP缓存表:主机A接收到ARP响应后,会将目标主机B的IP地址和MAC地址添加到本地的ARP缓存表中。
下次再向主机B发送数据包时,将直接从ARP缓存表中取出目标主机的MAC地址,避免了广播ARP请求。
三、ARP协议的优缺点1. 优点- ARP协议是基于广播的解析方式,简单高效。
- ARP缓存表的存在可以加速地址解析过程,提高网络传输效率。
ARP协议地址解析协议
ARP协议地址解析协议ARP(Address Resolution Protocol)是一种用于在网络层和数据链路层之间解析IP地址和MAC地址之间对应关系的协议。
它通过发送ARP请求,接收ARP响应的方式来完成地址解析。
一、ARP协议的作用ARP协议的作用是将网络层的IP地址与数据链路层的MAC地址建立映射关系,以实现数据在网络中的正确传输。
在发送数据的过程中,主机需要知道目标主机的MAC地址才能将数据帧发送到正确的目标,而ARP协议就是用来解决这个问题的。
二、ARP协议实现的原理ARP协议的实现原理是基于广播的方式进行的。
当主机A需要与主机B通信时,它首先会检查本地ARP缓存中是否存有目标主机B的IP 地址对应的MAC地址。
如果存在,主机A就可以直接发送数据帧到目标主机B。
如果不存在,则主机A会发送一个ARP请求广播,向本地局域网中的所有主机发送该请求,请求回应者即目标主机B将其MAC地址作为源MAC地址填入ARP响应中,并将该响应发送给主机A。
主机A接收到ARP响应后,就可以将目标主机B的IP地址和MAC地址的对应关系存入本地ARP缓存,以便以后的通信使用。
三、ARP协议的工作流程1. 主机A发送ARP请求- 源MAC地址:主机A的MAC地址- 源IP地址:主机A的IP地址- 目标MAC地址:全为0的广播地址- 目标IP地址:主机B的IP地址2. 路由器或交换机收到ARP请求- 源MAC地址:发送ARP请求的主机A的MAC地址 - 源IP地址:发送ARP请求的主机A的IP地址- 目标MAC地址:全为0的广播地址- 目标IP地址:主机B的IP地址3. 主机B接收到ARP请求并发送ARP响应- 源MAC地址:主机B的MAC地址- 源IP地址:主机B的IP地址- 目标MAC地址:发送ARP请求的主机A的MAC地址 - 目标IP地址:主机A的IP地址4. 路由器或交换机将ARP响应转发给主机A- 源MAC地址:主机B的MAC地址- 源IP地址:主机B的IP地址- 目标MAC地址:发送ARP请求的主机A的MAC地址- 目标IP地址:主机A的IP地址5. 主机A接收到ARP响应后更新ARP缓存表- 将主机B的IP地址和MAC地址的对应关系存入本地ARP缓存四、ARP协议的优缺点1. 优点:- 简单且高效,能够快速解析出目标主机的MAC地址,提高数据传输效率;- 支持动态建立和更新IP地址与MAC地址的映射表,适应网络中IP地址和MAC地址的变化;- 不依赖其他协议,可直接在以太网等数据链路层上运行,具有较好的兼容性。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验11 ARP地址解析 一、实验目的 1.理解地址解析协议ARP的概念、工作过程及用途; 2.理解IP地址和MAC地址的区别; 3.掌握ARP命令的使用。
二、实验要求 1.设备要求:计算机若干台(装有Windows 2000/XP/2003操作系统、装有网卡且联网) 2.每组2人,合作完成。
三、实验预备知识 1.IP地址与物理地址 在学习IP地址时,很重要的一点就是要分清一个主机的IP地址与物理地址的区别。物理地址就是在单个物理网络内部对一台计算机进行寻址时所使用的地址。在局域网中,由于物理地址已固化在网卡的ROM中,因此常常将物理地址称为硬件地址或MAC地址,而有一些网络并不是物理地址就是MAC地址,比如X.25网络。 在互联网中,IP地址能够屏蔽各个物理网络地址的差异,为上层用户提供“统一”的地址形式,而且这种“统一”是通过在物理网络上覆盖一层IP软件实现的,并不对物理地址做任何修改。高层软件通过IP地址来指定源地址和目的地址,而低层的物理网络通过物理地址发送和接收信息。在数据的封装过程中,网络层将IP地址放入IP数据报(IP协议使用的数据单元)的首部,而数据链路层将物理地址放在MAC帧(数据链路层的数据单元)的首部。IP数据报与MAC帧的关联如图1所示。
图1 IP地址与物理地址的区别 假如一个网络上的两台主机A和B,它们的IP地址分别是AI和BI,物理地址为AM和BM。在主机A需要将信息传送到主机B时,使用AI和BI作为源地址和目的地址。但是,
信息最终的传递必须利用下层的物理地址AM和BM实现。那么,主机A怎么将主机B的IP地址BI映射到它的物理地址BM上呢? 将IP地址映射到物理地址的实现方法有多种,例如静态表格、直接映射等,每种网络都可以根据自身的特点选择适合于自己的映射方法。地址解析协议(Address Resolution Protocol, ARP)是以太网经常使用的映射方法,它充分利用了以太网的广播能力,将IP地址与物理地址进行动态绑定(Dynamic Binding)。
2.地址解析协议的基本思想 以太网一个很大的特点就是具有强大的广播能力。针对这种具备广播能力、物理地址长但长度固定的网络,IP互联网采用动态绑定方式进行IP地址到物理地址的映射,并制定了相应的协议——地址解析协议(ARP)。 假定在一个以太网中,主机A欲获得主机B的IP地址(BI)与MAC地址(BM)的映射关系,如图2所示,相应的ARP协议工作过程为: (1)主机A广播发送一个带有BI的请求信息包,请求主机B用它的IP地址BI和MAC地址BM的映射关系进行响应; (2)于是,以太网上的所有主机接收到这个请求信息(包括主机B在内); (3)主机B识别该请求信息,并向主机A发送带有自己的IP地址BI和MAC地址B
M
映射关系的响应信息包; (4)主机A得到BI与BM的映射关系,并可以在随后的发送过程中使用该映射关系。
图2 ARP协议的基本思想 3.ARP的工作过程 由于IP地址有32位,而物理地址有48位,因此,它们之间不是一个简单的映射(转换)关系。此外,在一个网络上可能经常出现有新的计算机加入进来,或撤走一些计算机。更换计算机的网卡也会使其物理地址改变。可见在计算机中应存放一个从IP地址到物理地址的映射表,并且能够经常动态更新。ARP协议很好的解决了这些问题。 在每台使用ARP的主机中,都保留了一个专用的高速缓存区(cache),用于保存已知的ARP表项。一旦收到ARP应答,主机就将获得的IP地址与物理地址的映射关系存入高速cache的ARP表中。当发送信息时,主机首先到高速cache的ARP表中查找相应的映射关系,若找不到,再利用ARP进行地址解析。利用高速缓存技术,主机不必为每个发送的IP数据报使用ARP协议,这样就可以减少网络流量,提高处理的效率。为了保证主机中ARP表的正确性,ARP表必须经常更新。为此,ARP表中的每一个表项都被分配了一个计时器,一旦某个表项超过了计时时限,主机就会自动将它删除,以保证ARP表的有效性。 下面举例说明完整的ARP工作过程。假设以太网上有4台计算机,分别是计算机A、B、X和Y,如图3所示。现在,计算机A的应用程序需要和计算机B的应用程序交换数据。在计算机A发送信息前,必须首先得到计算机B的IP地址与MAC地址的映射关系。一个完整的ARP软件的工作过程如下:
图3 完整的ARP工作过程 (1)计算机A检查自己高速cache中的ARP表,判断ARP表中是否存有计算机B的IP地址与MAC地址的映射关系。如果找到,则完成ARP地址解析;如果没有找到,则转至下一步; (2)计算机A广播含有自身IP地址与MAC地址映射关系的请求信息包,请求解析计算机B的IP地址与MAC地址映射关系; (3)包括计算机B在内的所有计算机接收到计算机A的请求信息,然后将计算机A的IP地址与MAC地址的映射关系存人各自的ARP表中; (4)计算机B发送ARP响应信息,通知自己的IP地址与MAC地址的对应关系; (5)计算机A收到计算机B的响应信息,并将计算机B的IP地址与MAC地址的映 射关系存入自己的ARP表中,从而完成计算机B的ARP地址解析。 计算机A得到计算机B的IP地址与MAC地址的映射关系后就可以顺利地与计算机B通信了。在整个ARP工作期间,不但计算机A得到了计算机B的IP地址与MAC地址的映射关系,而且计算机B、X和Y也都得到了计算机A的IP地址与MAC地址的映射关系。如果计算机B的应用程序需要立刻返回数据给计算机A的应用程序,那么,计算机B就不必再次执行上面描述的ARP请求过程了。 网络互联离不开路由器,如果一个网络(如以太网)利用ARP协议进行地址解析,那么,与这个网络相连的路由器也应该实现ARP协议。
四 实验内容与步骤 本实验指导可在实验室网络中完成。 1.查看cache中的ARP表 (1)点击“开始”-“运行”,敲入“cmd”然后回车,键入命令“arp -a”相关命令,查看本机的高速Cache中的ARP表项。记录实验结果,并完成下表(此表可增行): Internet Address Physical Address Type (2)将同组成员的IP地址与MAC地址的映射关系加入到ARP表中。因为主机在向一个站点发送信息之前必须得到目的站点IP地址与MAC地址的映射关系,因此,可以利用ping命令向一个站点发送信息的方法,将这个站点IP地址与MAC地址的映射关系加入到ARP表中;如欲加入172.16.28.7与其MAC地址的对应关系,可使用“ping 172.16.28.7”,如图4所示。
图4 使用ping动态加入ARP表项 2.添加静态表项 (1)在命令行窗口(cmd窗口)用“arp –s”命令将同组成员的IP与其MAC地址的对应关系加入到ARP表中,然后用ARP相关命令查看是否添加成功。请添加一个静态ARP表项,记录下表。
添加命令 arp -s 192.168.xx.xx xx-xx-xx-xx-xx 查看命令 arp -a 查看结果 Internet 地址 物理地址 类型 192.168.xx.xx xx-xx-xx-xx-xx 静态
(2)与用“ping命令”添加的ARP表项进行比较,说明它们之间的异同。 比较结果与结论 使用 ping命令添加的类型为动态, 使用 arp -s 添加的类型为静态
3.删除ARP表项 使用“arp -d”命令将ARP表中的所有表项删除,并记录此过程。 arp -d 之后表项被清除,剩一个静态类型和一个动态类型
4.协议分析 (1)在“cmd”命令行窗口中,使用“arp”相关命令清除系统缓存中的目的主机IP的arp表项,若该表项不存在,可不清除。请记录操作步骤: 查看arp表项 清除相关表项 arp -a arp -d
(2)启动Wireshark的“Capture”→“Start”,使Wireshark捕获数据包。此时,在“cmd”命令行窗口中,完成“ping 目的主机IP”的命令。
(3)停止Wireshark的数据捕获,获得相关数据并显示在主界面。 (4)使用显示过滤器Filter,在Filter中输入“arp”,只显示ARP协议的相关数据包,完成如下分析: 问题 回答
源主机使用什么方法寻找目的主机? 通过发送广播包来寻找
目的主机如何将其MAC地址传送给源主机? 通过发送单播包来发送
目的主机的MAC地址是多少? 自行查找
分析ARP请求包和ARP应答包的大小分别是多少字节(Bytes)? 都是42,但应答包有18个填充字节
查看ARP分组的填充字符是什么?长度是多少? 000000000000000000,长度为18字节
五 练习与思考 1.完成下列选择题。 (1)RARP协议用于( A )。(2006.5网络管理员试题) A.根据IP地址查询对应的MAC地址 B.IP协议运行中的差错控制 C.把MAC地址转换成对应的IP地址 D.根据交换的路由信息
(2)在通常情况下,下列说法是错误的是( A ) A.高速缓冲区中的ARP表是由人工建立的 B.高速缓冲区中的ARP表是由主机自动建立的 C.高速缓冲区中的ARP表是动态的 D.高速缓冲区中的ARP表保存了主机IP地址与物理地址的映射关系
(3)下列情况中需要启动ARP请求的是( C ) A.主机需要接受信息,但ARP表中没有源IP地址与MAC地址的映射关系 B.主机需要接受信息,但ARP表中已具有源IP地址与MAC地址的映射关系 C.主机需要发送信息,但ARP表中没有目的IP地址与MAC地址的映射关系 D.主机需要发送信息,但ARP表中已具有目的IP地址与MAC地址的映射关系
2.思考与讨论题 (1)有人将ARP列入网络接口层,即认为ARP不在IP层,这样对吗? 错,ARP是将ip地址映射到物理地址,而IP地址是IP层的概念
(2)假定在一个局域网中计算机A发送ARP请求分组,希望找出计算机B的硬件地址。这时局域网上的所有计算机都能收到这个广播发送的ARP请求分组。试问这时由哪一个计算机使用ARP响应分组将计算机B的硬件地址告诉计算机A? B响应,广播寻找,然后由响应 (3)一个主机要向另一个主机发送IP数据报。是否使用ARP就可以得到该目的主机的硬件地址,然后直接用这个硬件地址将IP数据报发送给目的主机? 不一定,同一局域网内可以得到硬件地址;不同局域网得到的是路由器的地址。 (4)为了验证ARP协议的工作过程,请设计并实现以下实验: ① 假设一台计算机广播了一个ARP请求之后,收到两个应答,第一个应答表明硬件地址是H1,第二个应答声明硬件地址是H2,那么ARP软件首先从第一个应答中取出H1与IP的绑定信息,放入高速缓存中,然后从第二个应答中取出H2与IP地绑定信息后,检测高速缓存中已存在发送方IP的地址绑定信息,这时会以H2与IP的绑定信息替代高速缓存中已有的H1与IP的绑定。请设计实验验证ARP以上的工作,并描述实验方法与实验过程。 通过修改Mac地址来完成 1、 先清空两台主机A与B的arp地址 2、 Ping B主机的IP地址,获取B主机的MAC地址 3、 B主机在网络适配器中修改物理地址 4、 再次Ping B主机的IP地址,获取B主机的MAC地址 5、 arp -a查看A的arp表是否更新 ② ARP还引入了一种优化策略:在一台计算机回答了一个ARP请求之后,此计算机将会把报文中的发送方地址绑定加入自己的高速缓存中,以便以后加以利用。请设计实验验证ARP以上的工作,并描述实验方法和实验过程。 1、 先清空两台主机A与B的arp地址