ARP是什么意思?ARP是什么协议?ARP协议用于什么地方
ARP是什么意思?ARP是什么协议?ARP其实就是一个地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/IP协议。
ARP的基本功能为透过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。
那什么是地址解析协议?地址解析协议由互联网工程任务组(IETF)在1982年11月发布的RFC 826中描述制定。 地址解析协议是IPv4中必不可少的协议,而IPv4是使用较为广泛的互联网协议版本。
不过现在IPv6也已经开启应用,但是ARP只是IPv4中网络层必不可少的协议,不过在IPv6中已不再适用,并被邻居发现协议(NDP)所替代。
网络设备有数据要发送给另一台网络设备时,必须要知道对方的网络层地址(即IP地址)。IP地址由网络层来提供,但是仅有IP地址是不够的,IP数据报文必须封装成帧才能通过数据链路进行发送。数据帧必须要包含目的MAC地址,因此发送端还必须获取到目的MAC地址。通过目的IP地址二获取的MAC地址的过程是由ARP(Address Resolution Protocol)协议来实现的。
有网友留言给出了一个比较通俗易懂的解释说明,IP地址和MAC地址的概念,一个是网络的虚拟地址,一个是物理地址;
我们把IP地址比作是一个人的小区名字,比如AA新村,MAC地址是一个人的具体地址(所谓具体地址,就是他到底在地球的哪里,比如可以理解为gps上的坐标吧)
arp协议就是负责把这个新村名字换成地址让你知道怎么去。毕竟我们去一个地方肯定都是记对方的住址比如什么小区,而不会记人家坐标吧。
比如你要去AA新村这个IP,你会发一个广播,问AA新村是谁呀 ,然后这个IP地址的主人收到后回复,我是AA 新村,我的地址是:XXXXX,把MAC地址一贴,发信人就知道怎么过去了,是走哪条道都知道。
ARP协议用于什么地方
ARP可以解决同一个局域网内主机或路由器的IP地址和MAC地址的映射问题。
主机发送信息时将包含目标IP地址的ARP请求广播到网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源。
ARP命令可用于查询本机ARP缓存中IP地址和MAC地址的对应关系、添加或删除静态对应关系等。相关协议有RARP、代理ARP。NDP用于在IPv6中代替地址解析协议。
延伸阅读:ARP欺骗(安全隐患)
arp协议(地址解析协议)是建立在网络中各个主机互相信任的基础上的,网络上的主机可以自主发送ARP应答消息,其他主机收到应答报文时不会检测该报文的真实性就会将其记入本机ARP缓存。
由此攻击者就可以向某一主机发送伪ARP应答报文,使其发送的信息无法到达预期的主机或到达错误的主机,这就构成了一个ARP欺骗。
ARP欺骗可以导致目标计算机与网关通信失败,更会导致通信重定向,所有的数据都会通过攻击者的机器,因此存在极大的安全隐患。
防御措施
不要把网络安全信任关系建立在IP基础上或MAC基础上(RARP同样存在欺骗的问题),理想的关系应该建立在IP+MAC基础上。
设置静态的MAC--》IP对应表,不要让主机刷新设定好的转换表。
除非很有必要,否则停止使用ARP,将ARP做为永久条目保存在对应表中。
使用ARP服务器。通过该服务器查找自己的ARP转换表来响应其他机器的ARP广播。确保这台ARP服务器不被黑。
使用“proxy”代理IP的传输。
使用硬件屏蔽主机。设置好路由,确保IP地址能到达合法的路径(静态配置路由ARP条目),注意,使用交换集线器和网桥无法阻止ARP欺骗。
管理员定期用响应的IP包中获得一个RARP请求,然后检查ARP响应的真实性。
管理员定期轮询,检查主机上的ARP缓存。
使用防火墙连续监控网络。注意有使用SNMP的情况下,ARP的欺骗有可能导致陷阱包丢失。
若感染ARP病毒,可以通过清空ARP缓存、指定ARP对应关系、添加路由信息、使用防病毒软件等方式解决。(综合自 PHP中文网 百科)
评论
查看更多