一种报文控制方法及装置与流程

文档序号:12624590阅读:181来源:国知局
一种报文控制方法及装置与流程

本发明涉及通信技术领域,尤其涉及一种报文控制方法及装置。



背景技术:

Portal接入认证是一种常见的三层用户接入认证方式。当未经认证的用户通过web浏览器访问互联网internet时,接入设备会将用户的访问请求重定向到局域网的portal服务器的认证页面进行认证,认证通过后用户才可以访问internet。

但是在portal认证过程中,未经认证用户也可以先访问DNS(Domain Name Service,域名解析服务)服务器获取外部网站的IP(Internet Protocol,互联网协议)地址,再向该IP地址发起访问请求。但是此时未经认证的用户已经能获取了部分外网信息,比如网站的IP地址,因此导致网络的安全性较差。



技术实现要素:

有鉴于此,本发明提供一种报文控制的方法及装置来解决现有技术中未经认证的用户会获取外网信息的问题。

具体地,本发明是通过如下技术方案实现的:

本发明提供一种报文控制方法,所述方法应用于介于用户主机与DNS之间的接入设备,所述方法包括:

接收用户主机向DNS发送的DNS报文;

确定用户主机是否已通过认证;

当用户主机未通过认证时,对DNS报文进行拦截,将用户的网络访问请求导向到本接入设备的认证页面;

当用户主机通过认证时,转发所述DNS报文至DNS。

进一步的,确定用户主机是否已通过认证,具体为:

判断本地记录的用户信息中是否存在所述DNS报文携带的用户信息;

如果是,则确定所述用户主机已通过认证;

如果否,则确定所述用户主机未通过认证。

进一步的,将用户的网络访问请求导向到本接入设备的认证页面,具体包括:

缓存所述DNS报文不向DNS服务器转发或丢弃所述DNS报文;构造所述DNS报文的应答报文,所述应答报文用于将用户请求解析的域名重定向到本接入设备的IP地址;

接收用户主机根据所述DNS应答报文向本接入设备发送的页面请求;

向所述用户主机返回认证页面;

依据用户主机在认证页面提交的认证凭据对所述用户主机进行认证,当认证成功时,添加所述用户主机的信息至本地记录的已认证的用户信息中。

进一步的,构造所述DNS报文的应答报文,进一步包括:启动定时器,所述定时器的时长为所述应答报文中的IP地址的有效时长;

向所述用户主机返回所述认证页面之前,进一步包括:判断所述定时器是否超时,如果是,拒绝向用户主机返回所述应答报文。

基于相同的构思,本发明还提供一种报文控制装置,所述装置应用于介于用户主机与DNS之间的接入设备,所述装置包括:

接收单元,用于接收用户主机向DNS发送的DNS报文;

确定单元,用于确定用户主机是否已通过认证;

认证单元,用于当用户主机未通过认证时,对DNS报文进行拦截,将用户的网络访问请求导向到本接入设备的认证页面;

转发单元,用于当用户主机通过认证时,转发所述DNS报文至DNS。

进一步的,所述确定单元,具体用于判断本地记录的用户信息中是否存在所述DNS报文携带的用户信息;如果是,则确定所述用户主机已通过认证;如果否,则确定所述用户主机未通过认证。

进一步的,所述认证单元,进一步包括:

应答子单元,用于缓存所述DNS报文不向DNS服务器转发或丢弃所述DNS报文;构造所述DNS报文的应答报文,所述应答报文用于将用户请求解析的域名重定向到本接入设备的IP地址;

认证子单元,用于接收用户主机根据所述DNS应答报文向本接入设备发送的页面请求;向所述用户主机返回认证页面;依据用户主机在认证页面提交的认证凭据对所述用户主机进行认证,当认证成功时,添加所述用户主机的信息至本地记录的已认证的用户信息中。

进一步的,所述应答子单元,进一步用于启动定时器,所述定时器的时长为所述应答报文中的IP地址的有效时长;向所述用户主机返回所述认证页面之前,判断所述定时器是否超时,如果是,拒绝向用户主机返回所述应答报文。

由此可见,本发明可以使接入设备在接收用户主机向DNS发送的DNS报文时,确定用户主机是否已通过认证,当用户主机未通过认证时,对DNS报文进行拦截,将用户的网络访问请求导向到本接入设备的认证页面;当通过认证时,转发所述DNS报文至DNS。因此本发明可以在用户完成认证之前,阻止外网信息透露给用户,从而提高了网络的安全性。

附图说明

图1是本发明一种示例性实施方式中的一种报文控制方法的处理流程图;

图2是本发明一种示例性实施方式中的组网示意图;

图3本发明一种示例性实施方式中的报文控制装置所在接入设备的硬件结构图;

图4本发明一种示例性实施方式中的一种报文控制装置的逻辑结构图。

具体实施方式

