一种dns报文的处理方法、装置及系统的制作方法

文档序号:9791805阅读:465来源:国知局
一种dns报文的处理方法、装置及系统的制作方法
【技术领域】
[0001]本发明涉及网络通信技术,具体地,涉及一种DNS报文的处理方法、装置及系统。
【背景技术】
[0002]Web认证是一种基于网页的认证,未认证用户在浏览器地址栏输入任意URL(Uniform Resource Locator,统一资源定位符),其HTTP(Hypertext Transfer Protocol,超文本传输协议)报文都会被接入设备截获。接入设备伪装成用户期望访问的站点,与用户建立TCP(Transmiss1n Control Protocol,传输控制协议)连接后,将预先设定好的认证页面推送给用户,以达到用户在线认证,且不用安装认证客户端的目的。如图1所示,完整的Web认证过程包括如下步骤:
[0003]S1、用户的PC启动后,通过DHCP(Dynamic Host Configurat1n Protocol,动态主机配置协议)协议自动获取IP地址;或者根据操作系统网卡中设定的IP地址进行以太网通讯;
[0004]S2、用户在未认证PC浏览器的地址栏输入任意URL,访问Web服务器;浏览器通过向DNS服务器查询,获得该URL所在网站的IP地址。而后,浏览器向该地址发起连接请求,建立至IjWeb服务器的连接;
[0005]S3、接入设备截获报文,伪装成Web服务器,与未认证PC建立TCP连接;
[0006]S4、PC 发出 HTTP 的 get 请求;
[0007]S5、接入设备回应该请求,告诉PC重定向地址为页面推送Eportal服务器地址;
[0008]S6、PC根据该地址,与Eportal服务器建立连接,并请求认证页面;
[0009]S7、Eportal服务器返回认证页面;
[0010]S8、PC通过认证页面,提交用户名密码,到RADIUS(远程接入拨入用户服务)服务器认证;
[0011]S9、RADIUS返回或失败或成功消息,由Eportal推送认证失败或成功的页面;如果返回失败消息,则用户访问Web服务器失败,将重复步骤S2-S9;
[0012]S10、如果返回成功,用户通过浏览器访问Web服务器,可以正常访问,不会被重定向到认证页面;
[0013]从上述认证过程可以看到,接入设备在用户Web认证成功之前,需要能放行DHCP和DNS报文。放行DHCP报文,以确保PC能够动态获取到IP地址;放行DNS报文,以确保能获取到用户访问URL对应的IP地址。接入设备是通过识别UDP报文的目标端口号(DNS的UDP目标端口号为53,DHCP的目标端口号为67),来识别DNS和DHCP报文的。
[0014]这样会出现一个问题:通过架设一台DNS代理服务器,另一用户的PC上运行DNS代理软件,将对外发送的数据报文都封装在DNS报文中(还是UDP目标端口号为53的报文,只是其中的内容修改为自定义的内容)发送给DNS代理服务器。由于接入设备会放行DNS报文,所以报文会被转发给DNS代理服务器,而后由DNS代理服务器解封装报文后,根据报文的目的地址发送给实际的地址,反之亦然。通过这种方法可以逃避Web认证,从而实现免认证上网,逃避监管。现有技术是通过配置DNS服务器白名单的方式,即在接入设备的上联口上应用访问控制列表ACL,只有指定的DNS服务器的DNS报文通过,到未指定的DNS服务器的报文无法通过。这个方式存在两个比较严重的问题:
[0015](I)有的用户通过DNS代理服务器上网是为了网络加速,这种方式会导致用户购买的网络加速服务完全无法使用。应用这种方案后,即使认证通过后,到DNS代理服务器的报文也无法通过,用户的合法权益无法保证。
[0016](2)操作易用性方式存在问题。DNS服务器变更后,需要调整所有接入交换机上的DNS白名单的配置,管理上非常麻烦。

【发明内容】

