一种地址学习方法及装置的制造方法

文档序号:10627025阅读:287来源:国知局
一种地址学习方法及装置的制造方法
【专利摘要】本发明提供一种地址学习方法及装置,所述方法应用于网络安全设备,所述方法包括:从三层交换机上获取MAC和IP地址的对应关系表;监听三层交换机上的ARP报文;根据所述ARP报文更新所述MAC和IP地址的对应关系表,从而实现跨三层环境下的网络安全防护,并且能够减少内存占用,减轻网络安全设备的运行负担。
【专利说明】
一种地址学习方法及装置
技术领域
[0001] 本发明涉及通信技术领域,尤其涉及一种地址学习方法及装置。
【背景技术】
[0002] 随着网络技术的发展,网络安全防护越来越重要。MAC和IP地址绑定是防止IP地 址盗用以及IP地址私配的有效方法之一,网络安全设备可以获取用户的MAC和IP地址的 对应关系,并在数据报文处理时检查其MAC和IP地址的对应关系是否合法。二层网络中, 网络安全设备直接可以通过报文获取用户的MAC和IP地址的对应关系,但目前应用更多的 是用户和网络安全设备之间跨三层的网络部署,这种跨三层网络环境下,网络安全设备无 法越过三层交换机直接获取用户的MAC和IP地址的对应关系,则无法有效的进行网络安全 防护。

【发明内容】

