设为首页 收藏本站
查看: 793|回复: 0

[经验分享] DHCP-Snooping与DAI

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-5-14 08:23:09 | 显示全部楼层 |阅读模式
简介

DHCP-Snooping(DHCP窥探):

当交换机开启了 DHCP-Snooping后,会对DHCP报文进行侦听,并可以从接收到的DHCP Request或DHCP Ack报文中提取并记录IP地址和MAC地址信息。另外,DHCP-Snooping允许将某个物理端口设置为信任端口或不信任端口。信任端口可以正常接收并转发DHCP Offer报文,而不信任端口会将接收到的DHCP Offer报文丢弃。这样,可以完成交换机对假冒DHCP Server的屏蔽作用,确保客户端从合法的DHCP Server获取IP地址。

  • dhcp-snooping的主要作用就是通过配置信任端口,隔绝非信任端口的DHCP-Server;
  • 与交换机DAI配合,防止ARP病毒的传播;
  • 建立和维护一张dhcp-snooping的绑定表,这张表一是通过dhcp ack包中的IP、mac生成的,二是可以手工指定  。这张表是后续的DAI(dynamic arp inspect)和IP source Guard基础。这两种类似的技术,是通过这张表来判定IP和Mac是否合法,来限制用户连接到网络。


DAI(动态ARP检测):

思科 Dynamic ARP Inspection (DAI),在交换机上提供IP地址和MAC地址的绑定, 并动态建立绑定关系;DAI 以 DHCP Snooping绑定表为基础(后者是前者的基础,没有DHCP Snooping的绑定表也就不能实施DAI),所以二层设备不能实施DAI技术。

作用:
  • 通过拒绝静态ip的ARP请求来防止静态配置的IP地址与DHCP服务器分配的客户端IP冲突;
  • 过滤静态配置的服务器的IP地址,服务器可以不受DAI的影响;



一.实验目的
  • 了解DHCP Snooping和DAI的工作原理;
  • 理解两者的前后关系;
  • 掌握其配置。


二.实验拓扑
wKiom1VTS66Q-1bJAAB8jeoWW2o920.jpg
环境:SW3560(真实设备)。两边用两台路由器做DHCP服务器,下面的两台PC作为客户端获取IP(用于验证),两台PC一台是我的真实机,另一台是虚拟机,fa0/5端口是与PC连接的;

三.实验规划

  • R1配置IP为192.168.100.2并配置DHCP地址池;
  • R3配置IP为192.168.100.254并配置DHCP地址池(作为一个攻击者);
  • SW3560的所有接口在vlan100,并在SW3560上设置DHCP-Snooping和DAI。


四.实验步骤

实验一:DHCP-Snooping

R1模拟可信的DHCPserver,R3模拟攻击者。
SW3560上创建VLAN100,并把所有接口加入进去

wKioL1VTTUDzE68DAAEOi7dfmXE288.jpg
R1配置

配置IP:
wKiom1VTS-bQ_kOJAAB6fJ_eGww541.jpg
配置地址池:
wKioL1VTTffwEFqkAAEFfnBUsOI100.jpg
地址池为:192.168.100.101---192.168.100.200,网关为100.2,指向自己。

R3配置

配置IP:
wKiom1VTTJTy3eQsAACPsJ3_qDo850.jpg
配置地址池:
R3-attacker(config)#ip dhcp pool vlan100
R3-attacker(dhcp-config)#network 192.168.100.0 255.255.255.0
R3-attacker(dhcp-config)#default-router 192.168.100.254
R3-attacker(dhcp-config)#ip dhcp excluded-address 192.168.100.1
                        192.168.100.200

地址池为:192.168.100.201---192.168.200.253,网关为100.254,指向自己。

配置完后用两台设备连接,自动获取IP地址
默认情况下,要求的是客户端从R1获得IP地址才是正确的。但是,客户端也有可能从R3获得IP地址,如下图:
wKioL1VTTiHTRmfrAAEd5OtcVoI547.jpg
wKiom1VTTLTRUp7SAADb1_ZHi3s594.jpg
是从R3获取到的DHCP。

说明:如拓扑图所示,R1是10M以太网端口,R3是百兆以太网端口,所默认情况下会从R3获得IP地址。这样较好的模拟了DHCP攻击者的角色。既然是从攻击者那里学到的IP地址,那么就实施策略让攻击者不可信。如下:

实施DHCP-Snooping,并配置fa0/3端口为信任端口。
wKioL1VTTk3gJah4AADh-obQ0AM345.jpg

