诊断网络防火墙的方法及装置的制作方法

文档序号:7871227阅读:225来源:国知局
专利名称:诊断网络防火墙的方法及装置的制作方法
技术领域
本发明涉及数据处理领域,具体而言,涉及ー种诊断网络防火墙的方法及装置。
背景技术
当网络防火墙当自身出现配置不正确、数据包处理不当等问题以及网络防火墙设备上线之前需要验证配置和数据包能否正确处理时,需要对数据包在网络防火墙中每一歩处理过程进行跟踪并及时记录下相关结果,并在出现问题的地方进行综合分析,给出诊断结果,分析其错误原因和处理建议。目前,有两种方法对来分析和定位配置错误、数据包处理不当等问题。第一种方法,通过查看网络防火墙的配置、调试信息、日志手动定位和分析相关问题,只要是,当现有的网络防火墙设备中当出现配置问题和数据包处理错误时,管理员通过查看相关配置以及通过网络防火墙上相关调试信息和日志手动来定位和分析此类问题,但是采用该方法没有ー套完整数据包路径检测系统来帮助管理员自动通过数据包在网络防火墙中通过每ー模块的路径跟踪来诊断问题所在。第二种方法为通过实验室复现现象方法来手动分析和定位配置错误、数据包处理不当等问题,即当数据包处理不正确时,通过实验室来模拟真实环境和相关配置来复现ー模ー样的现象来分析和定位相关网络防火墙自身出现的问题,但是采用该种方法需要消耗相当大的人力、物力去实现,成本和代价较高,并也要手动去分析问题的原因所在,无法自动来诊断和定位。针对现有技术中对通过网络防火墙的数据包的诊断不准确,从而导致数据报文转发不正确的问题,目前尚未提出有效的解决方案
发明内容
针对相关技术对通过网络防火墙的数据包的诊断不准确,从而导致数据报文转发不正确的问题,目前尚未提出有效的解决方案,为此,本发明的主要目的在于提供一种诊断网络防火墙的方法及装置,以解决上述问题。为了实现上述目的,根据本发明的ー个方面,提供了ー种诊断网络防火墙的方法,该方法包括将网络防火墙对第一数据包进行解封装和检测处理的处理过程中的数据进行记录,以获取处理过程中产生的第一过程数据;将第一过程数据与预设诊断数据进行对比,以获取第二过程数据,其中,第二过程数据为第一过程数据中与预设诊断数据相匹配的数据;对第二过程数据进行诊断,得到诊断結果。进ー步地,对第二过程数据进行诊断,得到诊断结果的步骤包括查询获取第二过程数据的标识信息;读取与标识信息所对应的第一报文信息,第一报文信息为第一数据包的报文信息;对第一报文信息和第一配置參数进行对比分析,以获取诊断參数,其中,第一配置參数是网络防火墙的配置參数;保存第二过程数据、标识信息以及诊断參数,得到诊断结果。
进ー步地,将网络防火墙对第一数据包进行解封装和检测处理的处理过程中的数据进行记录,以获取处理过程中产生的第一过程数据的步骤包括获取对第一数据包进行过滤的过滤条件;根据过滤条件对通过网络防火墙的第一数据包进行过滤处理,以获取第一数据包中符合过滤条件的第二数据包;将网络防火墙对第二数据包进行解封装和检测处理的处理过程中的数据进行记录,以获取处理过程中产生的第一过程数据。进ー步地,获取通过网络防火墙的实时数据包,并将实时数据包作为第一数据包;或者,生成模拟数据包,并使模拟数据包通过网络防火墙以便网络防火墙将模拟数据包作为第一数据包;或者,解析预设数据包,并将解析后的预设数据包在网络防火墙中回放,以便网络防火墙将处理后的预设数据包作为第一数据包。进ー步地,对第二过程数据进行诊断,得到诊断结果的步骤包括获取诊断时间;判断诊断时间是否达到预设诊断时间;在诊断时间达到预设诊断时间的情况下,对第二过程数据进行诊断,得到诊断結果。为了实现上述目的,根据本发明的另一方面,提供了ー种诊断网络防火墙的装置,该装置包括第一处理模块,用于将网络防火墙对第一数据包进行解封装和检测处理的处理过程进行记录,以获取处理过程中产生的过程数据;第二处理模块,用于将第一过程数据与预设诊断数据进行对比,以获取第二过程数据,其中,第二过程数据为第一过程数据中与预设诊断数据相匹配的数据;第三处理模块,用于对第二过程数据进行诊断,得到诊断结果。进ー步地,第三处理模块包括第一获取模块,用于查询获取第二过程数据的标识信息;读取模块,用于读取与标识信息所对应的第一报文信息,第一报文信息为第一数据包的报文信息;分析模块,用于对第一报文信息和第一配置參数进行对比分析,以获取诊断參数,其中,第一配置參数是网络防火墙的配置參数;保存模块,用于保存第二过程数据、标识信息以及诊断參数,得到诊断結果。进ー步地, 第一处理模块包括第二获取模块,用于获取对第一数据包进行过滤的过滤条件;过滤模块,用于根据过滤条件对通过网络防火墙的第一数据包进行过滤处理,以获取第一数据包中符合过滤条件的第二数据包;第四处理模块,用于将网络防火墙对第二数据包进行解封装和检测处理的处理过程中的数据进行记录,以获取处理过程中产生的第ー过程数据。进ー步地,装置包括第三获取模块,用于获取通过网络防火墙的实时数据包,并将实时数据包作为第一数据包;第一子处理模块,用于生成模拟数据包,并使模拟数据包通过网络防火墙以便网络防火墙将模拟数据包作为第一数据包;第ニ子处理模块,用于解析预设数据包,并将解析后的预设数据包在网络防火墙中回放,以便网络防火墙将处理后的预设数据包作为第一数据包。进ー步地,第三处理模块包括第四获取模块,用于获取诊断时间;检测模块,用于检测诊断时间是否达到预设诊断时间;第五处理模块,用于在诊断时间达到预设诊断时间的情况下,对第二过程数据进行诊断,得到诊断結果。通过本发明,通过对网络防火墙处理第一数据包的处理过程进行记录,对网络防火墙中的每ー步相关模块的处理过程都会进行相关记录和分析,并在出现第一数据包丢弃或第一数据包在某个模块处理出错时会进行综合分析,获取诊断结果,解决了现有技术中对通过网络防火墙的数据包的诊断不准确,从而导致数据报文转发不正确的问题,实现了准确快速定位网络故障的原因,并给出相关的解决方案的效果,帮助用户准确、快速、自动定位和分析网络防火墙自身配置、设置等导致第一数据包转发不正确出现的问题,从而建议用户更改设置以使第一数据包准确转发。


