注1:技术内容由 Alick 同学原创友情贡献,本文只做转述和记录。
注2:以下内容在 ASUS RT-AC86U 路由器上测试有效。

KoolShare 梅林固件软件中心中科技插件默认禁用了自定义 DNS,因为开发者发现,很多用户在路由器里自定义了 DNS,而这些 DNS 设置本身可能是被污染的。所以插件脚本强制清空了路由器设置里的 DNS 设置。

也就是说,在梅林固件 -> LAN -> DHCP 里,下图中的 DNS 设置,在科技插件启用的时候是无效的,而且会被强制清空。

Screen Shot 2020-03-10 at 6.00.28 P

与此同时,如果你同时使用 ADGuard 类似的自定义 DNS 服务器,会出现冲突,导致路由器会忽略所有的自定义 DNS 服务器地址。

解决办法如下:

1、在路由器中开启 SSH:

系统管理 -> 系统设置 -> 服务 -> 启用SSH。
因为安全原因,设置为 LAN Only 即可。
Screen Shot 2020-03-10 at 6.03.42 P

2、连接到路由器:

使用路由器的用户名和密码(登录路由管理界面相同),通过 SSH 登录到命令行终端。

3、安装好科技插件,修改以下文件:

/jffs/.koolshare/ss/ssconfig.sh

找到以下内容:

1
2
3
4
5
# 检测是否在lan设置中是否自定义过dns,如果有给干掉
if [ -n "$(nvram get dhcp_dns1_x)" ]; then
nvram unset dhcp_dns1_x
if [ -n "$(nvram get dhcp_dns2_x)" ]; then
nvram unset dhcp_dns2_x

在每一行上都加上 # 注释掉。

4、重启路由器。

5、重新修改自定义 DNS。

请注意,一定要确保你指向的 DNS 服务器地址是安全可靠的。