深入解析ARP欺骗攻击防护之ARP

安全 黑客攻防
本文在介绍ARP欺骗攻击防护之前首先向大家了ARP的基本信息,以便大家查阅,帮助大家理解ARP。

ARP(地址解析协议)是在仅知道主机的IP地址时确定其物理地址的一种协议。因IPv4和以太网的广泛应用,其主要用作将IP地址翻译为以太网的MAC地址,但其也能在ATM和FDDI IP网络中使用。从IP地址到物理地址的映射有两种方式:表格方式和非表格方式。ARP具体说来就是将网络层(IP层,也就是相当于OSI的第三层)地址解析为数据连接层(MAC层,也就是相当于OSI的第二层)的MAC地址。

假设:

计算机A的IP为192.168.1.1,MAC地址为00-11-22-33-44-01;

计算机B的IP为192.168.1.2,MAC地址为00-11-22-33-44-02;

ARP工作原理如下:

在TCP/IP协议中,A给B发送IP包,在包头中需要填写B的IP为目标地址,但这个IP包在以太网上传输的时候,还需要进行一次以太包的封装,在这个以太包中,目标地址就是B的MAC地址.

计算机A是如何得知B的MAC地址的呢?解决问题的关键就在于ARP协议。

在A不知道B的MAC地址的情况下,A就广播一个ARP请求包,请求包中填有B的IP(192.168.1.2),以太网中的所有计算机都会接收这个请求,而正常的情况下只有B会给出ARP应答包,包中就填充上了B的MAC地址,并回复给A。

A得到ARP应答后,将B的MAC地址放入本机缓存,便于下次使用。

本机MAC缓存是有生存期的,生存期结束后,将再次重复上面的过程。

ARP基本功能

在以太网协议中规定,同一局域网中的一台主机要和另一台主机进行直接通信,必须要知道目标主机的MAC地址。而在TCP/IP协议栈中,网络层和传输层只关心目标主机的IP地址。这就导致在以太网中使用IP协议时,数据链路层的以太网协议接到上层IP协议提供的数据中,只包含目的主机的IP地址。于是需要一种方法,根据目的主机的IP地址,获得其MAC地址。这就是ARP协议要做的事情。所谓地址解析(address resolution)就是主机在发送帧前将目标IP地址转换成目标MAC地址的过程。   

另外,当发送主机和目的主机不在同一个局域网中时,即便知道目的主机的MAC地址,两者也不能直接通信,必须经过路由转发才可以。所以此时,发送主机通过ARP协议获得的将不是目的主机的真实MAC地址,而是一台可以通往局域网外的路由器的某个端口的MAC地址。于是此后发送主机发往目的主机的所有帧,都将发往该路由器,通过它向外发送。这种情况称为ARP代理(ARP Proxy)。

ARP缓存表采用了老化机制(即设置了生存时间TTL),在一段时间内如果表中的某一行没有使用,就会被删除,这样可以大大减少ARP缓存表的长度,加快查询速度。

【编辑推荐】

  1. 浅析让内网安全问题
  2. 剖析ARP缓存感染攻击
  3. 对黑金ARP病毒原理的阐述
  4. Windows Vista有效防止ARP病毒 图解
责任编辑:佚名 来源: 上海网域网
相关推荐

2011-04-06 10:36:21

2011-04-06 10:31:53

2013-04-01 10:12:39

2011-04-06 10:03:16

2019-10-31 08:43:43

ICMPARP协议ARP欺骗

2010-09-16 15:39:18

2010-09-07 10:44:14

2011-04-06 11:20:46

2017-01-10 08:48:21

2010-01-11 10:46:31

2010-06-09 15:30:51

2012-12-13 10:34:35

ARP欺骗

2013-09-17 09:08:07

ARP欺骗IP

2011-07-20 11:01:39

2010-09-29 10:21:50

2010-09-16 16:06:37

2009-08-17 08:24:52

2009-07-23 16:50:04

2012-04-06 10:04:21

2010-06-21 17:51:53

Linux Arp命令
点赞
收藏

51CTO技术栈公众号