[0017]有鉴于此,本发明实施例提供了一种DNS报文的处理方法、装置及系统,用以解决现有的在Web认证场景下,未认证用户通过伪装为DNS报文而逃避认证的问题。
[0018]本发明实施例技术方案如下:
[0019]—种DNS报文的处理方法,包括:
[0020]获取合法的域名DNS服务器地址;
[0021]接收未认证用户发送的DNS报文;当所述DNS报文中的用户IP地址不在预先配置的DNS放行地址表中时,根据所述DNS服务器地址将所述DNS报文发送到DNS服务器,以便于所述DNS服务器确定该DNS报文是否为伪造DNS报文。
[0022]一种DNS报文的处理装置,包括:
[0023]地址获取模块,用于获取合法的DNS服务器地址;
[0024]报文接收模块,用于接收未认证用户发送的DNS报文;
[0025]判断模块,用于判断所述DNS报文中的用户IP地址是否在DNS放行地址表中;
[0026]报文发送模块,用于当所述DNS报文中的用户IP地址不在预先配置的DNS放行地址表中时,根据所述DNS服务器地址将所述DNS报文发送到DNS服务器,以便于所述DNS服务器确定该DNS报文是否为伪造DNS报文。
[0027]一种DNS报文的处理系统,包括:
[0028]接入设备,用于获取合法的DNS服务器地址;接收未认证用户发送的DNS报文;当所述DNS报文中的用户IP地址不在预先配置的DNS放行地址表中时,根据所述DNS服务器地址将所述DNS报文发送到DNS服务器;
[0029]所述DNS服务器,用于确定该DNS报文是否为伪造DNS报文。
[0030]本发明实施例通过获取合法的DNS服务器地址;接收未认证用户发送的DNS报文;当所述DNS报文中的用户IP地址不在DNS放行地址表中时,根据所述DNS服务器地址将所述DNS报文发送到DNS服务器,以便于所述DNS服务器确定该DNS报文为伪造DNS报文。解决在Web认证场景下,未认证用户通过伪装为DNS报文而逃避认证的问题。
[0031]本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
【附图说明】
[0032]图1为现有技术中web认证方法流程图;
[0033]图2为本发明一实施例的方法流程图;
[0034]图3为本发明一实施例的方法流程图;
[0035]图4为本发明一实施例的装置结构框图;
[0036]图5为本发明一实施例的装置结构框图;
[0037]图6为本发明一实施例的系统结构框图。
【具体实施方式】
[0038]以下结合附图对本发明的实施例进行说明,应当理解,此处所描述的实施例仅用于说明和解释本发明,并不用于限定本发明。
[0039]针对现有的的问题,本发明实施例提供了一种DNS报文的处理方法以解决该问题。
[0040]如图2所示,在本发明实施例中,提出一种DNS报文的处理方法,包括以下步骤,
[0041 ] SlOl,获取合法的DNS服务器地址;
[0042]S103,接收未认证用户发送的DNS报文;
[0043]S105,当所述DNS报文中的用户IP地址不在预先配置的DNS放行地址表中时,根据所述DNS服务器地址将所述DNS报文发送到DNS服务器,以便于所述DNS服务器确定该DNS报文是否为伪造DNS报文。
[0044]该实施例解决在Web认证场景下,未认证用户通过伪装为DNS报文而逃避认证的问题。
[0045]可选的,步骤SlOl具体包括:
[0046]检测DHCP服务器反馈的DHCP OFFER报文中DNS的信息,获取合法的DNS服务器地址。该合法的DNS服务器地址预先配置在DHCP服务器上。
[0047]可选的,如图3所示,该实施例中还包括:
[0048]步骤S107,接收用户的Web认证请求,当用户认证通过时,将该用户的IP地址加入所述DNS放行地址表中。
[0049]可选的,步骤S105具体包括:
[0050]当所述DNS报文中的用户IP地址不在预先配置的DNS放行地址表中时,根据所述DNS服务器地址将所述DNS报文发送到DNS服务器,以便于所述DNS服务器在判断所述DNS报文中存在用户自定义内容时确定该DNS报文是否为伪造DNS报文。
[0051]可选的,步骤S107后还包括,接收认证通过的用户发送的DNS报文,检查该用户的IP在DNS放行地址表中时,放行DNS报文。这样用户通过DNS代理服务器可以进行网络的加速。当认证用户下线后,将用户的IP从DNS放行地址表中删除。
[0052]本发明还提出另一实施例,如图4所示,提供了一种DNS报文的处理装置,包括:
[0053]地址获取模块201,用于获取合法的DNS服务器地址;
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1