在本文中,我们将向您展示如何在您的 MikroTik 设备上快速设置广告拦截器。此功能在 RouterOS 上可用,甚至在我们的 CHR 计划中也可使用。
RouterOS 的 Adlist 功能可用于阻止整个网络上的广告。它是基于 DNS 的广告拦截器,类似于 Pi-hole。它适用于所有运行 RouterOS 7.15 及更高版本的 MikroTik 设备。
Adlists 比 MikroTik 路由器中基于 Docker 托管的广告拦截器更好的原因:
- 设置快速,只需添加阻止列表即可开始使用
- 无需在路由器上启用容器化
- 无需创建额外的路由来访问广告拦截设置
- 无需更改 MikroTik 路由器上的默认 DNS 服务器,它已集成在其中
- 它适用于所有 MikroTik 路由器,即使是运行 RouterOS v7 的旧路由器
为 Adlists 准备路由器
首先,我们需要确保我们的 CHR 正在运行最新的 RouterOS v7 版本。如果不是,我们可以通过进入 “系统”>“软件包”>“检查更新” 来更新它,并下载最新版本的 RouterOS。
如果您仍在使用 RouterOS v6,可以按照本教程进行升级。
更新完成后,我们需要增大 DNS 缓存。Adlists 使用部分 DNS 缓存来存储我们需要阻止的所有域名。我们将从进入 “IP”>“DNS” 开始。
增大 DNS 缓存
之后,为了增大我们的 DNS 缓存,更改 “缓存大小” 值。此值取决于广告列表的大小和数量,以及路由器上的可用内存。如果您计划在具有 128MB 内存且不运行许多服务的路由器上使用 1 – 2 个广告列表,可以将缓存设置为 30MB,或者如我们的示例中设置为约 40MB。之后点击 “应用”。
/ip/dns set cache-size=40000
添加 Adlists
脚本添加
/ip/dns/adlist add url=https://raw.githubusercontent.com/guodongdonga/anti-ad-for-ros/main/anti-ad-for-ros.conf ssl-verify=no
手动Winbox操作
添加 Adlists 很简单。转到 “ip – DNS -Adlists” 并点击 “+”。您可以通过 URL 导入您喜欢的列表,或者通过文件导入您自己的阻止域名列表。我们将首先通过 URL 添加 hosts 列表。粘贴 URL 并确保禁用 SSL 验证。点击 “确定” 添加它。
https://raw.githubusercontent.com/guodongdonga/anti-ad-for-ros/main/anti-ad-for-ros.conf
*SSL 验证是一种可选的额外安全措施。为此,您需要导入证书的 CA 公钥。如果没有它并且启用了 SSL 验证,导入将失败。
您会看到,随着 DNS 缓存使用量的增加以及列表旁边的名称数量的增加,列表已成功导入
创建和编辑自定义列表
我们还可以通过从 PC编辑TXT 上传来添加自己的列表。示例广告列表应如下所示。
0.0.0.0 a.com
0.0.0.0 b.com
0.0.0.0 c.da.com
将上面这种格式的txt文件上传到file,之后,我们可以通过进入 “IP”>“DNS”>“Adlist” 并点击 “+” 来应用自定义列表。也可通过tool-fetch将规则列表文件下载到本地files,然后,点击文件旁边的箭头并选择您的自定义列表,而不是 URL。点击 “确定” 应用它。
完成设置
就是这样。您的路由器现在可以为整个网络阻止广告。确保网络中的所有设备都将路由器的 IP 地址用作 DNS 服务器。