赞
踩
ARP
ARP(Address Resolution Protocol,地址解析协议)是将IP地址解析为以太网MAC地址(物理地址)的协议。在局域网中,当主机或其他网络设备有数据要发送给另一个主机或设备时,它必须知道对方的网络层地址(即IP地址)。但是仅仅有IP地址是不够的,因为IP数据报文必须封装成帧才能通过物理网络发送。因此发送方还需要有接收方的物理地址,也就需要一个从IP地址到物理地址的映射,ARP就是事先这么功能的协议。
1、ARP报文格式
ARP是一个独立的三层协议,所以ARP报文在此数据链路层传输时不需要经过IP协议的封装,而是直接生成自己的报文,其中包括ARP报头,到数据链路层后再由对应的数据链路层协议进行封装。ARP报文分为ARP请求和ARP应答报文两种,二者格式可以统一用下图表示:
硬件类型,表示ARP报文可以在哪种类型的网络上传输
上层协议类型,表示硬件地址要映射的协议地址类型
操作类型,指定本次ARP报文类型(请求/应答)
ARP报文并不是直接在网络层上发送的,它还是需要向下传输到数据链路层,所有当ARP报文传输到数据链路层后,需要再次进行封装。在以太网中,ARP传输到数据链路层后会封装成ARP帧。其格式如下图所示
可以看出,其帧封装都是一样的,网络层的直接作为数据链路层帧的数据部分。
目的MAC地址,如果是ARP请求帧,因为它是一个广播帧(后面会介绍),所以要填上广播MAC地址——FF-FF-FF-FF,其目标为网络上的所有主机
源MAC地址,发送ARP帧的节点MAC地址
帧类型,标识帧封装的上层协议
2、ARP映射表
无论是主机,还是交换机都会有一个用来缓存同一网段设备IP地址和MAC地址的ARP映射表,用于数据帧的转发。设备通过ARP解析到目的MAC地址后,将会在自己的ARP映射表中增加IP地址到MAC地址的映射表项,以用于后续到同一目的地数据帧的转发。
ARP表项分为动态ARP表项和静态ARP表型。
3*、ARP地址解析原理
这里说一下网关,网关实质上是一个网络通向其他网络的IP地址,是一个逻辑概念,定义网络的边界。路由器是物理设备,除具备网关功能外,还具备路由功能(以后再说)。
比如说只有两个网络,网络A(192.168.1.1~192.168.1.254)和网络B(192.168.2.1`192.168.2.254),子网掩码为255.255.255.0。可以看出这两个网络属于不同的两个网络,不能直接进行通信。即使连接在同一台交换机上,TCP/IP协议也会根据子网掩码判定两个网络中的主机处于不同网络里,不能进行网络间通信。(交换机是在物理层上工作,按MAC地址访问,所以也称二层交换机,两个子网间不能互访,除非是具备路由功能和VLAN功能的三层交换机)。这种情况下则需要通过网关进行通信。因为只有两个网络,也就一条连接路径,所以只需要网关就可以。
但如果是多个网络结构,形成一个网状,即两个网络之间可以有多条访问路径,这样则需要网关和路由器两种设备,不过现在路由器已经继承了网关的功能,所以只需要一个路由器即可,利用路由器的路由功能选择最佳路径进行通信。
RARP
RARP分组的格式与ARP分组基本一致。RARP为逆地址解析协议,作用与ARP相反,用于将MAC地址转换为IP地址。
具有本地磁盘的系统引导时,一般是从磁盘上的配置文件中读取IP地址,但是无盘机,如X中断或无盘工作站,则需要采用其他方法来获得IP地址。
总得说来就是,网络上的每个系统都具有唯一的硬件地址,它是由网络接口生产厂家配置的。无盘系统的RARP实现过程是从接口卡上读取唯一的硬件地址,然后发送一份RARP请求,请求某个主机响应该无盘系统的IP地址。
RARP的工作过程如下:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。