DHCPv6 snooping

DHCP V6简要说明
ipv6存在三种IP地址配置方式,一种是动态配置(dhcp)是本文介绍的主要对象;一种是无状态地址自动配置(SLAAC,即设备中生成IP),这个是DNP snooping关心的,本文不涉及;第三种就是静态配置,即用户手动设置,是本文中防护措施需要考虑的场景之一。
DHCPv6 是DHCP协议的ipv6版本。该协议允许终端快速自动地获取IPV6地址。该协议方便网络管理员管理和验证IPV6地址以及其他配置参数,而无需一一去每个终端检查上检查。终端在不同子网间移动时也不再需要重现设置IP地址。
DHCPv6协议的优点如上所述,显而易见。但是该协议也必不可免存在缺点:
1、 服务器不能感知网络上静态配置的IPV6地址;
2、 服务器不能感知网络上其他服务器分配的IPV6地址。
3、 该协议是一个单向驱动协议。服务器不能主动控制客户端,完全处于被动状态,其交互性和可靠性依赖于客户端。

客户端通常发送dhcpv6消息一般都是采用广播地址ff02::1:2 达到多个或者单个服务器,单个服务器则在客户端消息中的server identifier选项中的DUID来确认是否需要回应。如果消息中没有该选项,则表示是发送给所有服务器。
DHCPV6正常申请地址的报文交互过程如下,一般是四步:


上述报文交互过程可以看到,这边solicit定位服务器时,只能采用广播地址,但是我们知道广播域是非常局限的,它无法跨路由使用。这就要求每个物理网络中必须至少要有一台DHCPV6服务器。就算忽略经济问题,对网络管理员来说也是非常不便利的。因此协议中增加了relay场景,以便跨路由获取dhcpv6的服务



由客户端发起的请求报文都是广播报文,按理说request报文是在多个可用服务器中选择一个服务器,应该可以直接采用单播发包的,但是这个报文仍然是采用的广播,这个是因为relay不代理单播请求报文。只要服务器的网络中宏存在relay中继器,并且该relay有发送relay agent选项,则不可以使用单播进行请求。发送单播请求报文必须是在收到服务器发出的unicast option选项信息之后才行。

对于client而言,是无感知relay报文的。因此client并不知道自己是否跨三层申请地址了,即不清楚自己申请的IP地址是经relay转发的还是服务器直接分配的。所以一般情况下,所有client的请求报文都是广播处理。除非client接收到的应答报文中包含了unicast option,即服务器告诉客户端,他们是二层关系,客户端可以直接发单播过来。但是除非服务器认为他的服务网络内,一个relay都没有(一直收不到任何relay 报文)的情况下,才有可能向终端发送unicast option,告知终端可以发单播。一般情况下,服务器都会默认网络中存在relay。

DHCPv6 snooping应用场景
由于DHCP snooping当前用户表项的MAC地址是根据报文的源MAC生成,因此无法适用于relay场景。。。
问题:dhcp snp如何适配relay场景?为relay场景单独维护一套表项?即使如此,也无法利用ip source guard来过滤报文呢

1、从安全角度讲,DHCPV6协议也是架设在IP、UDP之上的服务协议,那么网络攻击行为也就一样存在于DHCP协议。常见的攻击行为就是大量砸包、伪造客户端攻击服务器,伪造服务器攻击终端,总之就是不让网络设备或者协议正常使用。其中,大流量砸包企图将网络设备砸晕这种攻击由设备自行防护,一般都有CPP和NFPP抵御措施,不在本篇讨论范围内。

①dhcpv6中,server完全处于被动,消息的可靠性全部掌握在客户端手上,这就意味着,不论什么消息,只要服务器接收到之后搜需要做出响应。
因此很容易被非法客户端钻了空子。
当一个非法客户端不断伪造DHCPV6报文,进行欺骗申请IPV6地址时,很有可能导致服务器IPV6地址耗尽,合法终端申请不到IPV6地址:

②非法服务器干扰合法服务器的分配,导致合法客户端申请到的网络地址不可用。

③服务器无法感知网络中静态配置的IPV6地址,如果网络中部分终端私自配置静态IP,则容易导致其他DHCP客户端IP地址冲突而无法上网。

④由于服务器过于被动,几乎无法对终端行为进行把控,更无法感知终端的位置信息,但实际网络部署中,经常会根据地理位置信息而分配不同的子网段,比如公司内部平台部门和无线部门使用的IP网段就不同,因此希望有一种机制,可以辅助DHCP服务器来进行分配,那么这个时候我们的DHCP snooping就可以非常响亮的登场了。
 

DHCPV6 snooping需要完成的业务:
1、过滤非法报文:
①丢弃非信任口收到的响应报文
②仅对来自非信任口的报文进行合法性检查
③丢弃与snp数据库中信息不一致的release、decline报文
④丢弃IP、mac等信息与数据库中不一致的请求报文

2、隔离非法服务器:
①链接在非信任端口的服务器均属于非法服务器,默认端口都是非法的,支持配置为信任端口。
②设备仅将客户端请求报文转发至信任口;
③设备仅转发从信任口接收的响应报文

3、辅助IP source guard 完成IP过滤功能
提供IP报文硬件过滤数据库  每一条记录包含  IP+MAC+ 端口 +VLAN  等信息
4、报文中增减option 18和 option37
Interface ID  的默认填充内容是接收到  DHCPv6 客户端请求报文的端口所属  VLAN 的编号以及端口索引;
Remote ID 的默认填充内容是接收到  DHCP 客户端请求报文的 DHCP 中继设备的桥  MAC 地址
①在请求报文中添加以上两个option
②在应答报文中去除以上两个option
③以上两个option支持标准格式和扩展模式两种格式




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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值