通过飞牛安装 AdGuard Home 搭建 DNS 服务器

[up主专用,视频内嵌代码贴在这]

通过飞牛安装 AdGuard Home 搭建 DNS 服务器,并屏蔽学生访问特定网站

参考视频:
https://www.bilibili.com/video/BV16MqZBXEkf/


第一步:创建所需文件夹

在文件管理中新建一个文件夹 adguardhome,并在其中创建两个子文件夹 workconf,如下图所示:
Pasted image 20260106023252


第二步:通过 Docker 部署 AdGuard Home

  1. 打开 Docker 应用,点击“Compose”;
  2. 新建项目,填写项目名称;
  3. 点击“创建 Docker-compose.yml”,路径选择第一步中创建的 adguardhome 文件夹;
  4. 在编辑区粘贴以下配置,注意将 workconf 的路径替换为您的实际路径(可在文件管理中查看文件夹详细信息→位置):
1
2
3
4
5
6
7
8
9
services:
adguardhome:
image: adguard/adguardhome:latest
container_name: adguardhome
restart: always
network_mode: host
volumes:
- /vol1/1000/docker/adguardhome/work:/opt/adguardhome/work
- /vol1/1000/docker/adguardhome/conf:/opt/adguardhome/conf

Pasted image 20260106024127

  1. 勾选“创建项目后立即启动”,点击“确定”,等待容器启动完成。
    Pasted image 20260106024541

第三步:初始化 AdGuard Home 设置

  1. 在浏览器中输入飞牛系统的 IP 地址,并将端口改为 3000,访问 AdGuard Home 管理界面;
  2. 按图示进行配置:
    • 监听接口:选择飞牛系统的 IP 地址;
    • 端口:将默认的 80 端口改为其他端口(例如 888);
    • 管理界面地址:同样设置为飞牛系统的 IP。
  3. 设置用户名和密码,后续步骤按提示完成即可。
  4. 完成后,通过 http://飞牛IP:888 登录管理页面。

Pasted image 20260106025409
Pasted image 20260106025602


第四步:配置 DNS 解析

  1. 进入管理页面的“设置”→“常规设置”;
  2. 切换到“DNS 设置”,添加 DNS 上游服务器(例如 223.5.5.58.8.8.8 等);
  3. 下方选择“并行请求”模式;
  4. 点击“测试上游 DNS”,确认连通后保存设置。

Pasted image 20260106030024
Pasted image 20260106030455


第五步:启用过滤列表(可选)

在“过滤器”→“DNS 黑名单”中可添加现成的屏蔽列表,若未能生效可跳过此步。
Pasted image 20260106030805


第六步:自定义过滤规则

在“过滤器”→“自定义过滤规则”中,可手动添加需要屏蔽的网站域名,每条规则单独一行。
Pasted image 20260106031030


第七步:让学生设备使用该 DNS 服务器

有两种部署方式:

  1. 全局生效(推荐)
    在路由器中设置 DHCP 分配的 DNS 服务器为飞牛系统的 IP,这样所有自动获取 IP 的设备都会默认使用该 DNS。

  2. 针对特定设备生效
    在学生电脑的 IP 设置中,将 DNS 服务器手动指向飞牛系统的 IP,可逐台设置或通过脚本批量部署。


完成以上步骤后,AdGuard Home 即可作为 DNS 服务器运行,并根据设置的规则屏蔽指定网站。

如果需要进一步调整过滤策略或查看拦截记录,可随时登录 AdGuard Home 管理界面进行操作。