CN114465798A - 一种报文过滤方法、网关设备及存储介质 - Google Patents

一种报文过滤方法、网关设备及存储介质 Download PDF

Info

Publication number
CN114465798A
CN114465798A CN202210124490.0A CN202210124490A CN114465798A CN 114465798 A CN114465798 A CN 114465798A CN 202210124490 A CN202210124490 A CN 202210124490A CN 114465798 A CN114465798 A CN 114465798A
Authority
CN
China
Prior art keywords
dns
address
request message
filtering
proxy module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202210124490.0A
Other languages
English (en)
Other versions
CN114465798B (zh
Inventor
伍国祥
董浩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Gongjin Electronics Co Ltd
Original Assignee
Shenzhen Gongjin Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Gongjin Electronics Co Ltd filed Critical Shenzhen Gongjin Electronics Co Ltd
Priority to CN202210124490.0A priority Critical patent/CN114465798B/zh
Publication of CN114465798A publication Critical patent/CN114465798A/zh
Application granted granted Critical
Publication of CN114465798B publication Critical patent/CN114465798B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0236Filtering by address, protocol, port number or service, e.g. IP-address or URL
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0263Rule management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0281Proxies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请提供一种报文过滤方法、网关设备及存储介质。报文过滤方法应用于设有转发模块和DNS代理模块的网关设备,包括:转发模块获取DNS请求报文及其对应的源IP地址和目的IP地址;当源IP地址为网关设备的IP地址且目的IP地址不是网关设备的IP地址时,若网关设备的DNS服务器配置文件中的首选传输地址为DNS代理模块的回环地址,则转发模块根据回环地址将DNS请求报文重定向至DNS代理模块;当源IP地址与目的IP地址均不是网关设备的IP地址时,转发模块通过NFQUEUE机制将DNS请求报文重定向至DNS代理模块;DNS代理模块根据预设的至少一个DNS过滤规则对DNS请求报文进行过滤,使得用户安全上网。

Description

一种报文过滤方法、网关设备及存储介质
技术领域
本申请涉及通讯技术领域,尤其涉及一种报文过滤方法、网关设备及存储介质。
背景技术
随着计算机网络技术的飞速发展以及网络的逐渐普及,用户可以基于网络实现资源共享以及通信的目的。但是网络上的信息鱼龙混杂,某些网站上存在反动、暴力等不健康的内容,这些内容不适合用户阅览,尤其会影响未成年人的身心健康发展。因此,急需一种可以对用户请求访问的网页进行过滤的技术,限制用户访问暴力、反动、黄色等可疑网站,使得用户可以安全上网,进而创建一个健康的网络环境。
发明内容
本申请实施例提供了一种报文过滤方法、网关设备及存储介质,可以对请求访问的网页进行过滤,使用户安全上网。
第一方面,本申请实施例提供了一种报文过滤方法,该方法应用于网关设备,网关设备包括转发模块和DNS代理模块,方法包括:转发模块获取DNS请求报文以及DNS请求报文的源IP地址和目的IP地址;当源IP地址为网关设备的IP地址且目的IP地址不是网关设备的IP地址时,若网关设备的DNS服务器配置文件中的首选传输地址为DNS代理模块的回环地址,则转发模块根据回环地址将DNS请求报文重定向至DNS代理模块;DNS代理模块根据预设的至少一个DNS过滤规则对DNS请求报文进行过滤。
基于本申请提供的报文过滤方法,针对网关设备自身向目的IP地址发送的DNS请求报文,转发模块需确认DNS服务器配置文件中的首选传输地址是否为DNS代理模块的回环地址,若是,则转发模块可以根据回环地址将DNS请求报文转发至DNS代理模块中,使得DNS代理模块可以基于预设的过滤规则对网关设备发送的DNS请求报文进行过滤。本申请在网关设备中的DNS代理模块本身具备报文转发功能的基础上,增加了过滤功能,通过转发模块使得DNS代理模块可以接收到网关设备自身发送的DNS请求报文并对DNS请求报文进行过滤,提高网关设备发送DNS请求报文时的安全性,从而创建安全的上网环境。
可选地,报文过滤方法还包括:当源IP地址为网关设备的IP地址且目的IP地址不是网关设备的IP地址时,若网关设备的DNS服务器配置文件中的首选传输地址不是DNS代理模块的回环地址,则转发模块将回环地址设置为首选传输地址,并根据回环地址将DNS请求报文重定向至DNS代理模块。
可选地,报文过滤方法还包括:当源IP地址与目的IP地址均不是网关设备的IP地址时,转发模块通过NFQUEUE机制将DNS请求报文重定向至DNS代理模块。
可选地,网关设备还包括规则配置模块,规则配置模块用于将至少一个DNS过滤规则保存至预先创建的全局链表中;
DNS代理模块根据预设的至少一个DNS过滤规则对DNS请求报文进行过滤,包括:DNS代理模块根据全局链表对DNS请求报文进行过滤。
可选地,DNS请求报文包括请求域名;
DNS代理模块根据全局链表对DNS请求报文进行过滤,包括:DNS代理模块获取接收DNS请求报文的接收时间,并根据预存的ARP表确定与源IP地址对应的MAC地址;DNS代理模块遍历全局链表中的每个DNS过滤规则,根据DNS过滤规则、MAC地址、请求域名和接收时间对DNS请求报文进行过滤。
可选地,DNS过滤规则包括过滤条件和过滤结果;
根据与每个全局变量对应的DNS过滤规则、MAC地址、请求域名和接收时间对DNS请求报文进行过滤,包括:DNS代理模块确定MAC地址、请求域名和接收时间是否满足过滤条件;若满足,则根据过滤结果对DNS请求报文进行过滤;若不满足,则将DNS请求报文发送至目的IP地址。
可选地,DNS过滤条件包括需过滤的MAC地址、需过滤的请求域名和需过滤的时间范围。
可选地,过滤结果为将DNS请求报文丢弃或向源IP地址发送DNS响应报文。
第二方面,本申请实施例提供了一种网关设备,包括转发模块、DNS代理模块、存储器、处理器以及存储在存储器中并可在处理器上运行的计算机程序,处理器执行计算机程序时实现如第一方面中任一项所述的方法。
第三方面,本申请实施例提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现如上述第一方面中任一项所述的方法。
第四方面,本申请实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行上述第一方面中任一项所述的方法。
可以理解的是,上述第二方面至第四方面的有益效果可以参见上述第一方面和第一方面的各可能的实施方式所带来的有益效果,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一实施例提供的一种网关设备的结构示意图;
图2是本申请一实施例提供的一种报文过滤方法的流程图;
图3是本申请一实施例提供的一种规则配置模块将预设的至少一个DNS过滤规则保存至预先创建的全局链表中的流程示意图;
图4是本申请一实施例提供的一种DNS代理模块根据全局链表对DNS请求报文进行过滤的流程示意图;
图5是本申请一实施例提供的一种报文过滤系统的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
随着网络技术的不断发展,用户可以基于网络实现资源共享以及通信的目的。但是,网络上的信息鱼龙混杂,某些网站上存在反动、暴力等不健康的内容,这些内容不适合用户阅览,尤其会影响未成年人的身心健康发展。因此,需要提供一种可以对用户请求访问的网页进行过滤的技术,限制用户访问暴力、反动、黄色等可疑网站,使得用户可以安全上网,进而创建一个健康的网络环境。
为了解决上述问题,本申请提供了一种报文过滤方法、网关设备及存储介质。在网关设备的DNS代理开源进程中增加报文转发和报文过滤功能,通过转发模块将接收到目的IP地址不是网关设备的IP地址的DNS请求报文重定向至DNS代理模块中,使DNS代理模块将满足预设的DNS过滤规则的DNS请求报文进行过滤,以及将不满足过滤规则的DNS请求报文发送给目的IP地址,以提高网络访问的安全性。
下面结合附图,对本申请的技术方案进行详细描述。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。
在本申请实施例中的提供的报文过滤方法可应用于任意一个具备DNS(DomainName System,域名系统)代理功能的网关设备中,例如路由器等网关设备。具体的,网关设备设置有dproxy(DNS proxy,DNS代理)开源进程或其他类型的DNS代理开源进程,目前的DNS代理开源进程主要用于转发客户端与服务器之间的DNS请求报文以及应答报文,本申请在现有的DNS代理开源进程的基础上设置有转发模块以及DNS代理模块。
如图1中所示,本申请提供的网关设备1包括DNS代理开源进程,DNS代理开源进程包括转发模块14以及DNS代理模块15。其中,转发模块14用于获取DNS请求报文以及DNS请求报文的源IP地址和目的IP地址。针对网关设备向目的IP地址发送的DNS请求报文,若网关设备的DNS服务器配置文件中的首选传输地址为DNS代理模块的回环地址,则转发模块14还用于根据回环地址将DNS请求报文重定向至DNS代理模块;若网关设备的DNS服务器配置文件中的首选传输地址不是DNS代理模块的回环地址,则转发模块14还用于将回环地址设置为首选传输地址,并根据回环地址将DNS请求报文重定向至DNS代理模块15。针对源IP地址和目的IP地址均不是网关设备IP地址的DNS请求报文,转发模块14用于基于NFQUEUE机制将DNS请求报文重定向至DNS代理模块15。DNS代理模块15用于根据预设的至少一个DNS过滤规则对DNS请求报文进行过滤。
网关设备1还包括存储器12、处理器11以及存储在存储器12中并可在处理器11上运行的计算机程序13,处理器11执行计算机程序13时实现本申请实施例提供的报文过滤方法。网关设备中的转发模块可以接收处于同一局域网下的至少一个客户端发送的DNS请求报文,针对网关设备接收到的任意一个客户端发送的DNS请求报文或者网关设备自身向服务器发送的任意一个DNS请求报文,均可以通过本申请提供的报文过滤方法对DNS请求报文进行过滤处理。
参考图2所示的报文过滤方法的流程图,对本申请实施例提供的报文过滤方法进行详细的描述。在一种可能的实现方式中,本申请实施例提供的报文过滤方法包括以下步骤:
S201,转发模块获取DNS请求报文以及DNS请求报文的源IP地址和目的IP地址,当源IP地址为网关设备的IP地址且目的IP地址不是网关设备的IP地址时,若网关设备的DNS服务器配置文件中的首选传输地址为DNS代理模块的回环地址,则转发模块根据回环地址将DNS请求报文重定向至DNS代理模块。
在一种可能的实现方式中,转发模块在获取到DNS请求报文的源IP地址和目的IP地址后,对于目的IP地址不是网关设备自身IP地址的DNS请求报文,需要通过转发模块基于预设的重定向方式将DNS请求报文重定向至DNS代理模块中进行过滤。
在一个实施例中,针对网关设备向目的IP地址不是网关设备自身的IP地址发送的DNS请求报文,若DNS服务器配置文件中首选传输地址为DNS代理模块的回环地址,则网关设备中的转发模块可以在获取到DNS请求报文后,根据回环地址将DNS请求报文重定向至DNS代理模块中,以便DNS代理模块对DNS请求报文进行过滤处理。其中,目的IP地址可以为与网关设备之间建立通信连接的服务器设备。
需要说明的是,网关设备中存储的DNS服务器配置文件用于设置网关设备自身发送的DNS请求报文的传输地址,一般将DNS服务器配置文件中出现的第一个nameserver对应的地址作为DNS请求报文的首选传输地址,即网关设备需要将DNS请求报文发送至该首选地址。
在另一个实施例中,当网关设备首次启动或者系统被重置时,DNS服务器配置文件中出现的第一个nameserver对应的传输地址可能不是DNS代理模块的回环地址。示例性的,第一个nameserver对应的传输地址可能为服务器对应的IP(Internet Protocol,网际互连协议)地址,则表明网关设备需要将DNS请求报文直接发送给服务器,导致DNS代理模块无法接收到DNS请求报文,也无法对DNS请求报文进行过滤。因此,需要对DNS服务器配置文件进行更改,使得转发模块基于回环地址将网关设备向目的IP地址不是网关设备自身的IP地址发送的DNS请求报文重定向至DNS代理模块,便于DNS代理模块对DNS请求报文进行过滤,以确定是否可以将DNS请求报文发送至目的IP地址。
因此,本申请提供的报文过滤方法还包括:当源IP地址为网关设备的IP地址且目的IP地址不是网关设备的IP地址时,若网关设备的DNS服务器配置文件中的首选传输地址不是DNS代理模块的回环地址,则将回环地址设置为首选传输地址,并根据回环地址将DNS请求报文重定向至DNS代理模块。具体的,可以在DNS服务器配置文件中的首行插入DNS代理模块的回环地址,使得该回环地址作为首选传输地址,以将DNS请求报文传输至DNS代理模块中进行过滤处理。
示例性的,DNS服务器配置文件为/etc/resolv.conf,假设网关设备中的DNS代理模块的回环地址为127.0.0.1,则可以在DNS服务器配置文件中的首行插入“nameserver127.0.0.1”,使得DNS代理模块的回环地址作为首选传输地址。转发模块根据回环地址将DNS请求报文重定向至DNS代理模块。
在其他实施例中,针对网关设备接收到的客户端向服务端发送的DNS请求报文,DNS请求报文的源IP地址与目的IP地址均不是网关设备的IP地址,转发模块可以通过NFQUEUE(队列)机制将DNS请求报文重定向至DNS代理模块。
具体的,转发模块将源IP地址与目的IP地址均不是网关设备的IP地址的DNS请求报文放到系统队列中,然后在DNS代理开源进程中结合libnetfilter_queue开源库的API(Application Programming Interface,应用程序接口)将DNS请求报文重定向至DNS代理模块进行处理
S202,DNS代理模块根据预设的至少一个DNS过滤规则对DNS请求报文进行过滤。
在一个实施例中,如图1所示,网关设备1还包括规则配置模块16,规则配置模块16用于将预设的至少一个DNS过滤规则保存至预先创建的全局链表中,则DNS代理模块15可以根据全局链表中至少一个DNS过滤规则对DNS请求报文进行过滤处理。
示例性的,参考图3中所示的规则配置模块16将预设的至少一个DNS过滤规则保存至预先创建的全局链表中的流程示意图。网关设备中存储有配置文件以及预先创建的全局链表。其中,配置文件中预存有一个或多个DNS过滤规则,且配置文件中每行仅设置有一个DNS过滤规则。全局链表中可以设置全局链表结构变量,每个全局链表结构变量指示一个DNS过滤规则。
假设配置文件中有多个DNS过滤规则,如图3中所示的流程示意图,规则配置模块打开配置文件后,逐行获取每个DNS过滤规则。针对每个DNS过滤规则进行解析,并遍历全局链表中的每个全局链表结构变量,确定全局链表中是否存在与该DNS过滤规则相同的全局链表结构变量,若存在,则不需要将该DNS过滤规则保存至预先创建的全局链表中;若不存在,则将该DNS过滤规则保存至预先创建的全局链表中,直至确定全局链表中包括配置文件中的所有的DNS过滤规则。
在一个示例中,DNS请求报文包括源IP地址以及请求域名。若DNS请求报文是网关设备向服务器发送的,则源IP地址为网关设备的IP地址,目的IP地址为服务器的IP地址。若DNS请求报文是客户端通过网关设备向服务器发送的,则源IP地址为客户端的IP地址,目的IP地址为服务器的IP地址。网关设备中预存有ARP(Address Resolution Protocol,地址解析协议)表,ARP表中包括多个源IP地址及与每个源IP地址对应的MAC(Media AccessControl,媒体存取控制)地址。当DNS代理模块接收到一个DNS请求报文时,可以获取接收DNS请求报文的接收时间,并根据ARP表确定与DNS请求报文中的源IP地址对应的MAC地址。DNS代理模块可以遍历全局链表中的所有的DNS过滤规则,根据源MAC地址、请求域名、接收时间以及与每个DNS过滤规则对DNS请求报文进行过滤。
示例性的,接收时间可以包括接收日期以及接收时刻。其中,接收日期可以包括年、月、日和/或星期。
在一个示例中,DNS过滤规则包括过滤条件和过滤结果。其中,过滤条件可以包括需过滤的MAC地址、需过滤的请求域名以及需过滤的时间范围,过滤结果为将DNS请求报文丢弃或向源IP地址发送DNS响应报文。
示例性的,DNS过滤规则的格式可以为[keywords];[weekdays];[time range];[mac];[action];[mode],其中,keywords表示需过滤的请求域名或请求域名中的关键字。[weekdays];[time range]表示需过滤的时间范围,weekdays表示星期一至星期日中的任意一天或多天,示例性的,可以表示为Mon、Tue、Wed、Thu、Fri、Sat、Sun中的其中一个或多个形成的组合。time range表示时间范围,格式为hh1:mm1-hh2:mm2,表示从hh1:mm1开始到hh2:mm2结束。mac表示需过滤的MAC地址,格式为xx:xx:xx:xx:xx:xx。mode表示限定请求域名中是否包含的keywords,示例性的,若mode为0,则表示不包含keywords;若mode为1,则表示包含keywords。action表示若DNS报文满足前述的条件{[keywords];[weekdays];[timerange];[mac];[mode]}时采取的过滤结果,示例性的,若action为0,则表示将DNS请求报文丢弃;若action为1,则表示向源IP地址发送的DNS响应报文为DNS欺骗;若action为2,则表示向源IP地址发送的DNS响应报文为错误的DNS请求。
示例性的,若要对MAC地址为00:11:22:33:44:55的客户端,在周一至周五的8点到18点之间向服务器发送的包含关键字aaa的请求域名的DNS请求报文报文予以丢弃,则可以按照预设的格式将过滤规则设置为{aaa;Mon,Tue,Wed,Thu,Fri;08:00-18:00;00:11:22:33:44:55;0;1}。
在本申请实施例中,DNS代理模块在接收到一个DNS请求报文后,可以遍历全局链表中的所有的DNS过滤规则。DNS代理模块可以判断DNS请求报文中的与源IP地址对应的MAC地址、请求域名以及DNS请求报文的接收时间是否满足DNS过滤规则中的DNS过滤条件,若满足,则根据与DNS过滤条件对应的过滤结果对DNS请求报文进行过滤,若不满足,则将DNS请求报文发送至目的IP地址。
在一个示例中,参考图4所示的DNS代理模块根据全局链表对DNS请求报文进行过滤的流程示意图,对DNS请求报文的过滤方法进行示例性的说明。DNS代理模块根据全局链表对DNS请求报文进行过滤的方法包括以下步骤:
S401,DNS代理模块获取到DNS请求报文、ARP表、全局链表、接收时间以及DNS请求报文的目的IP地址;
S402,DNS代理模块根据ARP表确定与DNS请求报文的源IP地址对应的MAC地址。
S403,依次遍历全局链表中的DNS过滤规则。针对每个DNS过滤规则,确定与源IP地址对应的MAC地址与DNS过滤规则中的需过滤的MAC地址是否匹配。若匹配,则执行步骤S404;若不匹配,则执行步骤S409。
S404,确定DNS请求报文中的请求域名是否包含DNS过滤规则中的需过滤的请求域名(即keywords)。若是(即包含),则执行步骤S405;若否(即不包含),则执行步骤S409。
S405,确定获取时间是否在DNS过滤规则中的需过滤的时间范围内。若是,则执行步骤S406;若否,则执行步骤S409。
S406,确定DNS过滤规则中mode的数值。若数值为1,表示限定DNS请求报文的请求域名中包含keywords,则执行步骤S408;若数值为0,表示限定DNS请求报文的请求域名中不包含keywords,则执行步骤S407。
S407,DNS代理模块将DNS请求报文发送给目的IP地址。
S408,确定DNS过滤规则中的过滤结果(即action的数值),并根据过滤结果对DNS请求报文进行过滤。若action为0,则将DNS请求报文丢弃;若action为1,则构建DNS响应报文并将DNS响应报文发送给源IP地址,使得与源IP地址对应的终端设备上显示故障检测;若action为2,则构建DNS响应报文并将DNS响应报文发送给源IP地址,使得与源IP地址对应的终端设备上显示请求域名失败。
S409,确定是否遍历完全局链表中所有的DNS过滤规则。若是,则结束过滤;否则执行步骤S403,继续遍历剩下的DNS过滤规则。
基于本申请实施例提供的报文过滤方法,针对网关设备发送的DNS请求报文且DNS请求报文的目的IP地址不是网关设备自身的IP地址,则需确认DNS服务器配置文件中的首选传输地址是否为DNS代理模块的回环地址,若是,则转发模块可以根据回环地址将DNS请求报文转发至DNS代理模块中,使得DNS代理模块基于预设的过滤规则对DNS请求报文进行过滤。若不是,则需要将DNS代理模块的回环地址添加至DNS服务器配置文件中,使得转发模块可以根据回环地址将DNS请求报文重定向至DNS代理模块中。针对源IP地址和目的IP地址均不是网关设备自身IP地址的DNS请求报文,转发模块可以基于NFQUEUE机制将DNS请求报文重定向至DNS代理模块,以便DNS代理模块对此类DNS请求报文进行过滤。本申请在现有网关设备中的如dproxy之类的DNS代理开源进程中设置了报文过滤规则,并增加了重定向功能和过滤功能,使得转发模块将目的IP不是网关设备自身IP的DNS请求报文重定向至DNS代理模块中,使得DNS代理模块可以对用户请求访问的网页域名进行过滤,提高网关设备发送DNS请求报文时的安全性,为用户创建安全的上网环境。
参考图5,本申请实施例还提供了一种报文过滤系统。该报文过滤系统包括至少一个客户端2、服务器3以及上述实施例中提供的网关设备1。网关设备1中的转发模块可以接收处于同一局域网下的至少一个客户端2发送的DNS请求报文,针对网关设备1接收到的任意一个客户端2向服务器3发送的DNS请求报文或者网关设备1自身向服务器3发送的任意一个DNS请求报文,网关设备1均可以通过本申请上述实施例中提供的相应的报文过滤方法对DNS请求报文进行处理。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时可实现上述报文过滤方法实施例中的步骤。
本申请实施例提供了一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得终端设备执行时实现可实现上述报文过滤方法实施例中的步骤。
在本申请的描述中,上述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读存储介质至少可以包括:能够将计算机程序代码携带到拍照装置/终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。
上述描述中,“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其它一些实施例中”、“在另一个实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
在本申请的描述中,需要理解的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。
此外,在本申请中,除非另有明确的规定和限定,术语“连接”、“相连”等应做广义理解,例如可以是机械连接,也可以是电连接;可以是直接连接,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系,除非另有明确的限定、对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本申请中的具体含义。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。

Claims (10)

1.一种报文过滤方法,其特征在于,应用于网关设备,所述网关设备包括转发模块和DNS代理模块,所述方法包括:
所述转发模块获取DNS请求报文以及所述DNS请求报文的源IP地址和目的IP地址;
当所述源IP地址为所述网关设备的IP地址且所述目的IP地址不是所述网关设备的IP地址时,若所述网关设备的DNS服务器配置文件中的首选传输地址为所述DNS代理模块的回环地址,则所述转发模块根据所述回环地址将所述DNS请求报文重定向至所述DNS代理模块;
所述DNS代理模块根据预设的至少一个DNS过滤规则对所述DNS请求报文进行过滤。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述源IP地址为所述网关设备的IP地址且所述目的IP地址不是所述网关设备的IP地址时,若所述网关设备的DNS服务器配置文件中的首选传输地址不是所述DNS代理模块的回环地址,则所述转发模块将所述回环地址设置为所述首选传输地址,并根据所述回环地址将所述DNS请求报文重定向至所述DNS代理模块。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述源IP地址与所述目的IP地址均不是所述网关设备的IP地址时,所述转发模块通过NFQUEUE机制将所述DNS请求报文重定向至所述DNS代理模块。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述网关设备还包括规则配置模块,所述规则配置模块用于将所述至少一个DNS过滤规则保存至预先创建的全局链表中;
所述DNS代理模块根据预设的至少一个DNS过滤规则对所述DNS请求报文进行过滤,包括:
所述DNS代理模块根据所述全局链表对所述DNS请求报文进行过滤。
5.根据权利要求4所述的方法,其特征在于,所述DNS请求报文包括请求域名;
所述DNS代理模块根据所述全局链表对所述DNS请求报文进行过滤,包括:
所述DNS代理模块获取接收所述DNS请求报文的接收时间,并根据预存的ARP表确定与所述源IP地址对应的MAC地址;
所述DNS代理模块遍历所述全局链表中的每个所述DNS过滤规则,根据所述DNS过滤规则、所述MAC地址、所述请求域名和所述接收时间对所述DNS请求报文进行过滤。
6.根据权利要求5所述的方法,其特征在于,所述DNS过滤规则包括过滤条件和过滤结果;
所述根据与每个所述全局变量对应的DNS过滤规则、所述MAC地址、所述请求域名和所述接收时间对所述DNS请求报文进行过滤,包括:
所述DNS代理模块确定所述MAC地址、所述请求域名和所述接收时间是否满足所述过滤条件;
若满足,则根据所述过滤结果对所述DNS请求报文进行过滤;
若不满足,则将所述DNS请求报文发送至所述目的IP地址。
7.根据权利要求6所述的方法,其特征在于,所述DNS过滤条件包括需过滤的MAC地址、需过滤的请求域名和需过滤的时间范围。
8.根据权利要求6至7任一项所述的方法,其特征在于,所述过滤结果为将所述DNS请求报文丢弃或向所述源IP地址发送DNS响应报文。
9.一种网关设备,其特征在于,包括转发模块、DNS代理模块、存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至8任一项所述的方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至8任一项所述的方法。
CN202210124490.0A 2022-02-10 2022-02-10 一种报文过滤方法、网关设备及存储介质 Active CN114465798B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210124490.0A CN114465798B (zh) 2022-02-10 2022-02-10 一种报文过滤方法、网关设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210124490.0A CN114465798B (zh) 2022-02-10 2022-02-10 一种报文过滤方法、网关设备及存储介质

Publications (2)

Publication Number Publication Date
CN114465798A true CN114465798A (zh) 2022-05-10
CN114465798B CN114465798B (zh) 2024-03-19

Family

ID=81412755

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210124490.0A Active CN114465798B (zh) 2022-02-10 2022-02-10 一种报文过滤方法、网关设备及存储介质

Country Status (1)

Country Link
CN (1) CN114465798B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117240612A (zh) * 2023-11-10 2023-12-15 杭州海康威视数字技术股份有限公司 基于多模过滤的失陷物联网设备安全检测方法及装置

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101277306A (zh) * 2008-05-14 2008-10-01 华为技术有限公司 一种处理dns业务的方法、系统及设备
JP2012160926A (ja) * 2011-02-01 2012-08-23 Nec Corp 有害サイトフィルタリングシステム及びフィルタリング方法
CN103327025A (zh) * 2013-06-28 2013-09-25 北京奇虎科技有限公司 网络访问控制方法及装置
WO2018000856A1 (zh) * 2016-06-30 2018-01-04 平安科技(深圳)有限公司 一种实现SDN Overlay网络报文转发的方法、终端、设备及计算机可读存储介质
CN108011826A (zh) * 2017-12-01 2018-05-08 锐捷网络股份有限公司 路由方法、路由设备、通信系统及存储介质
CN108494761A (zh) * 2018-03-15 2018-09-04 四川斐讯信息技术有限公司 一种路由器网址过滤方法和过滤系统
CN111245973A (zh) * 2020-01-20 2020-06-05 烽火通信科技股份有限公司 一种基于域名的报文传输方法、报文转发控制方法及系统
CN112822305A (zh) * 2021-02-03 2021-05-18 深圳市共进电子股份有限公司 处理dns查询请求的方法、装置、路由器及存储介质

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101277306A (zh) * 2008-05-14 2008-10-01 华为技术有限公司 一种处理dns业务的方法、系统及设备
JP2012160926A (ja) * 2011-02-01 2012-08-23 Nec Corp 有害サイトフィルタリングシステム及びフィルタリング方法
CN103327025A (zh) * 2013-06-28 2013-09-25 北京奇虎科技有限公司 网络访问控制方法及装置
WO2018000856A1 (zh) * 2016-06-30 2018-01-04 平安科技(深圳)有限公司 一种实现SDN Overlay网络报文转发的方法、终端、设备及计算机可读存储介质
CN108011826A (zh) * 2017-12-01 2018-05-08 锐捷网络股份有限公司 路由方法、路由设备、通信系统及存储介质
CN108494761A (zh) * 2018-03-15 2018-09-04 四川斐讯信息技术有限公司 一种路由器网址过滤方法和过滤系统
CN111245973A (zh) * 2020-01-20 2020-06-05 烽火通信科技股份有限公司 一种基于域名的报文传输方法、报文转发控制方法及系统
CN112822305A (zh) * 2021-02-03 2021-05-18 深圳市共进电子股份有限公司 处理dns查询请求的方法、装置、路由器及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
陈福才;何威振;程国振;霍树民;周大成;: "基于DPDK的内网动态网关关键技术设计", 通信学报, no. 06 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117240612A (zh) * 2023-11-10 2023-12-15 杭州海康威视数字技术股份有限公司 基于多模过滤的失陷物联网设备安全检测方法及装置
CN117240612B (zh) * 2023-11-10 2024-01-26 杭州海康威视数字技术股份有限公司 基于多模过滤的失陷物联网设备安全检测方法及装置

Also Published As

Publication number Publication date
CN114465798B (zh) 2024-03-19

Similar Documents

Publication Publication Date Title
EP1413119B1 (en) Method and apparatus for facilitating distributed delivery of content across a computer network
US10749871B2 (en) Intelligent management of application connectivity
US6233618B1 (en) Access control of networked data
JP6074781B2 (ja) 許可されていないサービスアクセスを防止する方法および装置
RU2582573C2 (ru) Способ уведомления о полосе пропускания пользователя
US20020188733A1 (en) Method and apparatus to manage transactions at a network storage device
US20040264385A1 (en) Method and apparatus for determining network topology in a peer-to-peer network
US20070199064A1 (en) Method and system for quality of service based web filtering
US20080005341A1 (en) Method and system for dynamic list prioritization
EP1008087A1 (en) Method and apparatus for remote network access logging and reporting
EP2315407B1 (en) Address couplet communication filtering
WO2006111970A1 (en) Method and system for detecting and managing peer-to-peer traffic over a data network
CN109617780A (zh) 接入网络的方法、装置、终端设备及机器可读存储介质
WO2008005038A1 (en) A method and system for content processing
US20080104688A1 (en) System and method for blocking anonymous proxy traffic
CN114465798A (zh) 一种报文过滤方法、网关设备及存储介质
US20220141150A1 (en) Implementing network constraint exceptions on a per device basis
US20040267875A1 (en) Method and apparatus for establishing peering rules for distributed content delivery
US10659497B2 (en) Originator-based network restraint system for identity-oriented networks
CN106488449A (zh) 一种无线通信设备的管理方法及无线通信设备
EP2260618B1 (en) Dynamic discovery of quality of service nodes
KR20050077976A (ko) 무선 데이터 서비스를 위한 사용자의 세션 정보 제공 방법및 시스템
KR100494243B1 (ko) 이동 통신 단말기의 인터넷 사이트 접근 제어 방법
CN116567001A (zh) 一种基于云端nas的数据迁移系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant