一种安全接入实时更新的方法及交换的制造方法
【专利摘要】本发明公开了一种安全接入实时更新的方法及交换机,所述方法包括:按照第一定时器定时周期,根据DHCP绑定表中用户设备的DHCP表项,广播ARP请求报文,并启动第二定时器进行计时;监听是否接收到ARP回应,如果在所述第二定时器设定时长截止前未接收到ARP回应,则确定所述DHCP表项的用户设备处于离线状态;重复执行上述广播操作,当所述DHCP表项的用户设备处于离线状态的次数达到设定阈值,则将所述DHCP表项在硬件ACL中ACL规则对应的ACL表项删除。本发明能够满足更多DHCP用户设备的接入要求,提高了交换机访问控制列表的利用率。
【专利说明】—种安全接入实时更新的方法及交换机
【技术领域】
[0001]本发明涉及计算机网络数据通信【技术领域】,尤其涉及一种安全接入实时更新的方法及交换机。
【背景技术】
[0002]动态地址解析协议(DHCP,Dynamic Host Configuration Protocol)是一种自动为用户设备分配IP地址以及其它选项(如网关、DNS等)的协议,广泛应用于局域网中,DHCP能够简化网络的部署,易于网络的维护。DHCP探听(DHCP SNOOPING)是一种监听DHCP请求过程的私有协议,它在交换装置中使用,能够针对每一个成功获取IP的用户设备生成一个对应的DHCP绑定表项。
[0003]免费ARP报文是一种特殊的地址解析协议(Address Resolution Protocol, ARP)报文,免费ARP报文中携带的发送端和目标端IP地址都是本机IP地址,报文的发送端MAC地址是本机MAC地址,报文的目标端MAC地址是广播地址。用户设备通过对外广播免费ARP报文来确定其它设备的IP地址是否与用户设备的IP地址冲突。当其它设备收到免费ARP报文后,如果发现报文中的IP地址和自己的IP地址相同,则给发送免费ARP报文的设备返回一个ARP回应,告知用户设备IP地址发生冲突。
[0004]访问控制列表(Access Control List, ACL)是由一或多条规则组成的集合,用于识别报文流,这里的规则是指描述报文匹配条件的判断语句,匹配条件可以是报文的源地址、目的地址和端口号等。网络设备依照这些规则识别出特定的报文,并根据预先设定的策略对其进行处理。
[0005]为了便于网络的维护和管理,防止用户设备私自接入网络,交换机可结合DHCPSNOOPING过程来对用户设备访问网络进行控制,使通过DHCP方式获取IP地址的用户设备可以访问网络,而私设IP地址的用户设备将不允许访问网络。这种接入网络的方式需要结合交换机硬件ACL来实现,每一个DHCP用户设备需要下发一条允许访问网络的ACL表项,设置ACL规则。
[0006]在现有技术中,交换设备的ACL表项容量有限,因此,当DHCP绑定表项数目大于设备的ACL表项的容量的数目时,一些DHCP绑定表项对应的ACL表项将无法下发,这些DHCP用户设备就无法访问网络,访问控制列表的利用率较低。
【发明内容】
[0007]本发明的目的在于提出一种安全接入实时更新的方法及交换机,以提高交换机访问控制列表的利用率。
[0008]一方面,本发明提供了一种安全接入实时更新的方法,所述方法包括:
[0009]按照第一定时器定时周期,根据动态主机配置协议DHCP绑定表中用户设备的DHCP表项,广播地址解析协议ARP请求报文,并启动第二定时器进行计时,其中,所述ARP请求报文的发送端的IP地址和目标端的IP地址为所述DHCP表项中所述用户设备的IP地址,所述ARP请求报文的发送端的媒体访问控制MAC地址为所述DHCP表项中所述用户设备的MAC地址,所述ARP请求报文的目标端的MAC地址为广播地址;
[0010]监听是否接收到ARP回应,如果在所述第二定时器设定时长截止前未接收到ARP回应,则确定所述DHCP表项的用户设备处于离线状态;
[0011]重复执行上述广播操作,当所述DHCP表项的用户设备处于离线状态的次数达到设定阈值,则将所述DHCP表项在硬件访问控制列表ACL中ACL规则对应的ACL表项删除。
[0012]对应地,本发明还提供了一种交换机,所述交换机包括:
[0013]广播模块,用于按照第一定时器定时周期,根据动态主机配置协议DHCP绑定表中用户设备的DHCP表项,广播地址解析协议ARP请求报文,并启动第二定时器进行计时,其中,所述ARP请求报文的发送端的IP地址和目标端的IP地址为所述DHCP表项中所述用户设备的IP地址,所述ARP请求报文的发送端的媒体访问控制MAC地址为所述DHCP表项中所述用户设备的MAC地址,所述ARP请求报文的目标端的MAC地址为广播地址;
[0014]监听模块,用于监听是否接收到ARP回应,如果在所述第二定时器设定时长截止前未接收到ARP回应,则确定所述DHCP表项的用户设备处于离线状态;
[0015]处理模块,用于重复执行上述广播操作,当所述DHCP表项的用户设备处于离线状态的次数达到设定阈值,则将所述DHCP表项在硬件访问控制列表ACL中ACL规则对应的ACL表项删除。
[0016]本发明提出了一种安全接入实时更新的方法及交换机,通过判断DHCP表项的用户设备是否处于离线状态,删除离线状态下的DHCP表项对应的ACL表项,能够为用户设备提供ACL表项空间,能够满足更多DHCP用户设备的接入要求,提高了交换机访问控制列表的利用率。
【专利附图】
【附图说明】
[0017]图1是本发明实施例所适用的网络应用图。
[0018]图2是本发明第一实施例提供的安全接入实时更新的方法的实现流程图。
[0019]图3是本发明第二实施例提供的安全接入实时更新的方法的实现流程图。
[0020]图4是本发明第三实施例提供的交换机的装置的结构示意图。
【具体实施方式】
[0021]为使本发明解决的技术问题、采用的技术方案和达到的技术效果更加清楚,下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部内容。下面结合附图并通过【具体实施方式】来进一步说明本发明的技术方案。
[0022]本发明实施例所适用的网络环境如图1所示。网络中设置有交换机,其分别与DHCP服务器和多个用户设备相连。
[0023]实施例一
[0024]图2是本发明第一实施例提供的安全接入实时更新的方法的实现流程图。本发明实施例提供的方法可以在图1所示的网络环境中由本发明实施例提供的交换机来执行。如图2所示,本发明实施例提供的方法包括:
[0025]步骤201,按照第一定时器定时周期,根据DHCP绑定表中用户设备的DHCP表项,广播ARP请求报文,并启动第二定时器进行计时。
[0026]在本发明实施例中,所述ARP请求报文可以为免费ARP请求报文,其发送端的IP地址和目标端的IP地址为所述DHCP表项中所述用户设备的IP地址,所述ARP请求报文的发送端的MAC地址为所述DHCP表项中所述用户设备的MAC地址,所述ARP请求报文的目标端的MAC地址为广播地址。由此,可以让与交换机相连的各用户设备均接收到此报文,并根据已有协议进行回应。由于ARP请求报文是基于每个表项的地址发送的,所以若用户设备在线,则必然会接收到与自身地址一致的ARP请求报文,并按照协议需进行ARP回应。
[0027]步骤202,监听是否接收到ARP回应,如果在所述第二定时器设定时长截止前未接收到ARP回应,则确定所述DHCP表项的用户设备处于离线状态。
[0028]根据步骤201中广播的ARP请求报文,交换机监听是否接收到ARP回应,如果在所述第二定时器设定时长截止前未接收到ARP回应,则确定所述DHCP表项的用户设备处于离线状态;如果在所述第二定时器设定时长截止前能够接收到ARP回应,则确定所述DHCP表项的用户设备处于在线状态,则重置第二定时器。例如,可设置所述第二定时器设定时长为I秒,如果交换机在I秒内未接收到ARP回应,则确定所述DHCP表项的用户设备处于离线状态。
[0029]步骤203,重复执行上述广播操作,当所述DHCP表项的用户设备处于离线状态的次数达到设定阈值,则将所述DHCP表项的用户设备在硬件ACL中ACL规则对应的ACL表项删除。
[0030]如果步骤202中确定所述DHCP表项的用户设备处于离线状态的次数达到设定阈值时,则将所述DHCP表项的地址在硬件ACL中ACL规则对应的ACL表项删除。例如,可设置当检测到用户设备离线状态达3次,即可判定所述用户设备离线。通过多次检测离线,可提高检测的可靠性,避免由于其它原因导致不可回复ARP回应所引起的误删除。
[0031]其中,所述ACL规则是访问控制列表中用于识别报文流的匹配条件的判断语句,所述ACL表项可包括:所述用户设备的IP地址、MAC地址、接入端口和VLAN号。
[0032]本实施例提供的安全接入实时更新的方法,通过监控是否接收到ARP回应,来判断DHCP表项的对应用户设备是否处于离线状态,并删除离线状态下的DHCP表项的用户设备对应的ACL表项,能够为用户设备提供ACL表项空间,提高了交换机访问控制列表的利用率。在上述方案中,利用第一定时器来定时触发对DHCP表项中用户设备的离线检测,可以及时对ACL表项进行清理维护。利用了免费ARP请求报文及其ARP回应,有效利用了已有的报文机制,无需扩展额外的设备和软件,因此技术的推广便捷、成本低。
[0033]实施例二
[0034]图3是本发明第二实施例提供安全接入实时更新的方法的实现流程图。本实施例以实施例一为基础,软硬件环境与实施例一相同。如图3所示,本发明实施例提供的方法包括:
[0035]步骤301,接收用户设备的DHCP请求报文和DHCP服务器的回应报文。
[0036]在本发明实施例中,所述DHCP请求报文包括DHCP SNOOPING过程的MAC地址、接入端口号和VLAN号,所述DHCP服务器的回应报文包括DHCP SNOOPING过程的IP地址、租期、网关和域名系统DNS号。
[0037]步骤302,根据所述用户设备的DHCP请求报文和所述DHCP服务器的回应报文,在DHCP绑定表中创建DHCP表项。
[0038]在本发明实施例中,所述DHCP表项包括:MAC地址、接入端口、VLAN号、IP地址和租期。所述DHCP表项的创建过程:将所述DHCP请求报文中的MAC地址、接入端口和VLAN号信息保存到所述用户设备的绑定表的DHCP表项中;在收到所述DHCP服务器的回应报文之后,提取所述回应报文中的IP地址和租期,并将所述IP地址和租期添加到所述用户设备的绑定表的DHCP表项中。
[0039]步骤303,根据所述DHCP表项,生成ACL表项。
[0040]其中,所述DHCP表项包括:IP地址、MAC地址、接入端口、VLAN号和租期。提取所述DHCP表项中的IP地址、MAC地址、接入端口和VLAN号,生成对应的ACL表项。交换机收到的报文后,只有报文中的表项与交换机中的所述ACL表项中的一条子项相匹配时,才能够转发所述报文。
[0041]步骤304,按照第一定时器定时周期,根据动态主机配置协议DHCP绑定表中用户设备的DHCP表项,广播地址解析协议ARP请求报文,并启动第二定时器进行计时。
[0042]步骤305,监听是否接收到ARP回应,如果在所述第二定时器设定时长截止前未接收到ARP回应,则确定所述DHCP表项的用户设备处于离线状态。
[0043]步骤306,重复执行上述广播操作,当所述DHCP表项的用户设备处于离线状态的次数达到设定阈值,则将所述DHCP表项在硬件ACL中ACL规则对应的ACL表项删除。
[0044]本实施例提供的安全接入实时更新的方法,是在实施例一的基础上提出的优选实施例,达到相同的功能,能够为用户设备提供ACL表项空间,提高了交换机访问控制列表的利用率。
[0045]进一步的,在所述接收用户设备的DHCP请求报文和DHCP服务器的回应报文之前,优选还包括:使能交换机的DHCP探听的监听功能;下发一条DHCP报文重定向至交换机CPU的ACL规则,同时下发一条默认不转发所有报文的ACL规则,其中,所述ACL规则是访问控制列表中用于识别报文流的匹配条件的判断语句。该方案的有益之处在于启动DHCPSNOOPING过程的安全功能,并预先配置ACL规则,使交换机根据ACL规则有针对性的转发报文信息,保证交换机转发报文的安全性。
[0046]实施例三
[0047]图4是本发明第三实施例提供的交换机包括的装置的结构示意图。如图4所示,本发明实施例提供的装置包括:广播模块405、监听模块406和处理模块407。
[0048]其中,所述广播模块405,用于按照第一定时器定时周期,根据DHCP绑定表中用户设备的DHCP表项,广播ARP请求报文,并启动第二定时器进行计时,其中,所述ARP请求报文的发送端的IP地址和目标端的IP地址为所述DHCP表项中所述用户设备的IP地址,所述ARP请求报文的发送端的MAC地址为所述DHCP表项中所述用户设备的MAC地址,所述ARP请求报文的目标端的MAC地址为广播地址。所述监听模块406,用于监听是否接收到ARP回应,如果在所述第二定时器设定时长截止前未接收到ARP回应,则确定所述DHCP表项的地址处于离线状态。所述处理模块407,用于重复执行上述广播操作,当所述DHCP表项的地址处于离线状态的次数达到设定阈值,则将所述DHCP表项的地址在ACL表中ACL规则对应的ACL表项删除。
[0049]在上述方案中,通过广播模块来广播ARP请求报文,通过监控模块来监控是否接收到ARP回应,进而判断DHCP表项的对应用户设备是否处于离线状态,通过处理模块删除离线状态下的DHCP表项的用户设备对应的ACL表项,能够对离线的用户设备的ACL表项进行及时清理维护,提高了交换机访问控制列表的利用率。有效利用了已有的报文机制,无需扩展额外的设备和软件,因此技术的推广便捷、成本低。
[0050]在上述方案中,优选是,还包括:接收模块402、创建模块403和生成模块404。
[0051]其中,所述接收模块402,用于在按照第一定时器定时周期,根据DHCP绑定表中用户设备的DHCP表项,广播ARP请求报文之前,接收用户设备的DHCP请求报文和DHCP服务器的回应报文,其中,所述DHCP请求报文包括DHCP SNOOPING过程的MAC地址、接入端口号和VLAN号,所述DHCP服务器的回应报文包括DHCP SNOOPING过程的IP地址、租期、网关和域名系统DNS号。所述创建模块403,用于根据所述用户设备的DHCP请求报文和所述DHCP服务器的回应报文,在DHCP绑定表中创建DHCP表项。所述生成模块404,用于根据所述DHCP表项,生成ACL表项。
[0052]在上述方案中,优选是,还包括:配置模块401,用于在接收用户设备的DHCP请求报文和DHCP服务器的回应报文之前,使能交换机的DHCP SNOOPING的监听功能,下发一条DHCP报文重定向至交换机CPU的ACL规则,同时下发一条默认不转发所有报文的ACL规则。
[0053]进一步的,所述创建模块403具体用于:将所述DHCP请求报文中的MAC地址、接入端口和VLAN号信息保存到所述用户设备的绑定表的DHCP表项中;在收到所述DHCP服务器的回应报文之后,提取所述回应报文中的IP地址和租期,并将所述IP地址和租期添加到所述用户设备的绑定表的DHCP表项中。
[0054]在本发明实施例中,所述处理模块407中的ACL表项可以包括:所述用户设备的IP地址、MAC地址、接入端口和VLAN号。
[0055]本实施例提供的交换机用于执行本发明任意实施例提供的安全接入实时更新的方法,具备相应的功能模块,达到相同的技术效果。
[0056]注意,上述内容仅为本发明的较佳实施例。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其它等效实施例,而本发明的范围由所附的权利要求范围决定。
【权利要求】
1.一种安全接入实时更新的方法,其特征在于,包括: 按照第一定时器定时周期,根据动态主机配置协议DHCP绑定表中用户设备的DHCP表项,广播地址解析协议ARP请求报文,并启动第二定时器进行计时,其中,所述ARP请求报文的发送端的IP地址和目标端的IP地址为所述DHCP表项中所述用户设备的IP地址,所述ARP请求报文的发送端的媒体访问控制MAC地址为所述DHCP表项中所述用户设备的MAC地址,所述ARP请求报文的目标端的MAC地址为广播地址; 监听是否接收到ARP回应,如果在所述第二定时器设定时长截止前未接收到ARP回应,则确定所述DHCP表项的用户设备处于离线状态; 重复执行上述广播操作,当所述DHCP表项的用户设备处于离线状态的次数达到设定阈值,则将所述DHCP表项在硬件访问控制列表ACL中ACL规则对应的ACL表项删除。
2.根据权利要求1所述的方法,其特征在于,在按照第一定时器定时周期,根据DHCP绑定表中用户设备的DHCP表项,广播ARP请求报文之前,还包括: 接收用户设备的DHCP请求报文和DHCP服务器的回应报文,其中,所述DHCP请求报文包括DHCP探听过程的MAC地址、接入端口号和虚拟局域网VLAN号,所述DHCP服务器的回应报文包括DHCP探听过程的IP地址、租期、网关和域名系统DNS号; 根据所述用户设备的DHCP请求报文和所述DHCP服务器的回应报文,在DHCP绑定表中创建DHCP表项; 根据所述DHCP表项,生成 ACL表项。
3.根据权利要求2所述的方法,其特征在于,在所述接收用户设备的DHCP请求报文和DHCP服务器的回应报文之前,还包括: 使能交换机的DHCP探听的监听功能; 下发一条DHCP报文重定向至交换机CPU的ACL规则,同时下发一条默认不转发所有报文的ACL规则。
4.根据权利要求2所述的方法,其特征在于,所述根据所述用户设备的DHCP请求报文和所述DHCP服务器的回应报文,在DHCP绑定表中创建DHCP表项,包括: 将所述DHCP请求报文中的MAC地址、接入端口和VLAN号信息保存到所述用户设备的绑定表的DHCP表项中; 在收到所述DHCP服务器的回应报文之后,提取所述回应报文中的IP地址和租期,并将所述IP地址和租期添加到所述用户设备的绑定表的DHCP表项中。
5.根据权利要求1所述的方法,其特征在于,所述ACL表项包括:所述用户设备的IP地址、MAC地址、接入端口和VLAN号。
6.一种交换机,其特征在于,包括: 广播模块,用于按照第一定时器定时周期,根据动态主机配置协议DHCP绑定表中用户设备的DHCP表项,广播地址解析协议ARP请求报文,并启动第二定时器进行计时,其中,所述ARP请求报文的发送端的IP地址和目标端的IP地址为所述DHCP表项中所述用户设备的IP地址,所述ARP请求报文的发送端的媒体访问控制MAC地址为所述DHCP表项中所述用户设备的MAC地址,所述ARP请求报文的目标端的MAC地址为广播地址; 监听模块,用于监听是否接收到ARP回应,如果在所述第二定时器设定时长截止前未接收到ARP回应,则确定所述DHCP表项的用户设备处于离线状态;处理模块,用于重复执行上述广播操作,当所述DHCP表项的用户设备处于离线状态的次数达到设定阈值,则将所述DHCP表项在硬件访问控制列表ACL中ACL规则对应的ACL表项删除。
7.根据权利要求6所述的交换机,其特征在于,还包括: 接收模块,用于在按照第一定时器定时周期,根据DHCP绑定表中用户设备的DHCP表项,广播ARP请求报文之前,接收用户设备的DHCP请求报文和DHCP服务器的回应报文,其中,所述DHCP请求报文包括DHCP探听过程的MAC地址、接入端口号和虚拟局域网VLAN号,所述DHCP服务器的回应报文包括DHCP探听过程的IP地址、租期、网关和域名系统DNS号; 创建模块,用于根据所述用户设备的DHCP请求报文和所述DHCP服务器的回应报文,在DHCP绑定表中创建DHCP表项; 生成模块,用于根据所述DHCP表项,生成ACL表项。
8.根据权利要求7所述的交换机,其特征在于,还包括: 配置模块,用于在接收用户设备的DHCP请求报文和DHCP服务器的回应报文之前,使能交换机的DHCP探听的监听功能,下发一条DHCP报文重定向至交换机CPU的ACL规则,同时下发一条默认不转发所有报文的ACL规则。
9.根据权利要求7所述的交换机,其特征在于,所述创建模块具体用于: 将所述DHCP请求报文中的MAC地址、接入端口和VLAN号信息保存到所述用户设备的绑定表的DHCP表项中; 在收到所述DHCP服务器的回应报文之后,提取所述回应报文中的IP地址和租期,并将所述IP地址和租期添加到所述用户设备的绑定表的DHCP表项中。
10.根据权利要求6所述的交换机,其特征在于,所述处理模块中的ACL表项包括:所述用户设备的IP地址、MAC地址、接入端口和VLAN号。
【文档编号】H04L12/741GK103561129SQ201310538610
【公开日】2014年2月5日 申请日期:2013年11月4日 优先权日:2013年11月4日
【发明者】梁小冰, 向阳朝, 陈翔 申请人:神州数码网络(北京)有限公司, 上海神州数码有限公司