ARP是什么意思?ARP是什么协议?ARP用在哪里?
ARP是什么意思?ARP是什么协议?其实ARP是一种地址解析协议,即ARP(Address ResoluTIon Protocol),是一种根据IP地址获取物理地址的TCP/IP协议。
ARP的基本功能是通过目标设备的IP地址查询目标设备的MAC地址,保证通信的畅通。
什么是地址解析协议?互联网工程任务组(IETF)在1982年11月发布的RFC 826中描述并制定了地址解析协议。地址解析协议是IPv4中的一个重要协议,IP v4是一个广泛使用的互联网协议版本。
然而现在已经应用了IPv6,但是ARP只是IPv4的网络层中必不可少的协议。但是,它在IPv6中不再适用,已被邻居发现协议(NDP)取代。
当一个网络设备有数据要发送给另一个网络设备时,它必须知道另一个网络设备的网络层地址(即IP地址)。IP地址是网络层提供的,但是只有IP地址是不够的。IP数据消息必须封装到帧中,然后才能通过数据链路发送。帧必须包含目的MAC地址,因此发送方也必须获得目的MAC地址。通过目的IP地址2获取MAC地址的过程是通过ARP(地址解析协议)协议实现的。
有网友给出了相对通俗易懂的解释。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服务器没有被黑。
使用“代理”来代理IP传输。
用硬件屏蔽主机。设置路由,确保IP地址可以到达合法路径(静态配置路由的ARP条目)。请注意,使用交换集线器和网桥无法防止ARP欺骗。
管理员定期从响应的IP包中获取RARP请求,然后检查ARP响应的真实性。
管理员定期轮询以检查主机上的ARP缓存。
使用防火墙持续监控网络。注意,当使用SNMP时,ARP欺骗可能导致陷阱数据包丢失。
如果感染了ARP病毒,可以通过清除ARP缓存、指定ARP对应、添加路由信息、使用杀毒软件来解决。(综合自PHP中文网百科)
标签:ARP地址IP