在之前的文章中,小维提到过很多关于DNS的问题,包括DNS的概念,DNS异常会导致HTTP网页打不开,DNS劫持会导致电脑访问木马网站和各种广告弹窗等等。

其实,通俗一点来讲,DNS就是我们平时上网时输入的网址,按照通信的专业说法来说就是域名。单个域名我们都知道是用来访问网站的,但是当有多个域名组成一个域名组的时候,其作用是非常大的,最常见的就是利用DNS策略组限制用户访问一些特定的网站和利用DNS策略组实现策略路由,这两个用处就是我们今天要说到的DNS策略组的妙用。

妙用一

利用DNS策略组限制某些特定HTTPS网站的访问

首先了解一下什么是HTTPS协议,其实HTTPS协议就是HTTP协议的升级版。HTTP协议网站无法阻止黑客抓取购物、浏览、搜索等记录和信息,是不安全的。而HTTPS是HTTP的加密版本,启用HTTPS可以将用户与服务器之间传输的数据进行加密,即使被黑客拦截也是密文,大大提高传输数据的安全。

采用HTTPS加密的网页,访问数据被加密,能更好地保护用户隐私,其主要作用就是实现加密传输保护用户隐私和认证服务器真实身份。但是,HTTPS需要部署SSL证书,这就意味着,如果使用的路由器没有部署SSL证书,如果想要通过HTTPS协议来限制某些HTTPS网站的访问是做不到的。在没有部署证书的情况下,是无法通过HTTPS协议限制访问特定网站的,但是别担心,我们还有DNS策略组。

图1 创建自定义DNS组

路由器如何防止https被劫持(限制https网站实现策略路由)(1)

图2 将需要限制的HTTPS网站添加到该DNS组中

2、进入防御配置-访问控制,在这里配置一条访问规则,访问控制方式配置为“允许规则之外的通过”,控制方式为“阻止”,选择自定义IP协议--基于域名,把刚刚创建的DNS组添加到这里,点击完成--提交。

路由器如何防止https被劫持(限制https网站实现策略路由)(2)

图3 配置基于域名的访问控制规则

到这里就完成了利用DNS组来限制某些特定HTTPS网站访问的配置。然后在浏览器中打开DNS组中配置了阻止的网站,可以发现访问被阻止了,配置已经生效。这样做的原理是强制阻止DNS策略组中的域名进行DNS解析,通过阻止其解析来达到限制访问的目的,而不是通过限制HTTPS协议来进行访问控制的,两种方式控制的原理不同,这点需要特别注意。

路由器如何防止https被劫持(限制https网站实现策略路由)(3)

图4 访问DNS策略组中的网站(新浪)失败,访问控制规则生效

妙用二

利用DNS策略组实现策略路由

略路由是一种基于目标网络进行更加灵活的数据包转发机制,通俗点来说,就是在多线路的情况下,游戏走一条线路,网页走另一条线路,两者互不干扰。

策略路由在中国最大的应用莫过于用于电信网通的互联互通的问题了,电信网通分家之后出现了中国特色的网络环境,就是南电信,北网通,电信的访问网通的线路较慢,网通访问电信的也较慢,而策略路由完美地解决了这个问题。

利用DNS策略组实现策略路由的实现方式跟利用DNS策略组限制某些特定HTTPS网站的访问是类似的,也是先在DNS策略中创建自定义的DNS组,点击“查看成员”把需要做策略路由的网站域名添加到自定义的DNS组中。

然后进入高级配置--策略路由,在这里添加一条规则,状态选择“开启”,填写描述,点击自定义IP协议--基于域名,选择对应的DNS策略组,点击完成,然后选择对应的广域网出口后点击添加,到这里利用DNS策略组实现策略路由的配置就完成了。

配置之后,DNS策略组中的网站就会按照策略路由规则中指定的广域网线路出去,相对于利用用户组来实现策略路由的方式来说,利用DNS组实现策略路由的方式更加灵活,利用用户组的方式是将某个IP或IP段的用户全部使用特定的广域网出口出去,而没有做到像利用DNS组那样详细和具体。

路由器如何防止https被劫持(限制https网站实现策略路由)(4)

图5 配置基于域名的策略路由

访问一下DNS组中的网站,然后查看策略路由的状态日志,可以发现配置已经生效,策略路由配置成功:

路由器如何防止https被劫持(限制https网站实现策略路由)(5)

图6 策略路由日志

其实,DNS策略组可以做的控制还很多,比如说带宽限制、带宽保证等智能流控策略,是一个非常方便和实用的功能,配置起来也非常简单,总结起来也就三个步骤而已:

第一步

创建DNS策略组;

第一步

在DNS组中添加网址;

第一步

在智能流控、访问控制和策略路由中配置基于域名的相关控制规则。

简单三步操作,就可以实现具体到网站的控制策略,是不是very方便呢?^_^

路由器如何防止https被劫持(限制https网站实现策略路由)(6)

,