Dynamic ARP Inspection(DAI)工作原理及测试

简介:

一.工作原理:

A.根据DHCP Snooping或手工方式形成的MAC地址与IP地址绑定表,来确定网络中的非法接入的MAC地址

B.同时为了防止恶意ARP欺骗,还可以对接口的arp请求包进行限速

---测试发现,对于非信任口的arp请求和回复(包括无理arp)都会被丢弃,因此觉得在非信任端口做限速没有多大必要(没有手工修改DHCP绑定表,或用arp access-list做排除的情况)

参考链接:http://wenku.baidu.com/view/cda2e815c5da50e2534d7f05.html

二.测试拓扑:

测试交换机IOS:

--Cisco IOS Software, C3560 Software (C3560-IPSERVICESK9-M), Version 12.2(55)SE3, RELEASE SOFTWARE (fc1)

三.配置步骤:

A.交换机:

①全局开启DHCP Snooping

ipdhcp snooping

②在VLAN 11启用DHCP Snooping

ipdhcp snooping vlan 11

③指定连接R2(DHCP服务器)的接口为信任接口

interface FastEthernet0/2
ip dhcp snooping trust

④在VLAN 11开启DAI

ip arp inspection vlan 11

B.DHCP服务器配置

①设定ip地址池

ip dhcp pool dhcppool
  network 10.1.1.0 255.255.255.0
  default-router 10.1.1.2

②信任82选项

interface GigabitEthernet0/0
ip dhcp relay information trusted

四.测试:

A.R1和PC1都作为DHCP客户端

---这时DHCP Snooping binding表中同时有R1和PC1的mac地址和IP对照表,因此当R1去ping PC1时,PC1的ARP Reply包能够被交换机正常转发,相反也是一样,所以ping通

B.将PC的IP手工指定为DHCP分派之外的其他地址

---比如10.1.1.130

---这时DHCP Snooping binding表中没有PC1的mac地址和IP对照表,立马报出日志:

*Mar  2 00:45:40.424: %SW_DAI-4-DHCP_SNOOPING_DENY: 1 Invalid ARPs (Req) on Fa0/9, vlan 11.([0050.56bc.9f6a/10.1.1.130/0000.0000.0000/10.1.1.130/00:45:40 UTC Tue Mar 2

---这时R1 ping PC1不通,在PC1上面抓包,可以看到由R1发出的arp请求包,PC也给R1回复了一个arp reply包,但是R1上show arp却没有PC1的arp记录,可见DAI依据DHCP Snooping binding表来判断,如果没有记录的话,则把该端口的arp reply包给丢弃了

---如果这时PC1去ping R1的接口地址,不通,在PC上面抓包可以看到,发出的arp request包根本就没有得到回应,在R1上debug也看不到arp request,说明开启DAI后,DAI把没有记录的接口的ARPrequest包也给丢弃了。

---可见:交换机对DHCP Snooping绑定表没有记录及没有做特殊设置的接口的ARP回复包和请求包都会丢弃

C.对于DHCNP Snooping binding表没记录的解决方式

---R1和PC1虽然都作为DHCP客户端时能互相ping通,但是它们都ping不通10.1.1.2,DHCP服务器的地址。

---原因是DAI检查DHCP绑定表没有10.1.1.2的条目,将10.1.1.2回复的ARP Reply包给丢弃了

---这时R2上能收到R1和PC1发出的Arp Request包的,所以它的arp缓存里面有R1和PC1对应的条目的

---如果R1和PC1上手工添加R2的ARP记录,它们是可以PING通R2的

①指定连接静态IP的设备接口为信任接口

SW1(config-if)#ip arp inspection trust 
②设定arp access-list,并在vlan arp审查过滤时调用

arp access-list testarp
permit ip host 10.1.1.2 mac host 0002.0002.0002 

ip arp inspection filter testarp vlan 11 <static>

---这个static是可选的,输入和不输入有什么区别没有测试出来

---在输入arp access-list名称时是不进行检查的,即使输入不存在的名称,也不做提示

③在DHCP Snooping表中增加静态条目

ip source binding 0002.0002.0002 vlan 11 10.1.1.2 interface Fa0/2

---增加后可以通过如下命令查看:show ip source binding 显示动态和静态绑定项




本文转自 碧云天 51CTO博客,原文链接:http://blog.51cto.com/333234/1210133,如需转载请自行联系原作者

相关文章
|
7月前
|
监控 Java 测试技术
精准化测试原理简介
该文探讨了软件测试中的精准化测试问题,通过找不同游戏引出测试覆盖的挑战。文章指出,全面的测试覆盖并不现实,自动化测试虽有帮助但并非银弹,且面临成本和覆盖率局限。接着,文章提出需要“最强大脑”来快速识别代码差异、影响范围及测试覆盖率。为此,它介绍了通过语法分析器和字节码来定位代码差异,利用ASM进行调用链分析,并借助Jacoco进行覆盖率统计。此外,文章强调了增量覆盖率统计和调用链在接口测试中的重要性,同时提醒高覆盖率不代表高质量,测试策略应结合业务逻辑和代码审查。
|
7月前
|
缓存 网络协议 Ubuntu
dpdk课程学习之练习笔记一(接收,发送,arp,icmp功能测试)
dpdk课程学习之练习笔记一(接收,发送,arp,icmp功能测试)
190 0
|
7月前
|
存储 缓存 网络协议
dpdk课程学习之练习笔记二(arp, udp协议api测试)
dpdk课程学习之练习笔记二(arp, udp协议api测试)
187 0
|
7月前
|
JavaScript Java 测试技术
『App自动化测试之Appium基础篇』| 从定义、原理、环境搭建、安装问题排查等深入了解Appium
『App自动化测试之Appium基础篇』| 从定义、原理、环境搭建、安装问题排查等深入了解Appium
3022 0
|
3月前
|
芯片
LDO的原理及测试方法
一、基本结构 这是LM317芯片的核心,这个电路单元称为Bandgap Reference带隙基准源。属于模拟集成电路中的经典电路结构。 LDO拓扑结构图 常见的基本结构 利用VBE的负温度系数,而VT是正温度系数,正负温度系数抵消就的得到稳定的基准参考电压了(三极管的方程VBE=VT*In(lC/IS))。 二、测试意义 了解集成电路的内部结构对测试有意义么? 1、了解内部结构,才能更好的理解测试原理或者设计测试方案2、可以学习提升对电路结构的理解能力。 针对LM317,了解了内部简单原理,可以知道1、内部结构设计针对的是温度系数,因此可能受温度的影响,实际也是会受到温度的影
186 88
|
2月前
|
分布式计算 监控 Hadoop
Hadoop-29 ZooKeeper集群 Watcher机制 工作原理 与 ZK基本命令 测试集群效果 3台公网云服务器
Hadoop-29 ZooKeeper集群 Watcher机制 工作原理 与 ZK基本命令 测试集群效果 3台公网云服务器
43 1
|
3月前
|
设计模式 SQL 安全
PHP中的设计模式:单例模式的深入探索与实践在PHP的编程实践中,设计模式是解决常见软件设计问题的最佳实践。单例模式作为设计模式中的一种,确保一个类只有一个实例,并提供全局访问点,广泛应用于配置管理、日志记录和测试框架等场景。本文将深入探讨单例模式的原理、实现方式及其在PHP中的应用,帮助开发者更好地理解和运用这一设计模式。
在PHP开发中,单例模式通过确保类仅有一个实例并提供一个全局访问点,有效管理和访问共享资源。本文详细介绍了单例模式的概念、PHP实现方式及应用场景,并通过具体代码示例展示如何在PHP中实现单例模式以及如何在实际项目中正确使用它来优化代码结构和性能。
49 2
|
4月前
|
网络协议 网络架构
看完,保你秒懂“ARP中间人攻击”原理
看完,保你秒懂“ARP中间人攻击”原理
|
4月前
|
网络协议 安全 网络安全
ARP协议详解及其工作原理
【8月更文挑战第31天】
206 0
|
4月前
|
Web App开发 测试技术 API
Web自动化测试框架(基础篇)--Selenium WebDriver工作原理和环境搭建
本文详细介绍了Selenium WebDriver的工作原理,包括其架构、通信机制及支持的浏览器,并指导读者如何在Python环境下搭建Selenium WebDriver的测试环境,从安装Python和Selenium库到编写并运行第一个自动化测试脚本。
255 0