关闭option项:
关闭DHCP的snooping的请求功能,如果不关闭DHCP snooping的请求功能,默认服务器发起一个DHCP snooping请求包到交换机,交换机会将这个请求包添加一个82位的字段,这个82位的字段修改了默认的网关,修改为0.0.0.0。当到了路由器时会认为这个0.0.0.0的地址不合法,此时客户端是获取不到地址的。

注:
配置fa0/3为信任端口,也就是说客户端只能从fa0/3这个端口向DHCP服务器发送请求包。此时fa0/1也就成了不可信端口,客户端的请求包是不会从这个端口发送出去的。

查看客户端
wKioL1VTTmGjipHsAADKsBLGrIs808.jpg
为验证效果,我们把fa0/3端口down掉,验证能不能从R3(即攻击者DHCP)获取IP
wKiom1VTTP6hV-VpAABA642rMJk287.jpg
wKioL1VTToqQKR6SAAENCBjNc8U743.jpg
如图:使用DHCP-Snooping之后,客户端不能从非可信端口学到IP。

以上就是DHCP-Snooping的使用,通过配置可信任端口,过滤掉来自欺骗方的DHCP地址分配。


实验一:DAI

DAI是对端口的ARP包进行检测,在DHCP绑定表中存在的对应项即可通过,如果将端口启用DAI trust则不进行ARP检测,上游设备中继口应设置为trust。如果DHCP绑定表为空,则应创建静态ARP表,命令如下:

Arp access-list static-arp
Permit ip host 192.168.1.11 mac host 0000.0000.0000
Ip arp inspection filter static-arp vlan 500
然后在与DAI配合使用即可。

应用环境介绍
工作环境中,虽然有DHCP分配地址,但是避免不了一些小白还是设置静态的,或是攻击者故意配置静态地址,这样就可能与Client动态获取到的地址一样,产生冲突。为了避免静态配置地址产生的影响,可以使用DAI(动态ARP检测)技术,让静态IP的ARP请求无效。
但是,服务器的地址都是静态设置的,如果实施DAI,必然会影响服务器。所以,可以将服务器MAC地址与IP地址手动邦定并过滤,避免DAI的影响。

IP源保护:

过滤静态主机地址

启用DAI之前:
先让动态获取IP的主机ping网关
wKiom1VTTSHQ6Yv0AADSI624LMg787.jpg
wKioL1VTTq-ifQW1AACpXNV_Mp4181.jpg
可以ping通
静态配置一个IP地址,然后ping网关
wKiom1VTTUagzZ1fAAEYnX988Ok032.jpg
wKioL1VTTs2xXr62AACpXNV_Mp4187.jpg
可以ping通。


启用DAI
wKioL1VTTuuT1YRMAABGl-0ZUck558.jpg
再次用静态配置的Client  ping网关(验证启用DAI之后是否能ping通),由于存在缓存,所以还是能ping通,此时建议把客户端的网卡禁用后启用,然后再ping:
wKiom1VTTYHg1ZaXAAEYnX988Ok982.jpg
wKioL1VTTwnyPm1UAACEgCXh4lk992.jpg
如图,启用动态ARP检测之后,静态配置的地址就不能与dhcp服务器通信了。
Ping的时候,DHCP服务器上也会出现提示错误ARP请求的消息,如下:
wKiom1VTTaHwV3hFAAJgqwv02bg180.jpg
这就是DAI—动态ARP检测机制的作用,防止攻击者通过配置与动态分配的地址一样,导致地址冲突而影响网络通信。动态ARP检测是基于DHCP的绑定表,实施动态ARP检测之后,只有DHCP绑定表中存在的才能与网管通信,没有的也就不能通信。


过滤服务器地址:
SW1(config)#ip source binding 000c.29f4.69f6 vlan100 192.168.100.110 interface fastEthernet 0/5
SW1(config)#ip dhcp excluded-address 192.168.1.110

上面的实验说到:DAI通过过滤静态地址来防止攻击的,但是服务器的地址都是静态设置的,这样一来,服务器也会收到DAI的影响。而实际工作中一般是不允许服务器出现访问故障的。所以就要利用DAI的静态地址邦定,过滤服务器的静态地址,使其不受DAI得影响。


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-66726-1-1.html 上篇帖子: Cisco端口安全 下篇帖子: EIGRP汇总后生成的Null0接口和路由黑洞详解
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表