此处所说明的附图用来提供对本发明的进ー步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中图1是根据本发明实施例的诊断网络防火墙的装置的结构示意图;图2是根据本发明实施例的诊断网络防火墙的方法的流程图;图3是根据图2所示实施例的根据模拟数据包诊断网络防火墙的系统结构图;图4是根据图3所示实施例的过滤条件配置的示意图;图5是根据本发明实施例的网络防火墙对数据包的处理过程的示意图;图6是根据图2所示实施例的根据实时数据包过滤条件的示意图;以及图7是根据图2所示实施例的根据预设数据包过滤条件的示意图。
具体实施例方式需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将參考附图并结合实施例 来详细说明本发明。图1是根据本发明实施例的诊断网络防火墙的装置的结构示意图。如图1所示,该装置包括第一处理模块10,用于将网络防火墙对第一数据包进行解封装和检测处理的处理过程进行记录,以获取处理过程中产生的过程数据;第二处理模块30,用于将第一过程数据与预设诊断数据进行对比,以获取第二过程数据,其中,第二过程数据为第一过程数据中与预设诊断数据相匹配的数据;第三处理模块50,用于对第二过程数据进行诊断,得到诊断結果。采用本发明,通过第一处理模块将网络防火墙对第一数据包进行解封装和检测处理的处理过程进行记录,以获取所述处理过程中产生的过程数据,然后第二处理模块将过程数据与预设诊断数据进行对比,以获取过程数据中与预设诊断数据相一致的第二过程数据,并通过第三处理模块对所述第二过程数据进行诊断,得到诊断结果。通过对网络防火墙处理第一数据包的处理过程进行记录,对网络防火墙中的每ー步相关模块的处理过程都会进行相关记录和分析,并在出现第一数据包丢弃或第一数据包在某个模块处理出错时会进行综合分析,获取诊断结果,解决了现有技术中对通过网络防火墙的数据包的诊断不准确,从而导致数据报文转发不正确的问题,实现了准确快速定位网络故障的原因,并给出相关的解决方案的效果,帮助用户准确、快速、自动定位和分析网络防火墙自身配置、设置等导致第一数据包转发不正确出现的问题,从而建议用户更改设置以使第一数据包准确转发。根据本发明的上述实施例,第三处理模块可以包括第一获取模块,用于获取第二过程数据的标识信息;读取模块,用于读取与标识信息所对应的第一报文信息,第一报文信息为第一数据包的报文信息;分析模块,用于对第一报文信息和第一配置參数进行对比分祈,以获取诊断參数,第一配置參数是网络防火墙的配置參数;保存模块,用于保存第二过程数据、标识信息以及诊断參数,得到诊断結果。其中,预设诊断第一数据包括网络防火墙与第一数据包中断通信的数据,诊断參数包括用于修改第一配置參数的修改数据,使用修改数据修改第一配置參数以使网络防火墙与所述第一数据包恢复通信。在本发明的上述实施例中,装置可以包括第二获取模块,用于获取对第一数据包进行过滤的过滤条件;过滤模块,用于根据过滤条件对通过网络防火墙的第一数据包进行过滤处理,以获取第一数据包中符合过滤条件的第二数据包;第四处理模块,用于将网络防火墙对第二数据包进行解封装和检测处理的处理过程中的数据进行记录,以获取处理过程中产生的第一过程数据。根据本发明的上述实施例,第一数据包包括实时数据包、模拟数据包以及预设数据包中的至少ー个数据包,其中,装置还包括第三获取模块,用于获取通过网络防火墙的实时数据包,并将实时数据包作为第一数据包;第一子处理模块,用于生成模拟数据包,并使模拟数据包通过网络防火墙以便网络防火墙将模拟数据包作为第一数据包;第ニ子处理模块,用于解析预设数据包,并将解析后的预设数据包在网络防火墙中回放,以便网络防火墙将处理后的预设数据包作为第一数据包。在本发明的上述实施例中,第三处理模块50可以包括第四获取模块,用于获取诊断时间;检测模块,用于检测诊断时间是否达到预设诊断时间;第五处理模块,用于在诊断时间达到预设诊断时间的情况下,对第二过程数据进行诊断,得到诊断結果。图2是根据本发明实施例的诊断网络防火墙的方法的流程图,如图2所示该方法包括如下步骤步骤S102,将网络防火墙对第一数据包进行解封装和检测处理的处理过程进行记录,以获取处理过程中产生的过程数据。

