ARP(地址解析协议)

  • ARP(地址解析协议):根据IP地址获取物理地址的一个TCP/IP协议。主机发送信息时将包含目标IP地址的ARP请求广播到网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源。地址解析协议是建立在网络中各个主机互相信任的基础上的,网络上的主机可以自主发送ARP应答消息,其他主机收到应答报文时不会检测该报文的真实性就会将其记入本机ARP缓存;由此攻击者就可以向某一主机发送伪ARP应答报文,使其发送的信息无法到达预期的主机或到达错误的主机,这就构成了一个ARP欺骗。ARP命令可用于查询本机ARP缓存中IP地址和MAC地址的对应关系、添加或删除静态对应关系等。相关协议有RARP、代理ARP。NDP用于在IPv6中代替地址解析协议。

  • 为何要进行广播? 只知道逻辑定位而不知道物理地址。

  • ARP缓存表:用来储存IP地址和MAC地址的缓冲区,其本质就是一个IP–>MAC地址的对应表,表中每一条目分别记录了网络上其他主机的IP地址和对应的MAC地址。每一个以太网或令牌环网络适配器都有自己单独的表。当地址解析协议被询问一个已知IP地址节点的MAC地址时,先在ARP缓存中查看,若存在,就直接返回与之对应的MAC地址,若不存在,才发送ARP请求向局域网查询。
    为使广播量小,ARP维护IP地址到MAC地址映射的缓存以便将来使用。ARP缓存可以包含动态和静态项目。动态项目随时间推移自动添加和删除。每个动态ARP缓存项的潜在生命周期是10分钟。新加到缓存中的项目带有时间戳,如果某个项目添加后2分钟内没有在使用,此项目过期并从ARP缓存中删除;如果某个项目已在使用,则又收到2分钟的生命周期;如果某个项目始终在使用,则会另外收到2分钟的生命周期,一直到10分钟的最长时间周期。静态项目一直保留在缓存中,知道重新启动计算机为止。(非固定,只能临时缓存;长度有限,长时间不用就会丢弃)

  • 报文格式在这里插入图片描述
    硬件类型:16位字段,用来定义运行ARP的网络类型。每个局域网基于其类型被指派一个整数。例如:以太网的类型为1。ARP可用在任何物理网络上。
    协议类型:16位字段,用来定义使用的协议。例如:对IPv4协议这个字段是0800。ARP可用于任何高层协议
    硬件长度:8位字段,用来定义物理地址的长度,以字节为单位。例如:对于以太网的值为6。
    协议长度:8位字段,用来定义逻辑地址的长度,以字节为单位。例如:对于IPv4协议的值为4。
    操作码:16位字段,用来定义报文的类型。已定义的分组类型有两种:ARP请求(1),ARP响应(2)。
    源硬件地址:这是一个可变长度字段,用来定义发送方的物理地址。例如:对于以太网这个字段的长度是6字节。
    源逻辑地址:这是一个可变长度字段,用来定义发送方的逻辑(IP)地址。例如:对于IP协议这个字段的长度是4字节。
    目的硬件地址:这是一个可变长度字段,用来定义目标的物理地址,例如,对以太网来说这个字段位6字节。对于ARP请求报文,这个字段为全0,因为发送方并不知道目标的硬件地址。
    目的逻辑地址:这是一个可变长度字段,用来定义目标的逻辑(IP)地址,对于IPv4协议这个字段的长度为4个字节。

  • 无故ARP:主机有时会使用自己的IP地址作为目标地址发送ARP请求------故ip地址不能重复,MAC天然存在一定不重复;当有新用户加入局域网时,该用户应当主动公布自己的MAC,同时解决IP冲突。
    用途:

  1. 检查重复地址(如果收到ARP相应表明存在重复地址)
  2. 用于通告一个新的数据链路标识,当一个设备收到一个arp请求时,发现arp缓冲区中已有发送者的IP地址,则更新此IP地址的MAC地址条目。
  3. 某个子网内运行热备份路由协议(HSRP)的路由器如果从其他路由器变成了主路由器,他就会发送一个无故ARP来更新该子网上的ARP缓存。
  • 代理ARP:对于没有配置缺省网关的计算机要和其他网络中的计算机实现通讯,网关收到源计算机的ARP请求会使用自己的MAC地址与目标计算机的IP地址对源计算机进行应答。代理ARP就是将一个主机作为对另一个主机ARP进行应答。它能使得在不影响路由表得情况下添加一个新的router,使得子网对该主机来说变得更透明化。同时而会带来巨大的风险,除了ARP欺骗,和某个网段内的ARP增加,最重要的就是无法对网络拓扑进行网络概括。代理ARP的使用一般是使用在没有配置默认网关和路由策略的网络上。(非本地通讯,跨网段通讯,需要把信息交给网关)
  • ARP的三种模式
    第一种:ARP A、B在同一个网段,出发ARP回应
    第二种:代理ARP A、B不在同一个网段,触发代理ARP回应
    第三种:无故ARP A=B是同一个IP地址,触发无故ARP
    -----无故ARP作用:检测IP地址冲突,刷新二层交换机的MAC地址表

在这里插入图片描述
如上图所示,实现A——F的通讯:
A

源MAC目标MAC源IP目标IP
AB1.13.2

B
收到A,拆除A 的二层头部

C

源MAC目标MAC源IP目标IP
CD1.13.2

D
收到C,拆除C的二层头部;

E

源MAC目标MAC源IP目标IP
EF1.13.2

F
找到目标IP建立连接

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值