为了解决现有技术存在的问题,本发明提供一种报文控制方法及装置,可以使接入设备在接收用户主机向DNS发送的DNS报文时,确定用户主机是否已通过认证,当用户主机未通过认证时,对DNS报文进行拦截,将用户的网络访问请求导向到本接入设备的认证页面;当通过认证时,转发所述DNS报文至DNS。因此本发明可以在用户完成认证之前,阻止外网信息透露给用户,从而提高了网络的安全性。

请参考图1,是本发明一种示例性实施方式中的一种报文控制方法的处理流程图,该方法应用于介于用户主机与DNS之间的接入设备,所述方法包括:

步骤101、接收用户主机向DNS发送的DNS报文;

在本实施例中,当用户主机在初始化时已获取上述DNS的IP地址。之后,当用户想要访问外网服务器时,接入设备可以收到用户主机根据已获取的DNS的IP地址向该DNS发送DNS报文。

步骤102、确定用户主机是否已通过认证;

在本实施例中,接入设备的接口上会使能接入控制,并且该接入设备的CPU会向该接口下发的DNS报文上送规则,以使接入设备的接口在收到DNS报文时,根据所述上送规则将收到的DNS报文上送到CPU处理,从而根据该DNS报文进一步确定所述用户主机是否已通过认证。

在本发明可选的实施例中,所述DNS报文中可以携带用户信息,所述用户信息至少包括用户主机的IP地址等信息。当接入设备解析到该DNS报文中携带的用户信息后,进一步判断本地记录的用户信息中是否存在所述DNS报文携带的用户信息;如果是,则确定所述用户主机已通过认证;如果否,则确定所述用户主机未通过认证。

步骤103、当用户主机未通过认证时,对DNS报文进行拦截,将用户的网络访问请求导向到本接入设备的认证页面;

当用户主机未通过认证时,接入设备会对该DNS报文进行拦截,具体来说,接入设备可以缓存所述DNS报文不向DNS服务器转发或丢弃所述DNS报文从而阻止非法用户访问DNS。然后接入设备将用户向外网服务器发送的网络访问请求导向到本接入设备的认证页面,从而引导用户主机进行接入认证。

具体来讲,在本发明可选的实施例中,接入设备可以先构造所述DNS报文的应答报文,所述应答报文用于将用户请求解析的域名重定向到本接入设备的IP地址;然后接收用户主机根据所述DNS应答报文向本接入设备发送的页面请求;再向所述用户主机返回认证页面;最后接入设备依据用户主机在认证页面提交的认证凭据对所述用户主机进行认证,所谓的认证凭据可以包括用户名、密码等信息;当接入设备收到用户主机发送的认证凭据时,可以进一步对该认证凭据进行认证,例如通过接入设备本地配置的认证凭据,或者通过RADIUS(Remote Authentication Dial In User Service,远程用户拨号认证服务)等协议与远程认证服务器进行认证交互等方式进行认证;当认证成功时,接入设备可以添加所述用户的用户信息至本地记录的已认证的用户信息中。若认证失败,则重新向该用户主机发送认证页面,重复上述认证操作。在本发明中,接入设备本身可以作为认证主体,相比于portal认证的方式,本发明可以节省部署认证服务器的成本。

步骤104、当用户主机通过认证时,转发所述DNS报文至DNS。

当用户通过认证时,可以将该DNS报文转发至DNS,以使用户主机获取外网服务器的IP地址,从而访问外网服务器。

在本发明优选的实施例中,接入设备在冒充DNS向用户主机返回所述DNS报文的应答报文时还可以启动定时器,所述定时器的时长也就是该认证页面IP地址的有效时长,该定时器的时长可以根据一般认证时间来定,一般认证时间为几秒钟。然后接入设备会在向所述用户主机返回所述认证页面之前,进一步判断所述定时器是否超时,如果是,则说明该认证页面的IP地址无效,因此可以拒绝向用户主机返回所述应答报文。为了保护当前网络的安全性,当定时器超时时,接入设备可以断开该认证页面与用户主机的连接,并将该定时器清零。用户主机与认证页面断开连接后,用户主机会重新发送网络访问请求,从而可以重新开始进行接入认证,直至认证成功。从而可以避免用户无限期的反复在认证页面中进行接入认证。

在本发明可选的实施例中,认证失败和认证成功时,接入设备均可以向用户主机推送一个认证结果,结果中还可以包括一些原因及备注信息,因此可以使用户获知认证结果。

为使本发明的目的、技术方案及优点更加清楚明白,下面结合图2对本发明的方案作进一步地详细说明。

图2为典型的局域网宽带用户接入认证的组网示意图,该组网中包括:宽带用户、接入设备、认证服务器、外网路由器、DNS、internet等。其中,接入设备是用于提供宽带接入权限的设备,在用户接入端口开启认证服务,认证通过后对用户授权允许其访问外部网络;认证服务器是用于存储用户认证凭据的数据库,及验证接入的用户身份;路由器用于连接外部IP网络;DNS用于提供域名解析服务,使接入用户能够将网络域名转换为IP地址后发起访问。