步骤S104,将第一过程数据与预设诊断数据进行对比,以获取第二过程数据,其中,第二过程数据为第一过程数据中与预设诊断数据相匹配的数据。步骤S106,对第二过程数据进行诊断,得到诊断結果。采用本发明,通过将网络防火墙对第一数据包进行解封装和检测处理的处理过程进行记录,以获取所述处理过程中产生的过程数据,然后将过程数据与预设诊断数据进行对比,以获取过程数据中与预设诊断数据相一致的第二过程数据,并对第二过程数据进行诊断,得到诊断結果。通过对网络防火墙处理第一数据包的处理过程进行记录,对网络防火墙中的每ー步相关模块的处理过程都会进行相关记录和分析,并在出现第一数据包丢弃或第一数据包在某个模块处理出错时会进行综合分析,得到诊断結果,井根据相关分析情况给出针对该错误的处理建议,帮助用户正确诊断出本次第一数据包出错的原因,解决了现有技术中对通过网络防火墙的数据包的诊断不准确,从而导致数据报文转发不正确的问题,实现了准确快速定位网络故障的原因,并给出相关的解决方案的效果,帮助用户准确、快速、自动定位和分析网络防火墙自身配置、设置等导致第一数据包转发不正确出现的问题,从而建议用户更改设置以使第一数据包准确转发。其中,预设诊断数据可以是通过学习模式得到的防火墙不能正常转发第一数据包的各个处理过程产生的异常过程数据,预设诊断数据可以包括预设的网络防火墙在对第一数据包进行解封装和检测处理过程中丢弃第一数据包的数据、也可以包括网络防火墙将第一数据包转发错误的数据。通过记录网络防火墙对第一数据包处理过程的记录,获取第一过程数据,并将与预设诊断数据匹配的第一过程数据提取出来,以获取第二过程数据,然后分析第二过程数据,以分析网络防火墙中各处理模块对第二过程数据的处理过程的数据信息,从而自动定位和解决问题,并给出诊断报告。具体地,系统在执行记录网络防火墙对第一数据包进行解封装和检测处理的处理过程,并获取过程数据的步骤中,会实时记录第一数据包流经网络防火墙的从入接ロ到出接ロ的每ー个模块的处理过程,并通过动态流程图形式真实地展现给用户。并且在获取到过程数据之后,将过程数据与预设诊断数据进行匹配处理,当出现第一数据包处理不当等与预设诊断数据一致的第二过程数据时,系统会将该第二过程数据标识出来,具体地,当某个模块第一数据包正常通过时,用绿灯来显示,当第一数据包通过但是该模块仍存在一定问题时用黄灯表示,当第一数据包未能通过时用红灯来表示并流程图会停止在该模块上。在上述实施例中,动态流程图可以使得用户了解第一数据包在网络防火墙中处理第一数据包的流程动态过程,并且便于在网络防火墙对第一数据包的处理出现问题时能智能分析并给出參考建议,以便于用户及时地获取准确的诊断結果,并依据该诊断结果解决问题。通过本申请的上述实施例,用动态流程图形式展现第一数据包通过网络防火墙各模块的路径情况,有助于用户了解网络防火墙内部处理第一数据包过程,将网络防火墙变成白盒。根据本发明的上述实施例,对第二过程数据进行诊断,得到诊断结果的步骤可以包括获取与第二过程数据相对应的标识信息;读取与标识信息所对应的第一报文信息,第一报文信息为第一数据包的报文信息;对第一报文信息和第一配置參数进行对比分析,以获取诊断參数,第一配置參数是网络防火墙的配置參数;保存第二过程数据、标识信息以及诊断參数,得到诊断結果。具体地,当记录到的网络防火墙对第一数据包处理过程的过程数据中出现第二过程数据时,获取与第二过程数据相对应的标识信息,该标识信息可以是错误代码,如1或12等用阿拉伯数字表示的错误类型,`该标识信息还可以是错误类型的语言描述,如图7中所示的“被路由规则阻断”,在获取标志信息之后读取该标识信息号对应的第一报文信息,该第一报文信息可以是预存的第一数据包的报文信息,也可以包括预存的网络防火墙可以正确转发该第一数据包的配置參数,还可以包括通过该网络防火墙的所有流量;然后将第一报文信息与网络防火墙的第一配置參数进行对比分析,以获取诊断參数。其中的诊断參数可以包括该第一数据包不可以正常通过该网络防火墙的原因,以及该网络防火墙正常通过该第一数据包应有的配置參数,诊断參数还可以包括给与用户的修改第一配置參数的修改參数,也即修改建议。其中,报文信息可以包括第一数据包的IP地址、协议以及报文内容。其中的第二过程数据还可以是网络防火墙丢弃第一数据包的过程数据。其中,诊断參数还可以包括第一报文信息以及第一配置參数,即出现错误的配置參数如策略配置、NAT配置等;诊断參数还可以包括參考建议,如上述的修改建议,帮助用户正确诊断出本次第一数据包出错的原因,以供用户使用參考建议调整网络防火墙配置等来解决第一数据包不能正常转发的问题。
另外,诊断结果还可以包括与第二过程数据相对应的网络防火墙的处理模块的详细信息,如源地址、目的地址。具体地,系统还可以根据诊断结果给出诊断报告,诊断报告中会包含第二过程数据、标识信息以及诊断參数,还可以包括第一数据包在网络防火墙中处理的动态流程图、诊断时间,检测结果中会给出本次检测中第一数据包是否通过网络防火墙所有模块处理的结果。根据本发明的上述实施例,将网络防火墙对第一数据包进行解封装和检测处理的处理过程中的数据进行记录,以获取处理过程中产生的第一过程数据的步骤可以包括接收对第一数据包进行过滤的过滤条件;根据过滤条件对通过网络防火墙的第一数据包进行过滤处理,以获取第一数据包中符合过滤条件的第二数据包;将网络防火墙对第二数据包进行解封装和检测处理的处理过程中的数据进行记录,以获取处理过程中产生的第一过程数据。根据本发明的上述实施例,第一数据包包括实时数据包、模拟数据包以及预设数据包中的至少ー个数据包,其中,在根据过滤条件对通过网络防火墙的数据包进行过滤处理,以获取符合过滤条件的数据包之前,方法还包括获取通过网络防火墙的实时数据包生成模拟数据包,以使模拟数据包通过网络防火墙;解析预设数据包,并将解析后的预设数据包在网络防火墙中回放。

具体地,在开启诊断后,网络防火墙根据过滤条件对经过网络防火墙的第一数据包(真实的和模拟的流量)进行过滤,然后记录网络防火墙中每一个处理模块对符合条件的第一数据包进行处理的处理过程(如第一数据包的通过情况),当第一数据包在某个模块出现问题时,系统获取到第二过程数据,然后根据第二过程数据获取诊断參数,(如第一数据包不能通过的错误原因及解决问题的建议)。具体地,本发明中的第一数据包可以包括实时数据包、模拟数据包或预设数据包,由于这三种第一数据包的生成方式不同,用户也可以根据自己的需求在不同的诊断处理中使用不同的第一数据包。其中,具体地,可以获取通过网络防火墙的实时数据包,并将实时数据包作为第一数据包;或者,生成模拟数据包,并使模拟数据包通过网络防火墙以便网络防火墙将模拟数据包作为第一数据包;或者,解析预设数据包,并将解析后的预设数据包在网络防火墙中回放,以便网络防火墙将处理后的预设数据包作为第一数据包。图3是根据图2所示实施例的根据模拟数据包诊断网络防火墙的系统结构图。图4是根据图3所示实施例的过滤条件配置的示意图。图5是根据本发明所示实施例的网络防火墙对数据包的处理过程的示意图。模拟数据包是根据用户的需求而生成的,具体地,系统获取到用户的过滤条件之后,根据用户的过滤条件生成模拟数据包,目前系统只支持TCP、UDP、ICMP格式的第一数据包,该第一数据包流经网络防火墙,模拟真实的流量来进行相关问题的诊断。通过该种第一数据包可以使得用户在设备未上线时诊断网络防火墙配置以及网络防火墙对真实流量处理是否正确,从而保证设置上线时万无一失。其中,如图4所示,在进行“新建模拟检測”时,也即通过记录网络防火墙对模拟数据包的处理,完成对网络防火墙的诊断,该种诊断手段中,设置的过滤条件可以包括第一数据包的诊断接ロ、源地址、目的地址、协议、源端ロ、目的端ロ。
例如,某公司新购一台web服务器,如图3所示的网络环境已搭建完成,该架构中办公终端区以及测试终端区通过防火墙与服务器区连接,在该网络环境中,设备未到位之前,管理员需要检测web服务器到位后能否立即投入使用,可以使用网络防火墙对模拟数据包的处理过程来验证web服务器上线前网络情況。如图5所示,模拟数据包通过入接ロ进入网络防火墙,在网络防火墙验证模拟数据包中的数据报文为合法报文之后,攻击防护模块对该数据包进行攻击检测,然后对该数据包进行会话匹配,如果该数据包中携帯的会话为阻断型会话,则允许其进行会话,或者找到匹配的会话,在找到匹配的会话之后,策略匹配对该模拟数据包进行策略匹配处理;如果没有匹配的会话,则进入防火墙工作模式匹配,对该会话进行匹配。其中,如果进入的是透明的匹配模式,则对该模拟数据包进行MAC检查,如果进入的是路由模式,则在对该数据包中的地址进行转换处理之后,检测该路由配置。在执行上述步骤之后,如果数据包的会话受到限制,则创建会话,然后进行策略匹配、安全策略处理以及ARP防护检测,模拟检测结束。在本发明的上述实施例中,需要将上述的防火墙中各个处理模块对模拟数据包的处理过程中产生的第一过程数据全部记录下来,然后对第一过程数据进行分析处理。在图5所示的实施例中,对web服务器进行了检测,模拟数据包完成了所有的解封装和检测处理,并且在整个网络防火墙对模拟数据包进行处理的过程都没有出现第二过程数据,则网络防火墙在对该数据包进行处理的过程中没有出现异常的处理情況。图6是根据图2所示实施例的根据实时数据包过滤条件的示意图。实时数据包即为网络中实时生成的第一数据包,用户可以在在线诊断中使用。具体地,用户可以设置需要诊断的第一数据包的过滤条件,然后根据用户设置的过滤条件,系统对流经网络防火墙的实时数据包(即从网络防火墙流过的真实的流量)进行路径检测,然后在实时数据包不能准确转发的情况下,自动分析实时数据包在网络防火墙中出现问题的原因所在。其中,如图6所示,进行“新建在线检测”时,也即通过记录网络防火墙对实时数据包的处理,完成对网络防火墙的诊断,该种诊断手段中,设置的过滤条件可以过滤条件包括实时数据包的诊断接ロ、源地址、用户、URL、源端ロ、目的端ロ、协议、应用。

同样地,在如图5所示的防火墙对数据包的处理过程中,实时数据包通过入接ロ进入网络防火墙,在网络防火墙验证实时数据包中的数据报文为合法报文之后,攻击防护模块对该数据包进行攻击检测,然后对该数据包进行会话匹配,如果该数据包中携帯的会话为阻断型会话,则允许其进行会话,或者找到匹配的会话,在找到匹配的会话之后,策略匹配对该实时数据包进行策略匹配处理;如果没有匹配的会话,则进入防火墙工作模式匹配,对该会话进行匹配。其中,如果进入的是透明的匹配模式,则对该实时数据包进行MAC检查,如果进入的是路由模式,则在对该数据包中的地址进行转换处理之后,检测该路由配置。在执行上述步骤之后,如果数据包的会话受到限制,则创建会话,然后进行策略匹配、安全策略处理以及ARP防护处理,在本发明的上述实施例中,需要将上述的防火墙中各个处理模块对实时数据包的处理过程中产生的第一过程数据全部记录下来,然后对第一过程数据进行分析处理。如果在记录的图5所示的处理过程中,发现网络防火墙在对实时数据包进行路由检测的过程中出现了第二过程数据,获取实时数据包被路由规则阻断的错误详情,然后获取实时数据包的第一报文信息和网络防火墙的路由设置信息,并根据该两个信息的对比结果获取诊断參数,诊断參数包括实时数据包未能通过的错误原因“无法找到目的地的路由,报文被丢弃”,以及解决问题的建议“请检查该报文目的地址路由是否有效”,另外,还可以获取该第二过程数据对应的标识信息。图7是根据图2所示实施例的根据预设数据包过滤条件的示意图。在使用预设数据包时,系统会将导入的预设数据包进行解析,根据文件模拟该预设数据包的交互情况,并在网络防火墙中回放,然后根据接收到的过滤条件,对预设数据包进行诊断,获取用户定位的该预设数据包所模拟的真实流量中的问题,并可以帮用户在设备上线之前模拟真实流量交互情況。其中,预设数据包可以是用户预设的抓包文件(pcap格式),如图7所示,在进行“新建导入检测”时,也即通过记录网络防火墙对实时数据包的处理,完成对网络防火墙的诊断,在该种诊断手段中,设置的过滤条件可以是诊断接ロ、源地址、目的地址、源端ロ、目的端ロ、应用、协议。其中的回放,即为使用预设数据包中的数据再现网络防火墙与第一数据包进行交互、网络防火墙对第一数据包进行解封装和检测处理等的通信过程。例如,某公司员エ在办公终端区不能访问FTP服务器,但员エ无权限登录到设备上查看原因。这时可以在自己PC上用第三方软件抓取访问FTP服务器的第一数据包,然后传给管理员,管理员可以通过预设数据包检测查看具体原因。如图5所示,预设数据包通过入接ロ进入网络防火墙,在网络防火墙验证预设数据包中的数据报文为合法报文之后,攻击防护模块对该数据包进行攻击检测,然后对该数据包进行会话匹配,如果该数据包中携帯的会话为阻断型会话,则允许其进行会话,或者找到匹配的会话,在找到匹配的会话之后,策略匹 配对该预设数据包进行策略匹配处理;如果没有匹配的会话,则进入防火墙工作模式匹配,对该会话进行匹配。其中,如果进入的是透明的匹配模式,则对该预设数据包进行MAC检查,如果进入的是路由模式,则在对该数据包中的地址进行转换处理之后,检测该路由配置。在执行上述步骤之后,如果数据包的会话受到限制,则创建会话,然后进行策略匹配、安全策略处理以及ARP防护处理,在本发明的上述实施例中,需要将上述的防火墙中各个处理模块对预设数据包的处理过程中产生的第一过程数据全部记录下来,然后对第一过程数据进行分析处理。如果在记录的图5所示的处理过程中,发现网络防火墙在对预设数据包进行安全策略检测的过程中出现了第二过程数据,获取预设数据包被路由规则阻断的错误详情“数据包被安全策略规则阻断”,然后获取预设数据包的第一报文信息和网络防火墙的安全策略设置信息,并根据该两个信息的对比结果获取诊断參数,诊断參数包括预设数据包未能通过的错误原因“数据包被安全策略拒绝”,以及解决问题的建议“请检查该数据报文的安全策略”,另外,还可以获取该第二过程数据对应的标识信息。由上可知,系统可以通过上述三种第一数据包通过三种诊断手段根据相关过滤条件来对模拟或真实的流经网络防火墙的流量进行过滤和路径跟踪检测,从而可以使得用户在设备上线前或设备使用中准确、快速、自动定位和分析网络防火墙自身配置、设置等导致第一数据包转发不正确出现的问题,并且分析出现的问题,并给出參考建议。另外,在使用三种不同的诊断手段对网络防火墙进行诊断的过程中,还会实时给出当前时间及对当前第一数据包诊断的情况,这其中包含模拟数据包在每个模块中的通过情况,实时数据包和预设数据包的通过和未通过的第一数据包数目的情况。其中,在根据实时数据包进行诊断的过程中,系统还可以实时抓取符合过滤条件的实时数据包,而在根据模拟数据包进行诊断时则可以根据用户的过滤条件自动生成第一数据包的抓包文件,在诊断过程中生成的这些抓包文件可以在诊断结束后通过抓包文件导出,以供用户查看。由于本发明可以根据三种第一数据包对网络防火墙进行诊断,则在诊断之前,本系统可以通过获取用户的诊断请求选择针对不同第一数据包的诊断手段,如诊断真实的流量问题的诊断请求选择在线检测,诊断网络防火墙对实时数据包的处理过程,模拟真实流量或上线前检测设备是否正确可用,可以选择模拟检测或导入检测,并诊断网络防火墙对模拟数据包或预设数据包的处理过程。根据本发明的上述实施例,第二过程数据进行诊断,得到诊断结果的步骤还可以包括获取诊断时间;检测诊断时间是否达到预设诊断时间;在诊断时间达到预设诊断时间的情况下,对第二过程数据进行诊断,得到诊断結果。其中,预设诊断时间可以为30分钟,也可以为24小时,还可以为30分钟至24小时之间的任意一个时间范围。其中,用户还可以通过获取第二过程数据的数量结束诊断,也即出现一定数量的错误的时候,系统就会自动结束诊断并给出诊断报告。另外,用户也可以手动来停止某次诊断,通过用户手动或通过检测诊断时间而停止诊断时,不管诊断过程中是否有问题出现,系统都会自动停止并给出诊断报告。需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。从以上的描述中,可以看出,本发明实现了如下技术效果通过本发明,对网络防火墙处理第一数据包的处理过程进行记录,对网络防火墙中的每ー步相关模块的处理过程都会进行相关记录和分析,并在出现第一数 据包丢弃或第一数据包在某个模块处理出错时会进行综合分析,获取诊断結果,井根据相关分析情况给出针对该错误的处理建议,帮助用户正确诊断出本次第一数据包出错的原因,解决了现有技术中对通过网络防火墙的第一数据包的诊断不准确,从而导致数据报文转发不正确的问题,实现了准确快速定位网络故障的原因,并给出相关的解决方案的效果,帮助用户准确、快速、自动定位和分析网络防火墙自身配置、设置等导致第一数据包转发不正确出现的问题,从而建议用户更改设置以使第ー数据包准确转发。显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.ー种诊断网络防火墙的方法,其特征在于,包括 将网络防火墙对第一数据包进行解封装和检测处理的处理过程中的数据进行记录,以获取所述处理过程中产生的第一过程数据; 将所述第一过程数据与预设诊断数据进行对比,以获取第二过程数据,其中,第二过程数据为所述第一过程数据中与所述预设诊断数据相匹配的数据; 对所述第二过程数据进行诊断,得到诊断結果。
2.根据权利要求1所述的方法,其特征在干,对所述第二过程数据进行诊断,得到诊断结果的步骤包括 查询获取所述第二过程数据的标识信息; 读取与所述标识信息所对应的第一报文信息,所述第一报文信息为所述第一数据包的报文信息; 对所述第一报文信息和第一配置參数进行对比分析,以获取诊断參数,其中,所述第一配置參数是所述网络防火墙的配置參数; 保存所述第二过程数据、所述标识信息以及所述诊断參数,得到所述诊断結果。
3.根据权利要求1所述的方法,其特征在干,将网络防火墙对第一数据包进行解封装和检测处理的处理过程中的数据进行记录,以获取所述处理过程中产生的第一过程数据的步骤包括 获取对所述第一数据包进行过滤的过滤条件; 根据所述过滤条件对通过所述网络防火墙的第一数据包进行过滤处理,以获取所述第一数据包中符合所述过滤条件的第二数据包; 将网络防火墙对所述第二数据包进行解封装和检测处理的处理过程中的数据进行记录,以获取所述处理过程中产生的所述第一过程数据。
4.根据权利要求3所述的方法,其特征在于,所述网络防火墙通过以下方法获取所述第一数据包 获取通过所述网络防火墙的所述实时数据包,并将所述实时数据包作为所述第一数据包;或者, 生成模拟数据包,并使所述模拟数据包通过所述网络防火墙以便所述网络防火墙将所述模拟数据包作为所述第一数据包;或者, 解析预设数据包,并将解析后的预设数据包在所述网络防火墙中回放,以便所述网络防火墙将所述处理后的预设数据包作为所述第一数据包。
5.根据权利要求1所述的方法,其特征在干,对所述第二过程数据进行诊断,得到诊断结果的步骤包括 获取诊断时间; 判断所述诊断时间是否达到预设诊断时间; 在所述诊断时间达到所述预设诊断时间的情况下,对所述第二过程数据进行诊断,得到所述诊断結果。
6.ー种诊断网络防火墙的装置,其特征在于,包括 第一处理模块,用于将网络防火墙对第一数据包进行解封装和检测处理的处理过程进行记录,以获取所述处理过程中产生的过程数据;第二处理模块,用于将所述第一过程数据与预设诊断数据进行对比,以获取第二过程数据,其中,第二过程数据为所述第一过程数据中与所述预设诊断数据相匹配的数据; 第三处理模块,用于对所述第二过程数据进行诊断,得到诊断結果。
7.根据权利要求6所述的装置,其特征在于,所述第三处理模块包括 第一获取模块,用于查询获取所述第二过程数据的标识信息; 读取模块,用于读取与所述标识信息所对应的第一报文信息,所述第一报文信息为所述第一数据包的报文信息; 分析模块,用于对所述第一报文信息和第一配置參数进行对比分析,以获取诊断參数,其中,所述第一配置參数是所述网络防火墙的配置參数; 保存模块,用于保存所述第二过程数据、所述标识信息以及所述诊断參数,得到所述诊断結果。
8.根据权利要求6所述的装置,其特征在于,所述第一处理模块包括 第二获取模块,用于获取对所述第一数据包进行过滤的过滤条件; 过滤模块,用于根据所述过滤条件对通过所述网络防火墙的第一数据包进行过滤处理,以获取所述第一数据包中符合所述过滤条件的第二数据包; 第四处理模块,用于将网络防火墙对所述第二数据包进行解封装和检测处理的处理过程中的数据进行记录,以获取所述处理过程中产生的第一过程数据。
9.根据权利要求8所述的装置,其特征在于,所述装置还包括 第三获取模块,用于获取通过所述网络防火墙的所述实时数据包,并将所述实时数据包作为所述第一数据包; 第一子处理模块,用于生成模拟数据包,并使所述模拟数据包通过所述网络防火墙以便所述网络防火墙将所述模拟数据包作为所述第一数据包; 第二子处理模块,用于解析预设数据包,并将解析后的预设数据包在所述网络防火墙中回放,以便所述网络防火墙将所述处理后的预设数据包作为所述第一数据包。
10.根据权利要求6所述的装置,其特征在于,所述第三处理模块包括 第四获取模块,用于获取诊断时间; 检测模块,用于检测所述诊断时间是否达到预设诊断时间; 第五处理模块,用于在所述诊断时间达到所述预设诊断时间的情况下,对所述第二过程数据进行诊断,得到诊断結果。
全文摘要
本发明公开了一种诊断网络防火墙的方法及装置。其中,该方法包括将网络防火墙对第一数据包进行解封装和检测处理的处理过程中的数据进行记录,以获取处理过程中产生的第一过程数据;将第一过程数据与预设诊断数据进行对比,以获取第二过程数据,其中,第二过程数据为第一过程数据中与预设诊断数据相匹配的数据;对第二过程数据进行诊断,得到诊断结果。通过本发明,实现了准确快速定位网络故障的原因,并给出相关的解决方案的效果,帮助用户准确、快速、自动定位和分析网络防火墙自身配置、设置等导致第一数据包转发不正确出现的问题,从而建议用户更改设置以使第一数据包准确转发。
文档编号H04L29/06GK103067395SQ20121059199
公开日2013年4月24日 申请日期2012年12月31日 优先权日2012年12月31日
发明者胡仁豪 申请人:苏州山石网络有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1