快速业务通道

网络协议基础:ARP简析

作者 佚名技术 来源 网络技术 浏览 发布时间 2012-07-03

关于ARP的简述

ARP:Address Resolution Protocol 地址解析协议。

RARP:Reverse Address Resolution Protocol 逆向地址解析协议。

不同的网络,如以太网,令牌网...,在数据链路层都有不同的寻址机制。

在以太网的局域网中,一台主机和另外一台主机通信发包,是根据48bit的以太网地址来确定目的接口的,设备驱动程序从不检查IP数据报中的目的IP地址。

地址解析协议(ARP)为这两种不同的地址形式提供映射:32bit的IP地址和数据链路层48bit地址的转换。RFC 826[Plummer1982]是ARP规范描述文档。

ARP为IP地址到对应的硬件地址之间提供动态映射。RARP是被那些没有磁盘驱动器的系统使用(一般是无盘工作站或X终端),它需要系统管理员进行手工设置。

ARP通信过程解析:

(1).比如在一个局域网上,一台主机A(192.168.0.12)要访问机器B(192.168.0.11)。他会发送一份称作ARP请求的以太网数据帧给以太网上的每个主机(广播包)。ARP请求数据帧中包含目的主机的IP地址,意思就是:“如果你是这个IP地址的拥有者,请回答你的硬件地址。”

(2).目的主机收到这份广播报文后,识别出这是发送端在寻问它的IP地址,于是发送一个ARP应答。这个ARP应答包含IP地址及对应的硬件地址。(非广播)

(3).收到ARP应答后,系统的ARP缓存便会记录MAC-IP的对应信息(ARP攻击点),在CMD里打ARP -a便可查询现在机器的ARP缓存情况。现在IP数据报现在就可以传送了。

在ARP背后有一个基本概念,那就是网络接口有一个硬件地址(一个48bit的值,标识不同的以太网或令牌环网络接口)。在硬件层次上进行的数据帧交换必须有正确的接口地址。但是,TCP/IP有自己的地址:32 bit的IP地址。

知道主机的IP地址并不能让内核发送一帧数据给主机。内核(如以太网驱动程序)必须知道目的端的硬件地址才能发送数据。ARP的功能是在32bit的IP地址和采用不同网络技术的硬件地址之间提供动态映射。

值得注意:

ARP协议是不可靠和无连接的,通常即使主机没有发出ARP请求,也会接受发给它的 ARP回应,并将回应的mac和ip对应关系放入自己的ARP缓存中。此外,内核为2.4.x的linux系统在ARP实现中,考虑到了ARP欺骗,不会接受未经请求的ARP回应,因此直接向这种系统发送ARP reply也是无效的,不过,有意思的是虽然它不会接受未经请求的ARP reply,但是只要接收到ARP的request,它就会更新自己的ARP缓存。

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号