ARP协议详解之ARP动态与静态条目的生命周期
ARP协议详解之ARP动态与静态条目的生命周期
ARP动态条目的生命周期
动态条目随时间推移自动添加和删除。
- q 每个动态ARP缓存条目默认的生命周期是两分钟。当超过两分钟,该条目会被删掉。所以,生命周期也被称为超时值。
- q 延长规则:当ARP条目已存在,使用该条目后,将会重设超时值为两分钟。
【实例1-12】下面将验证动态条目的生命周期是两分钟。具体操作步骤如下所示:
(1)查看本机的ARP缓存表。执行命令如下所示:
- C:\Documents and Settings\Administrator>arp -a
- No ARP Entries Found
输出的信息表示本节中没有任何ARP缓存条目。
(2)在本机上执行ping命令,通过ARP请求广播获取动态ARP条目。如下所示:
- C:\Documents and Settings\Administrator>ping 192.168.7.6
- Pinging 192.168.7.6 with 32 bytes of data:
- Reply from 192.168.7.6: bytes=32 time<1ms TTL=64
- Reply from 192.168.7.6: bytes=32 time<1ms TTL=64
- Reply from 192.168.7.6: bytes=32 time<1ms TTL=64
- Reply from 192.168.7.6: bytes=32 time<1ms TTL=64
- Ping statistics for 192.168.7.6:
- Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
- Approximate round trip times in milli-seconds:
- Minimum = 0ms, Maximum = 0ms, Average = 0ms
执行以上命令后,将会产生接口地址为192.168.7.6的动态ARP缓存条目。
(3)查看ARP缓存表。执行命令如下所示:
- C:\Documents and Settings\Administrator>arp -a
- Interface: 192.168.7.8 --- 0x2
- Internet Address Physical Address Type
- 192.168.7.6 50-e5-49-eb-46-8d dynamic
从输出的信息中可以看到,本机中存在一条ARP缓存条目。
(4)过两分钟后,再次查看ARP缓存表。发现该条目已被删除。显示结果如下所示:
- C:\Documents and Settings\Administrator>arp -a
- No ARP Entries Found
从输出信息中,可以确定前面的动态ARP条目已被删除。
【实例1-13】下面将验证重复使用动态条目,条目会一直生效。具体操作步骤如下所示:
(1)查看本机的ARP缓存表。执行命令如下所示:
- C:\Documents and Settings\Administrator>arp -a
- No ARP Entries Found
输出的信息表示本节中没有任何ARP缓存条目。
(2)在本机上执行ping命令,通过-t选项实现一直使用获取到的动态条目。如下所示:
- C:\Documents and Settings\Administrator>ping 192.168.6.100 -t
- Pinging 192.168.6.100 with 32 bytes of data:
- Reply from 192.168.6.100: bytes=32 time<1ms TTL=64
- Reply from 192.168.6.100: bytes=32 time<1ms TTL=64
- Reply from 192.168.6.100: bytes=32 time<1ms TTL=64
- Reply from 192.168.6.100: bytes=32 time<1ms TTL=64
- Reply from 192.168.6.100: bytes=32 time<1ms TTL=64
- Reply from 192.168.6.100: bytes=32 time<1ms TTL=64
- Reply from 192.168.6.100: bytes=32 time<1ms TTL=64
- Reply from 192.168.6.100: bytes=32 time<1ms TTL=64
- Reply from 192.168.6.100: bytes=32 time<1ms TTL=64
- Reply from 192.168.6.100: bytes=32 time<1ms TTL=64
- Reply from 192.168.6.100: bytes=32 time<1ms TTL=64
- Reply from 192.168.6.100: bytes=32 time<1ms TTL=64
- ......
执行以上命令后,将会产生接口地址为192.168.6.100的动态ARP缓存条目。
(3)查看ARP缓存表。如下所示:
- C:\Documents and Settings\Administrator>arp -a
- Interface: 192.168.7.8 --- 0x2
- Internet Address Physical Address Type
- 192.168.6.100 50-e5-49-eb-46-8d dynamic
从输出的信息中,可以看到本机中有一条动态ARP条目。该主机的ARP条目缓存时间,可以通过抓包工具获取到。下面使用Wireshark过滤只显示ARP协议的数据包,如图1.20所示。