[0003] 有鉴于此,本发明提供一种地址学习方法及装置来解决跨三层的网络安全防护问 题。
[0004] 具体地,本发明是通过如下技术方案实现的:
[0005] -种地址学习方法,其特征在于,所述方法应用于网络安全设备,所述方法包括:
[0006] 从三层交换机上获取MAC和IP地址的对应关系表;
[0007] 监听三层交换机上的ARP报文;
[0008] 根据所述ARP报文更新所述MAC和IP地址的对应关系表。
[0009] 进一步的,所述监听三层交换机上的ARP报文,包括:
[0010] 通过监听端口获取三层交换机镜像端口的协议报文,从所述协议报文中筛选出 ARP报文,丢弃非ARP报文。
[0011] 进一步的,所述根据所述ARP报文更新所述MAC和IP地址的对应关系表,包括:
[0012] 获取该ARP报文中的MAC地址;
[0013] 判断所述MAC地址与所述MAC和IP地址的对应关系表中的MAC地址是否相同;
[0014] 若不同,则将所述ARP报文中的MAC和IP地址的对应关系添加到所述MAC和IP 地址的对应关系表中。
[0015] 进一步的,所述根据所述ARP报文更新所述MAC和IP地址的对应关系表,还包括:
[0016] 若所述MAC地址与所述MAC和IP地址的对应关系表中的MAC地址相同,则判断所 述ARP报文中IP地址与所述MAC和IP地址的对应关系表中的IP地址是否相同;
[0017] 若不同,则将所述IP地址更新为所述MAC和IP地址的对应关系表中所述MAC地 址对应的IP地址。
[0018] 进一步的,所述方法还包括:
[0019] 根据预设时间间隔,重新获取所述三层交换机上的MAC和IP地址的对应关系表。
[0020] 基于相同的构思,本发明还提供一种地址学习装置,所述装置应用于网络安全设 备,所述装置包括:
[0021] 表项获取单元,用于从三层交换机上获取MAC和IP地址的对应关系表;
[0022] 报文监听单元,用于监听三层交换机上的ARP报文;
[0023] 表项更新单元,用于根据所述ARP报文更新所述MAC和IP地址的对应关系表。
[0024] 进一步的,所述报文监听单元,具体用于通过监听端口获取三层交换机镜像端口 的协议报文,从所述协议报文中筛选出ARP报文,丢弃非ARP报文。
[0025] 进一步的,所述表项更新单元,包括:
[0026] 表项获取子单元,用于获取该ARP报文中的MAC地址;
[0027] 第一判断子单元,用于判断所述MAC地址与所述MAC和IP地址的对应关系表中的 MAC地址是否相同;
[0028] 表项添加子单元,用于在所述MAC地址与所述MAC和IP地址的对应关系表中的 MAC地址不同时,将所述ARP报文中的MAC和IP地址的对应关系添加到所述MAC和IP地址 的对应关系表中。
[0029] 进一步的,所述表项更新单元,还包括:
[0030] 第二判断子单元,用于在所述MAC地址与所述MAC和IP地址的对应关系表中的 MAC地址相同时,判断所述ARP报文中IP地址与所述MAC和IP地址的对应关系表中的IP 地址是否相同;
[0031] 表项更新子单元,用于在所述ARP报文中IP地址与所述MAC和IP地址的对应关系 表中的IP地址不同时,将所述IP地址更新为所述MAC和IP地址的对应关系表中所述MAC 地址对应的IP地址。
[0032] 进一步的,所述装置还包括:
[0033] 重新获取单元,用于根据预设时间间隔,重新获取所述三层交换机上的MAC和IP 地址的对应关系表。
[0034] 由此可见,本发明可以通过监听三层交换机上的ARP报文来快速高效的学习 MAC 和IP地址的对应关系表,从而实现跨三层环境下的网络安全防护,并且能够减少内存占 用,减轻网络安全设备的运行负担。
【附图说明】
[0035] 图1是本发明一种示例性实施方式中的一种地址学习方法的处理流程图;
[0036] 图2是本发明一种示例性实施方式中组网架构图;
[0037] 图3是本发明一种示例性实施方式中的地址学习处理流程图;
[0038] 图4是本发明一种示例性实施方式中的地址学习装置所在的网络安全设备的硬 件结构图;
[0039] 图5是本发明一种示例性实施方式中的一种地址学习装置的逻辑结构图。
【具体实施方式】
[0040] 目前用户和网络安全设备之间通常为跨三层的网络部署,这种跨三层网络环境 下,网络安全设备无法越过三层交换机直接获取用户的MAC和IP地址的对应关系。现有技 术为了解决上述问题,可以通过SNMP来获取MAC和IP地址的对应关系。但SNMP除了学习 MAC和IP地址的对应关系外,还会学习其他表项,从而会占用网络安全设备的内存并消耗 大量CPU资源。
[0041] 为了解决上述问题,本发明提供一种地址学习方法及装置,可以通过监听三层交 换机上的ARP报文来学习 MAC和IP地址的对应关系表,从而实现跨三层环境下的网络安全 防护,并且能够减少内存占用,减轻网络安全设备的运行负担。
[0042] 请参考图1,是本发明一种示例性实施方式中的一种地址学习方法的处理流程图, 所述方法应用于网络安全设备,所述方法包括:
[0043] 步骤101、从三层交换机上获取MAC和IP地址的对应关系表;
[0044] 在本实施例中,网络安全设备可以通过SNMP来获取三层交换机上的MAC和IP地 址的对应关系表。由于一般情况下通过SNMP协议可以获取到三层交换机的ARP表项、网口 配置以及CPU和内存的使用情况等信息,但对于网络安全设备而言,主要需要的是获取三 层交换机的ARP表项中的MAC和IP地址的对应关系表。因此在本实施例中,网络安全设备 可以通过MAC和IP地址的对应关系表,从而利用其中记录的MAC和IP地址的对应关系来 进行安全防护,并且排除掉与安全防护无关的信息,例如所述网口配置以及CPU和内存的 使用情况等,从而可以减少网络安全设备的内存占用。
[0045] 步骤102、监听三层交换机上的ARP报文;
[0046] 由于网络中的连接变化较多,当三层交换机收到ARP报文时,该三层交换机上的 ARP表项也会随之更新。为了适应网络环境的变化,网络安全设备还可以通过监听三层交换 机上的ARP报文,通过ARP报文中的MAC和IP地址的对应关系,来实时的更新自身的MAC 和IP地址的对应关系表。
[0047] 在本发明可选的实施例中,网络管理员可以预先在三层交换机上设置镜像端口, 用其来镜像该三层交换机上收到的协议报文,并在网络安全设备上设置监听端口,用来实 时监测镜像端口上的协议报文。当三层交换机收到协议报文后,会被所述镜像到镜像端口 中,然后网络安全设备可以通过自身的监听端口获取所述镜像端口中的协议报文,并从所 述协议报文中筛选出所需的ARP报文,然后丢弃非ARP报文,从而减少非ARP报文对网络 安全设备的内存占用,将非ARP报文丢弃可以进一步避免将其发送到网络中造成的网络异 常。
[0048] 步骤103、根据所述ARP报文更新所述MAC和IP地址的对应关系表。
[0049] 本实施例中,网络安全设备监听到ARP报文后,可以获取该ARP报文中携带的MAC 和IP地址的对应关系,然后根据该对应关系更新本地保存的MAC和IP地址的对应关系表, 从而可以根据网络变化实时更新MAC和IP地址的对应关系表,提高网络的安全性。
[0050] 由此可见,本发明可以通过监听三层交换机上的ARP报文来快速高效的学习 MAC 和IP地址的对应关系表,从而实现跨三层环境下的网络安全防护,并且能够减少内存占 用,减轻网络安全设备的运行负担。
[0051] 在本发明可选的实施例中,网络安全设备监听到所述ARP报文后,可以获取该ARP 报文中的MAC地址,然后判断该MAC地址与本地保存的MAC和IP地址的对应关系表中的MAC 地址是否相同;如果MAC地址不同,由于MAC地址的唯一性,网络安全设备可以确定网络中 有新增的设备,因此可该将所述ARP报文中的MAC和IP地址的对应关系添加到所述MAC和 IP地址的对应关系表中。如果所述MAC地址相同,则可说明该网络中没有新增的设备,因此 网络安全设备还要进一步进行判断。例如判断该ARP报文中IP地址与本地保存的MAC和 IP地址的对应关系表中的IP地址是否相同。如果IP地址相同,则说明该设备的MAC和IP 地址的对应关系已保存在所述MAC和IP地址的对应关系表中,因此无需对本地的MAC和IP 地址的对应关系表进行更新;如果IP地址不同,则可以认为该MAC地址对应的设备的IP地 址发生改变,因此可以在本地保存的所述MAC和IP地址的对应关系表中,将ARP报文中的 IP地址更新为所述MAC地址对应的新的IP地址。通过上述更新过程,可以高效准确的根据 网络变化实时对MAC和IP地址的对应关系进行更新。
[0052] 考虑到网络安全设备上通过ARP报文学习到的MAC和IP地址对应关系表一般会 存放在内存中,如果长时间不删除无效的对应关系表项,可能会导致占用网络安全设备的 大量内存,并且由于三层交换机上的ARP表项老化时没有任何报文,因此在本发明可选的 实施例中,在网络安全设备上为所述MAC和IP地址对应关系表设置老化机制。例如使所述 网络安全设备以一个较长的时间间隔(如3600秒)去通过SNMP学习一次三层交换机的 MAC和IP地址的对应关系,然后将学习到的新的MAC和IP地址对应关系表替换本地保存 的MAC和IP地址对应关系表,并删除所述本地保存的MAC和IP地址对应关系表。从而达 到删除无效MAC和IP地址对应关系表项的效果。相比传统的60秒一次的SNMP学习间隔, 本发明可以延长SNMP学习间隔,从而可以提高网络安全设备的内存使用率,并且可以减少 系统负担。
[0053] 为使本发明的目的、技术方案及优点更加清楚明白,以下基于图2的网络架构图, 对本发明所述方案作进一步地详细说明。
[0054] 图2中示例性的展示了跨三层的组网环境,其中多个PC通过接入交换机连接到网 络,接入交换机的上一层连接三层交换机,三层交换机的上一层连接着具有网络安全防护 功能的网关。为了实现跨三层的地址学习,网络管理员预先在网关上设置监听端口 P1,在三 层交换机上设置镜像端口 P2。P1用于实时监听P2上的协议报文。根据本发明提供的地址 学习方法,所述网关的地址学习过程如图3所示,其中包括:
[0055] 步骤301、按照预设时间间隔通过SNMP获取三层交换机上的MAC和IP地址的对应 关系表;
[0056] 网关可以按照预设的时间间隔,例如3600秒,通过SNMP获取三层交换机上的MAC 和IP地址的对应关系表,假设该MAC和IP地址的对应关系表如表1所示。
[0057]
[0058] 表 1
[0059] 步骤302、监听三层交换机镜像端口上的协议报文;
[0060] 网关通过监听端口 P1实时监听镜像端口 P2上的协议报文,当镜像端口 P2上收到 协议报文时,网关通过监听端口 P1获取该协议报文。
[0061] 步骤303、判断协议报文是否为ARP报文;若是,转步骤305,否则转步骤304。
[0062] 步骤304、丢弃该协议报文,并结束;
[0063] 步骤305、判断该ARP报文中的MAC地址是否在表1中;若是,则转步骤306,否则 转步骤307 ;
[0064] 步骤306、判断该ARP报文中的IP地址是否与表1中上述MAC地址对应的IP地址 相同;若是,则转步骤308,否则转步骤309 ;
[0065] 步骤307、将所述ARP报文中的MAC和IP地址的对应关系增加到表1中;
[0066] 假如该ARP报文中携带的MAC地址为MAC3、IP地址为IP3,那么根据表1可知, MAC3对应的设备为新增设备,因此可将MAC3和IP3的对应关系增加到表1中,增加后如表 2所示。
[0067]
[0068]
[0069] 表 2
[0070] 步骤308、丢弃该ARP报文,并结束;
[0071] 步骤309、根据所述ARP报文中的MAC和IP地址的对应关系更新表1。
[0072] 假如该ARP报文中携带的MAC地址为MAC1、IP地址为IP3,那么根据表1可知,MAC 1对应的设备为已有设备,只是IP地址发生变化,因此可将IP3更新到MAC2对应的IP地址 中,更新后如表3所示。
[0073]
[0074] 表 3
[0075] 由此可见,本发明可以通过监听三层交换机上的ARP报文来快速高效的学习MAC 和IP地址的对应关系表,从而实现跨三层环境下的网络安全防护,并且能够减少内存占 用,减轻网络安全设备的运行负担。
[0076] 基于相同的构思,本发明还提供一种地址学习装置,所述装置可以通过软件实现, 也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,本发明的地址学习装置作 为一个逻辑意义上的装置,是通过其所在网络安全设备的CPU将存储器中对应的计算机程 序指令读取后运行而成。
[0077] 请参考图4及图5,是本发明一种示例性实施方式中的一种地址学习装置500,所 述装置应用于网络安全设备,所述装置基本运行环境包括CPU,存储器以及其他硬件,从逻 辑层面上来看,所述装置500包括:
[0078] 表项获取单元501,用于从三层交换机上获取MAC和IP地址的对应关系表;
[0079] 报文监听单元502,用于监听三层交换机上的ARP报文;
[0080] 表项更新单元503,用于根据所述ARP报文更新所述MAC和IP地址的对应关系表。
[0081] 可选的,所述报文监听单元502,具体用于通过监听端口获取三层交换机镜像端口 的协议报文,从所述协议报文中筛选出ARP报文,丢弃非ARP报文。
[0082] 可选的,所述表项更新单元503,包括:
[0083] 表项获取子单元5031,用于获取该ARP报文中的MAC地址;
[0084] 第一判断子单元5032,用于判断所述MAC地址与所述MAC和IP地址的对应关系表 中的MAC地址是否相同;
[0085] 表项添加子单元5033,用于在所述MAC地址与所述MAC和IP地址的对应关系表中 的MAC地址不同时,将所述ARP报文中的MAC和IP地址的对应关系添加到所述MAC和IP 地址的对应关系表中。
[0086] 可选的,所述表项更新单元,还包括:
[0087] 第二判断子单元5034,用于在所述MAC地址与所述MAC和IP地址的对应关系表中 的MAC地址相同时,判断所述ARP报文中IP地址与所述MAC和IP地址的对应关系表中的 IP地址是否相同;
[0088] 表项更新子单元5035,用于在所述ARP报文中IP地址与所述MAC和IP地址的对 应关系表中的IP地址不同时,将所述IP地址更新为所述MAC和IP地址的对应关系表中所 述MAC地址对应的IP地址。
[0089] 可选的,所述装置还包括:
[0090] 重新获取单元504,用于根据预设时间间隔,重新获取所述三层交换机上的MAC和 IP地址的对应关系表。
[0091] 综上所述,本发明可以通过监听三层交换机上的ARP报文来快速高效的学习 MAC 和IP地址的对应关系表,从而实现跨三层环境下的网络安全防护,并且能够减少内存占 用,减轻网络安全设备的运行负担。
[0092] 以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精 神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
【主权项】
1. 一种地址学习方法,其特征在于,所述方法应用于网络安全设备,所述方法包括: 从三层交换机上获取MAC和IP地址的对应关系表; 监听三层交换机上的ARP报文; 根据所述ARP报文更新所述MAC和IP地址的对应关系表。2. 根据权利要求1所述的方法,其特征在于,所述监听三层交换机上的ARP报文,包 括: 通过监听端口获取三层交换机镜像端口的协议报文,从所述协议报文中筛选出ARP报 文,丢弃非ARP报文。3. 根据权利要求1所述的方法,其特征在于,所述根据所述ARP报文更新所述MAC和 IP地址的对应关系表,包括: 获取该ARP报文中的MAC地址; 判断所述MAC地址与所述MAC和IP地址的对应关系表中的MAC地址是否相同; 若不同,则将所述ARP报文中的MAC和IP地址的对应关系添加到所述MAC和IP地址 的对应关系表中。4. 根据权利要求3所述的方法,其特征在于,所述根据所述ARP报文更新所述MAC和 IP地址的对应关系表,还包括: 若所述MAC地址与所述MAC和IP地址的对应关系表中的MAC地址相同,则判断所述 ARP报文中IP地址与所述MAC和IP地址的对应关系表中的IP地址是否相同; 若不同,则将所述IP地址更新为所述MAC和IP地址的对应关系表中所述MAC地址对 应的IP地址。5. 根据权利要求1所述的方法,其特征在于,所述方法还包括: 根据预设时间间隔,重新获取所述三层交换机上的MAC和IP地址的对应关系表。6. -种地址学习装置,其特征在于,所述装置应用于网络安全设备,所述装置包括: 表项获取单元,用于从三层交换机上获取MAC和IP地址的对应关系表; 报文监听单元,用于监听三层交换机上的ARP报文; 表项更新单元,用于根据所述ARP报文更新所述MAC和IP地址的对应关系表。7. 根据权利要求6所述的装置,其特征在于, 所述报文监听单元,具体用于通过监听端口获取三层交换机镜像端口的协议报文,从 所述协议报文中筛选出ARP报文,丢弃非ARP报文。8. 根据权利要求6所述的装置,其特征在于,所述表项更新单元,包括: 表项获取子单元,用于获取该ARP报文中的MAC地址; 第一判断子单元,用于判断所述MAC地址与所述MAC和IP地址的对应关系表中的MAC 地址是否相同; 表项添加子单元,用于在所述MAC地址与所述MAC和IP地址的对应关系表中的MAC地 址不同时,将所述ARP报文中的MAC和IP地址的对应关系添加到所述MAC和IP地址的对 应关系表中。9. 根据权利要求8所述的装置,其特征在于,所述表项更新单元,还包括: 第二判断子单元,用于在所述MAC地址与所述MAC和IP地址的对应关系表中的MAC地 址相同时,判断所述ARP报文中IP地址与所述MAC和IP地址的对应关系表中的IP地址是 否相同; 表项更新子单元,用于在所述ARP报文中IP地址与所述MAC和IP地址的对应关系表 中的IP地址不同时,将所述IP地址更新为所述MAC和IP地址的对应关系表中所述MAC地 址对应的IP地址。10.根据权利要求6所述的装置,其特征在于,所述装置还包括: 重新获取单元,用于根据预设时间间隔,重新获取所述三层交换机上的MAC和IP地址 的对应关系表。
【文档编号】H04L12/755GK105991794SQ201510293397
【公开日】2016年10月5日
【申请日】2015年6月1日
【发明人】仇俊杰
【申请人】杭州迪普科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1