宽带用户接入网络时,需要用户在ISP(因特网服务供应商)缴费开通账户,之后ISP可以在认证服务器上添加该用户的认证凭据(一般指用户名和密码)。用户进行接入认证的方法通常包括Portal,802.1x,PPPoE等,接入设备与认证服务器交互验证用户提交的认证凭据,并在验证通过之后接入设备生成对用户的流量下发放行规则,之后用户则可以访问外部网络,包括Internet。

但是为了防止用户在接入认证通过之前,获取外网服务器的IP地址,因此本实施例中,可以在接入设备面向用户端的接口使能接入控制,并下发DNS报文上送规则,此后从该接口进出的所有DNS报文均由接入设备软件逻辑处理,然后设置访问策略,其中该访问策略中可以包括放行,仿冒,丢弃等操作。

当用户主机接入网络后会通过已配置的DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)服务器获取DNS的IP地址;之后用户主机可在浏览器中输入想要访问的网址,例如www.example.com;然后用户主机会发送DNS报文到DNS,其中包括域名www.example.com,以及用户主机的IP地址等信息,以请求DNS反馈该域名对应的IP地址。

接入设备的接入收到该DNS报文后,根据预先下发的上送规则,将该DNS报文上送到接入设备的CPU。接入设备解析该报文获取其中的用户信息,然后在本地记录的已认证用户信息中查找,如果发现存在此用户信息,则说明该用户已经认证通过,然后根据访问策略对该DNS报文执行放行操作,以使DNS报文到达DNS,之后用户会获取到外网网站的IP地址,并发起访问;如果不存在此用户信息,则说明该用户尚未通过认证,则根据访问策略进行丢弃,并仿冒,即将该域名对应的IP指向接入设备上的认证页面的IP地址,例如10.10.0.1,并将该认证页面的域名对应的定时器启动,该定时器有效时间可设为10秒。当用户得到该认证页面的IP地址后,会与该IP地址10.10.0.1建立TCP连接,并向该IP地址发送get请求;接入设备会将认证页面推送给用户;然后用户在认证页面中提交认证凭据。接入设备收到认证凭据后,进一步检验认证凭据是否正确,例如通过接入设备本地配置的认证凭据,或者通过RADIUS等协议与远程的认证服务器进行认证交互。如果验证成功,则接入设备可将该用户的用户信息记录在其本地的已认证的用户信息中,并向用户推送认证成功页面;如果验证失败或是定时器超时,则接入设备会向用户推送认证失败页面,用户在认证失败后会再次发起DNS报文,然后该DNS报文还是会被接入设备重定向到认证页面,直至认证成功。

基于相同的构思,本发明还提供一种报文控制装置,该装置可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,本发明的报文控制装置作为一个逻辑意义上的装置,是通过其所在装置的CPU将存储器中对应的计算机程序指令读取后运行而成。

请参考图3,是本发明一种示例性实施方式中的一种报文控制装置400,所述装置应用于介于用户主机与DNS之间的接入设备,该装置基本运行环境包括CPU,存储器以及其他硬件,从逻辑层面上来看,该装置400的逻辑结构如图4所示,其中包括:

接收单元401,用于接收用户主机向DNS发送的DNS报文;

确定单元402,用于确定用户主机是否已通过认证;

认证单元403,用于当用户主机未通过认证时,对DNS报文进行拦截,将用户的网络访问请求导向到本接入设备的认证页面;

转发单元404,用于当用户主机通过认证时,转发所述DNS报文至DNS。

可选的,所述确定单元402,具体用于判断本地记录的用户信息中是否存在所述DNS报文携带的用户信息;如果是,则确定所述用户主机已通过认证;如果否,则确定所述用户主机未通过认证。

可选的,所述认证单元403,进一步包括:

应答子单元4031,用于缓存所述DNS报文不向DNS服务器转发或丢弃所述DNS报文;构造所述DNS报文的应答报文,所述应答报文用于将用户请求解析的域名重定向到本接入设备的IP地址;

认证子单元4032,用于接收用户主机根据所述DNS应答报文向本接入设备发送的页面请求;向所述用户主机返回认证页面;依据用户主机在认证页面提交的认证凭据对所述用户主机进行认证,当认证成功时,添加所述用户主机的信息至本地记录的已认证的用户信息中。

可选的,所述应答子单元4031,进一步用于启动定时器,所述定时器的时长为所述应答报文中的IP地址的有效时长;向所述用户主机返回所述认证页面之前,判断所述定时器是否超时,如果是,拒绝向用户主机返回所述应答报文。

由此可见,本发明可以使接入设备在接收用户主机向DNS发送的DNS报文时,确定用户主机是否已通过认证,当用户主机未通过认证时,对DNS报文进行拦截,将用户的网络访问请求导向到本接入设备的认证页面;当通过认证时,转发所述DNS报文至DNS。因此本发明可以在用户完成认证之前,阻止外网信息透露给用户,从而提高了网络的安全性。

上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。

对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1