图1.20 动态条目重复使用
从该界面可以看到,捕获到的所有数据包中只有第9个数据帧是ARP广播请求包。这是因为在第一次通信时,不知道对方(192.168.6.100)的MAC地址。在后面捕获到的数据包中,没有出现过这样的广播包。这说明在该过程中,主机中的ARP条目没有发送变化。
ARP静态条目的生命周期
静态条目一直保留在ARP缓存中,意思是永久生效。但不同的操作系统中,静态条目的保存方式是不同的。例如,在Windows XP系统中,重新启动计算机后该条目失效。而在Windows 7中,即使重新启动计算机后,该静态条目仍然保存。下面通过几个实例依次验证各种操作系统对静态条目的处理方式。
【实例1-14】下面验证Windows XP的静态条目不保存情况。具体操作步骤如下所示:
(1)手动绑定接口为192.168.7.8的ARP条目。执行命令如下所示:
- C:\Documents and Settings\Administrator>arp -s 192.168.7.7 00-19-21-3f-c3-e5
执行以上命令后,没有任何输出信息。
(2)查看ARP缓存表。执行命令如下所示:
- C:\Documents and Settings\Administrator>arp -a
- Interface: 192.168.7.8 --- 0x2
- Internet Address Physical Address Type
- 192.168.7.7 00-19-21-3f-c3-e5 static
从输出的信息中,可以看到接口为192.168.7.7的ARP缓存条目为static(静态)。
(3)重新启动计算机。启动后,再次查看ARP缓存表。如下所示:
- C:\Documents and Settings\Administrator>arp -a
- No ARP Entries Found
输出的信息表示没有找到ARP条目。
【实例1-15】下面验证Windows 7的静态条目保存。具体操作步骤如下所示:
(1)手动绑定接口为192.168.7.6的ARP条目。执行命令如下所示:
- C:\Documents and Settings\Administrator>arp -s 192.168.7.6 50-e5-49-eb-46-8d
执行以上命令后,没有任何输出信息。
(2)查看ARP缓存表。执行命令如下所示:
- C:\Documents and Settings\Administrator>arp -a
- Interface: 192.168.7.8 --- 0x2
- Internet Address Physical Address Type
- 192.168.7.6 50-e5-49-eb-46-8d 静态
从输出的信息中,可以看到接口为192.168.7.6的ARP缓存条目为静态。
(3)重新启动计算机。启动后,再次查看ARP缓存表。如下所示:
- C:\Documents and Settings\Administrator>arp -a
- Interface: 192.168.7.8 --- 0x2
- Internet Address Physical Address Type
- 192.168.7.6 50-e5-49-eb-46-8d 静态
从输出的信息中可以看到绑定的静态条目仍然存在。
【实例1-16】下面验证Linux的静态缓存是否保存。具体操作步骤如下所示:
(1)查看本机的ARP缓存表。执行命令如下所示:
- root@kali:~# arp -a
- localhost (192.168.5.5) at 00:0c:29:56:bd:21 [ether] on eth0
输出的信息,表示本机中有一条动态ARP缓存条目。
(2)将192.168.5.5的IP地址与MAC地址绑定。执行命令如下所示:
- root@kali:~# arp -s 192.168.5.5 00:0c:29:56:bd
执行以上命令后,接口为192.168.5.5的ARP条目将为静态。
(3)查看ARP缓存表。执行命令如下所示:
- root@kali:~# arp -a
- localhost (192.168.5.5) at 00:0c:29:56:bd:00 [ether] PERM on eth0
从输出的信息中可以看到查看到的ARP条目中,出现了一个PERM关键字。该关键字表示这条ARP条目为静态。
(4)重新启动计算机。启动后,再次查看ARP缓存表。执行命令如下所示:
- root@kali:~# arp -a
执行以上命令后,没有任何信息输出。这表示该静态条目,重新启动计算机后将被删除。
ARP协议详解之ARP动态与静态条目的生命周期的更多相关文章
- ARP协议具体解释之ARP动态与静态条目的生命周期
ARP协议详细解释之ARP动态与静态条目的生命周期 ARP动态条目的生命周期 动态条目随时间推移自己主动加入和删除. q 每一个动态ARP缓存条目默认的生命周期是两分钟.当超过两分钟,该条目会被删掉 ...
- ARP协议详解之Gratuitous ARP(免费ARP)
ARP协议详解之Gratuitous ARP(免费ARP) Gratuitous ARP(免费ARP) Gratuitous ARP也称为免费ARP,无故ARP.Gratuitous ARP不同于一般 ...
- ARP协议详解
ARP协议:地址解析协议,将IP地址映射到MAC地址. ARP缓存:每个主机都有存储IP地址和MAC地址的缓冲区.每条记录最长生存时间为10分钟,如果一条记录2分钟没有使用,则会被删除.如果始终在使用 ...
- ARP协议详解RARP
简单来说,ARP协议是IP地址转换成MAC地址的协议.链路层协议.过程如下: 1:首先,每个主机都会在自己的ARP缓冲区中建立一个ARP列表,以表示IP地址和MAC地址之间的对应关系. 2:当源主机要 ...
- TCP/IP协议详解笔记——ARP协议和RARP协议
ARP:地址解析协议 对于以太网,数据链路层上是根据48bit的以太网地址来确定目的接口,设备驱动程序从不检查IP数据报中的目的IP地址.ARP协议为IP地址到对应的硬件地址之间提供动态映射. 工作过 ...
- HTTP TCP UDP ICMP IP ARP 协议详解(10.15 第二十一天)
ARP协议 ARP(Address Resolution Protocol)协议 地址解析协议 把网络层的IP地址翻译成在数据链路层寻址的48位硬件地址(MAC地址) 在OSI模型中ARP协议属于链路 ...
- JVM详解之:汇编角度理解本地变量的生命周期
目录 简介 本地变量的生命周期 举例说明 优化的原因 总结 简介 java方法中定义的变量,它的生命周期是什么样的呢?是不是一定要等到方法结束,这个创建的对象才会被回收呢? 带着这个问题我们来看一下今 ...
- ARP缓存表的构成ARP协议全面实战协议详解、攻击与防御
ARP缓存表的构成ARP协议全面实战协议详解.攻击与防御 1.4.3 ARP缓存表的构成 在局域网的任何一台主机中,都有一个ARP缓存表.该缓存表中保存中多个ARP条目.每个ARP条目都是由一个IP ...
- 动态选路、RIP协议&&OSPF协议详解
动态选路.RIP协议&&OSPF协议详解 概念 当相邻路由器之间进行通信,以告知对方每个路由器当前所连接的网络,这时就出现了动态选路.路由器之间必须采用选路协议进行通信,这样的选路协议 ...
随机推荐
- Hadoop生态圈-Azkaban实现文件上传到hdfs并执行MR数据清洗
Hadoop生态圈-Azkaban实现文件上传到hdfs并执行MR数据清洗 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 如果你没有Hadoop集群的话也没有关系,我这里给出当时我 ...
- DNA序列编码中Hairpin的定义和计算
DNA序列编码中Hairpin的定义和计算 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考文献 [1] 张凯. DNA计算核酸编码优化及算法设计[D]. 2008. [2] Shin, ...
- Hadoop上传文件时报错: could only be replicated to 0 nodes instead of minReplication (=1)....
问题 上传文件到Hadoop异常,报错信息如下: org.apache.hadoop.ipc.RemoteException(java.io.IOException): File /home/inpu ...
- bzoj千题计划222:bzoj2329: [HNOI2011]括号修复(fhq treap)
http://www.lydsy.com/JudgeOnline/problem.php?id=2329 需要改变的括号序列一定长这样 :)))((( 最少改变次数= 多余的‘)’/2 [上取整] + ...
- scala 资料集结
Scala入门到精通 http://lib.csdn.net/base/scala/structure http://hongjiang.info/scala/ http://blog.csdn.ne ...
- mysql 创建用户自定义函数
为了防止分号产生的中途输出,自己定义一个 分隔符,这里仿照mysql官方的例子:使用两个美元符号 $$ 作为分割符号,下面这段代码就是创建一个自定义mysql函数的原型了,可以在这个基础上修改,这样, ...
- 一组数字,从1到n,从中减少了3个数,顺序打乱,放在n-3的数组里,找出丢失数字
曾经看到有这样一个JS题:有一组数字,从1到n,从中减少了3个数,顺序也被打乱,放在一个n-3的数组里请找出丢失的数字,最好能有程序,最好算法比较快假设n=10000 下面我也来贴一个算法. func ...
- Asp.Net中索引器的用法
索引器定义类似于属性,但其功能与属性并不相同.索引器提供一种特殊的方法编写get和set访问器.属性可以像访问字段一样访问对象的数据,索引器可以使用户像访问数组一样访问类成员. 一.索引器特性 1.g ...
- 大话C#中能使用foreach的集合的实现
大家都知道foreach的语法:foreach(var item in items){ Console.Writeln(item);} 通过这样一个简单的语句,就能实现遍历集合items中的所有元素. ...
- [HNOI2013]比赛 (用Hash实现记忆化搜索)
[HNOI2013]比赛 题目描述 沫沫非常喜欢看足球赛,但因为沉迷于射箭游戏,错过了最近的一次足球联赛.此次联 赛共N支球队参加,比赛规则如下: (1) 每两支球队之间踢一场比赛. (2) 若平局, ...