什么是地址转换协议arpWord文档下载推荐.docx
《什么是地址转换协议arpWord文档下载推荐.docx》由会员分享,可在线阅读,更多相关《什么是地址转换协议arpWord文档下载推荐.docx(5页珍藏版)》请在冰豆网上搜索。
硬件长度:
指明硬件地址长度,单位是字节,mac是48位,长度是6个字节。
协议长度:
高层协议地址的长度,对于ip地址,长度是4个字节。
操作字段:
共有二种操作类型,1表示aRp请求,2表示aRp应答。
发送方mac:
6个字节的发送方mac地址。
发送方ip:
4个字节的发送方ip地址。
目的mac:
6个字节的目的mac地址。
目的ip:
4个字节的目的ip地址。
二、aRp地址解析过程,如图:
练习一:
领略真实的aRp(同一子网)
实验步骤:
1、主机a、b、c、d、e、F在命令行下运行“arp-a”命令,察看aRp高速缓存表,并回答以下问题:
aRp高速缓存表由哪几项组成?
答:
状态、硬件类型、协议类型、硬件地址长度、协议地址长度、接口号、队列号、尝试、超时、硬件地址、协议地址。
如图:
2、主机a、b、c、d启动协议分析器,打开捕获窗口进行数据捕获并设置过滤条件(提取aRp、icmp)。
主机a、b、c、d在命令行下运行“arp-d”命令,清空aRp高速缓存。
主机aping主机d(172.16.1.4)。
3、主机a、b、c、d停止捕获数据,并立即在命令行下运行“arp-a”命令察看aRp高速缓存。
结合协议分析器上采集到的aRp报文和aRp高速缓存表中新增加的条目,简述aRp协议的报文交互过程以及aRp高速缓存表的更新过程。
源主机在发送ip报文时,先检查高速缓存,若找到目的主机ip地址对应的mac地址,则开始发送报文,若没有,则发送一个带有aRp报文的以太网广播帧询问,在收到目的主机返回的aRp响应报文后更新高速缓存再发送ip报文。
捕获协议如图:
思考题:
1.aRp分组的长度是固定的吗?
试加以解释。
不是。
aRp报文格式对任何协议和硬件地址都是充分通用的对于不同的网络aRp分组的长度可能不同。
aRp分组中含有htype(硬件类型)字段,用来定义运行aRp的网络类型(例如以太网是类型1),aRp分组中包含hlen(硬件长度)字段,用来定义以字节为单位的物理地址长度(例如以太网为6)。
aRp分组中包含sha(发送端硬件地址)和tha(目标硬件地址)用来定义物理地址,这两个字段都是可变长度字段。
2.试解释为什么aRp高速缓存每存入一个项目就要设置10-20分钟的超时计
时器。
这个时间设置得太大或太小会出现什么问题?
答超时计时器用来维护aRp高速缓存,在一段时间内如果表中的某一项没有使用,就会被删除,这样可以大大减少aRp缓存表的长度,加快查询速度。
时间设置得太大就会导致aRp缓存表的长度过长或者过旧,ip地址与mac地址的映射关系可能已经发生改变,但aRp缓存表却还没更新。
时间设置得太小会导致aRp高速缓存更改过于频繁,从而导致aRp广播数据包在网络上大量出现,增加网络流量,并降低了工作速度。
3.至少举出两种不需要发送aRp请求分组的情况。
当目的ip在aRp高速缓存中有对应的项目或者目的ip是广播地址时都不用发送aRp请求。
篇二:
实验3地址转换协议aRp
实验3地址转换协议aRp
一、实验目的
二、实验类型
验证型
三、实验原理
1.aRp协议简介
internet是由各种各样的物理网络通过使用诸如路由器之类的设备连接在一起组成的。
当主机发送一个数据包到另一台主机的过程中可能要经过多种不同的物理网络。
主机和路由器都是在网络层通过ip地址来识别的,这个地址是在全世界内唯一的。
然而,数据包是通过物理网络传递的。
在物理网络中,主机和路由器通过其mac地来识别的,其范围限于本地网络中。
mac地址和ip地址是两种不同的标识符。
这就意味着将一个分组传递到一个主机或路由器需要进行两级寻址:
ip和mac。
需要能将一个ip地址映射到相应的mac地址。
aRp协议是“addressResolutionprotocol”(地址解析协议)的缩写。
所谓“地址解析”就是主机在发送帧前将目标网络层地址转换成目标物理地址的过程。
在使用tcp/ip协议的以太网中,即完成将ip地址映射到mac地址的过程——使用aRp协议通过目标设备的ip地址,查询目标设备的mac地址,以保证通信的顺利进行。
2.aRp报文格式
使用ip协议的以太网中aRp报文格式如下:
3.aRp的运行过程
在因特网中,数据报传递过程中包括如下步骤:
发送者知道目标端的ip地址,ip要求aRp创建一个aRp请求报文,其中包含了发送
方的物理地址、发送方的ip地址和目标端的ip地址。
目标的物理地址用0填充。
将报文传递到数据链路层,并在该层中用发送方的物理地址作为源地址,用物理广播地
址作为目的地址,将其封装在一个帧中。
同一链路中的每个主机或路由器都接收到这个帧,因为该帧中包含了一个广播目的地
址,所有的站点都对报文进行移交,并将其传递到aRp。
除了目标机器以外的所有机器都丢弃该报文。
目标机器对ip地址进行识别。
目标机器用一个包含其物理地址的aRp响应报文做出响应,并对该报文进行单播。
发送方接收到一个响应报文,这样它就知道了目标机器的物理地址。
这样就可以将携带目标机器数据的ip数据报封装在一个帧中,并单播到目的地址。
4.aRp缓存
实际上,在真正的协议实现中,并不是每次发送ip报文前都需要发送aRp请求报文来获取目的mac地址。
在大多数的系统中都存在着一个aRp缓存表。
记录着已经获取的mac
发送ip报文前总是先对aRp缓存表进行查找,看是否目标mac地址存在于缓存表中,如果存在,则不需要发送aRp请求报文而直接使用此地址进行ip报文的发送。
如果不存在,则发送aRp请求报文,并将结果存于aRp缓存表中供以后使用。
另外,aRp缓存表采用了老化机制,在一段时间内如果表中的某一行没有使用,就会被删除,这样可以大大减少aRp缓存表的长度,加快查询速度。
5.aRp代理
aRp本身无法跨跃不同网段。
当数据要发往外部网络时,通常是首先使用aRp请求网关路由器的mac地址,之后将数据发往网关路由器,由网关路由器进行转发(动画演示)。
但有时由于管理或地域等原因,我们的内部网络又会划分为很多子网,这时我们可以通过修改网络内每台主机的本地路由,使发往其它子网的数据发送到连接两个子网的路由器,再由路由器转发。
但这样也许并不是一个易于管理和维护的方案。
我们可以使用aRp代理使子网的划分对每台主机更加透明化。
aRp代理的工作原理很简单:
当aRp请求是从一个网络的主机发往另一个网络的主机时,启用aRp代理的连接这两个网络的路由器将回答该请求,使请求的发送者误以为此路由器就是目标主机,而将所有数据帧发送到此路由器。
路由器在收到数据帧后,再将其转发到真正的目标主机(动画演示)。
aRp代理实际上是使用了简单的欺骗手段,使网络内的主机错误的认为目标主机与自己处于同一网段内,从而达到了透明化子网划分的目的。
实验原理
6.aRp地址解析过程
aRp模块接收到来自上层协议(ip)的数据报后,提取其下一跳ip地址。
如果下一跳ip地址在aRp高速缓存中有对应的项目
使用该对应项的物理地址(mac)作为数据报的目的mac地址。
否则
广播发送aRp请求报文来获取下一跳ip地址所对应的物理地址。
等待接收aRp应答。
如果收到aRp应答
使用应答中的物理地址(mac)作为数据报的目的mac地址。
将下一跳ip地址和应答中的物理地址结合到一起,添加到aRp高速缓存。
否则
停止发送数据报
7.常用网络命令aRp
aRp是一个重要的tcp/ip协议,并且用于确定对应ip地址的网卡物理地址。
使用arp命令,你能够查看本地计算机或另一台计算机的aRp高速缓存中的当前内容。
此外,使用arp命令,也可以用人工方式输入静态的网卡物理/ip地址对,你可能会使用这种方式为缺省网关和本地服务器等常用主机进行这项作,有助于减少网络上的信息量。
常用命令选项:
(1)arp-a或arp-g--用于查看高速缓存中的所有项目。
-a和-g参数的结果是一样的,多年来-g一直是unix平台上用来显示aRp高速缓存中所有项目的选项,而windows用的是arp-a(-a可被视为all,即全部的意思),但它也可以接受比较传统的-g选项。
(2)arp-aip--如果你有多个网卡,那么使用arp-a加上接口的ip地址,就可以只显示与该接口相关的aRp缓存项目。
(3)arp-sip物理地址——你可以向aRp高速缓存中人工输入一个静态项目。
该项目在计算机引导过程中将保持有效状态,或者在出现错误时,人工配置的物理地址将自动更新该项目。
(4)arp-dip--使用本命令能够人工删除一个静态项目。
四、实验步骤
1.主机在命令行下运行“arp-a”命令,察看aRp高速缓存表,并回答以下问题:
aRp高速缓存表由哪几项组成?
2.主机启动协议分析器并设置过滤条件(提取aRp、icmp),开始捕获数据,并分析捕获的数据包是aRp请求分组还是aRp响应分组,例举5-10个(ip地址,硬件地址)对。
3.分析aRp数据包的格式。
3.主机在命令行下运行“arp-d”命令,清空aRp高速缓存。
4.主机采用ping命令。
5.主机停止捕获数据,并立即在命令行下运行“arp-a”命令察看aRp高速缓存。
篇三:
aRp(地址转换协议)
aRp(地址转换协议)
aRp是一个重要的tcp/ip协议,并且用于确定对应ip地址的网卡物理地址。
实用arp命令,你能够查看本地计算机或另一台计算机的aRp高速缓存中的当前内容。
按照缺省设置,aRp高速缓存中的项目是动态的,每当发送一个指定地点的数据报且高速缓存中不存在当前项目时,aRp便会自动添加该项目。
一旦高速缓存的项目被输入,它们就已经开始走向失效状态。
例如,在windowsnt网络中,如果输入项目后不进一步使用,物理/ip地址对就会在2至10分钟内失效。
因此,如果aRp高速缓存中项目很少或根本没有时,请不要奇怪,通过另一台计算机或路由器的ping命令即可添加。
所以,需要通过arp命令查看高速缓存中的内容时,请最好先ping此台计算机(不能是本机发送ping命令)。
arp-a或arp-g--用于查看高速缓存中的所有项目。
arp-aip--如果你有多个网卡,那么使用arp-a加上接口的ip地址,就可以只显示与该接口相关的aRp缓存项目。
arp-sip物理地址――你可以向aRp高速缓存中人工输入一个静态项目。
arp-dip--使用本命令能够人工删除一个静态项目。
看到这里,你也许已经有些累了……其实对于一般用户来说也已经足够――你可以用
ipconfig和ping命令来查看自己的网络配置并判断是否正确、可以用netstat查看别人与你所建立的连接并找出icq使用者所隐藏的ip信息、可以用arp查看网卡的mac地址――这些已足已让你丢掉菜鸟的头衔。
如果你并不满足,那就“硬着头皮”(下面的内容可能有些枯燥)继续Followme......
tracert
当数据报从你的计算机经过多个网关传送到目的地时,tracert命令可以用来跟踪数据报使用的路由(路径)。
该实用程序跟踪的路径是源计算机到目的地的一条路径,不能保证或认为数据报总遵循这个路径。
如果你的配置使用dns,那么你常常会从所产生的应答中得到城市、地址和常见通信公司的名字。
tracert是一个运行得比较慢的命令(如果你指定的目标地址比较远),每个路由器你大约需要给它15秒钟
tracert的使用很简单,只需要在tracert后面跟一个ip地址或uRl,tracert会进行相应的域名转换的。
tracert一般用来检测故障的位置,你可以用tracertip在哪个环节上
出了问题,虽然还是没有确定是什么问题,但它已经告诉了我们问题所在的地方,你也就可以很有把握的告诉别人――某某出了问题。