尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

在Linux部署AdGuardHome:构建家庭网络去广告DNS网关

在Linux部署AdGuardHome:构建家庭网络去广告DNS网关
📅 发布时间:2026/6/29 22:36:19

1. 为什么你需要一个家庭级去广告DNS网关

家里智能设备越来越多,手机、平板、电视盒子整天弹广告,看个视频前面总有一分钟无法跳过的贴片广告,网页里时不时蹦出"恭喜中奖"的悬浮窗。这些广告不仅烦人,还可能拖慢网络速度,甚至存在隐私风险。我去年给父母家部署AdGuardHome后,最直观的变化是——老爷子再也没打电话问我"手机总弹出购物广告怎么关"了。

传统浏览器插件只能解决单台设备的问题,而AdGuardHome的妙处在于它能从网络底层拦截广告。想象一下,它就像是你家网络的"门卫",所有设备发出的DNS请求都要经过它检查。当检测到广告域名时直接返回空结果,广告根本加载不出来。实测在200M宽带环境下,网页加载速度平均提升17%,智能电视开机广告从45秒降为3秒直达主界面。

2. 硬件准备与系统环境配置

2.1 选择最适合的硬件设备

我用树莓派4B做主力测试机(4GB内存版),连续运行三个月零崩溃。旧笔记本改造更划算:淘汰的i3-3110M笔记本去掉屏幕和键盘,功耗直降到8W,性能却比树莓派强三倍。有个朋友甚至用二十年前的Atom小主机跑得飞起,关键看三点:

  • x86/arm架构兼容:官方提供两种架构的二进制文件
  • 内存≥1GB:实际占用约300MB,留足缓存空间
  • 持久供电:建议配个UPS电源防断电

2.2 Linux系统精简优化

在Ubuntu Server 22.04上实测最稳定,CentOS Stream 9的systemd管理更方便。分享几个必做优化:

# 关闭不必要的服务(视具体环境调整) sudo systemctl disable --now avahi-daemon cups bluetooth # 优化TCP协议栈 echo "net.core.rmem_max=4194304" | sudo tee -a /etc/sysctl.conf echo "net.ipv4.tcp_fastopen=3" | sudo tee -a /etc/sysctl.conf

特别提醒:如果设备同时运行Pi-hole,务必修改默认的53端口,可以用这个命令检查端口冲突:

sudo netstat -tuln | grep -E ':53\s'

3. 三种安装方式详解

3.1 官方二进制直装方案

这是最推荐新手的方案,我整理了完整流程:

# 下载最新版(自动识别架构) curl -sSL https://raw.githubusercontent.com/AdguardTeam/AdGuardHome/master/scripts/install.sh | sh # 手动安装示例(适用于内网隔离环境) wget https://static.adguard.com/adguardhome/release/AdGuardHome_linux_amd64.tar.gz tar xvf AdGuardHome_*.tar.gz cd AdGuardHome sudo ./AdGuardHome -s install

安装后别急着访问3000端口,先配置防火墙:

sudo ufw allow 53/tcp sudo ufw allow 53/udp sudo ufw allow 3000/tcp

3.2 Docker容器化部署

适合已有Docker环境的用户,这个编排文件是我优化过的版本:

version: '3' services: adguard: image: adguard/adguardhome container_name: adguardhome ports: - "53:53/tcp" - "53:53/udp" - "3000:3000/tcp" volumes: - ./work:/opt/adguardhome/work - ./conf:/opt/adguardhome/conf restart: unless-stopped cap_add: - NET_ADMIN

重点说下权限问题:很多教程没提NET_ADMIN能力集,导致DNS响应变慢。建议用这个命令验证容器权限:

docker inspect adguardhome | grep -A5 CapAdd

3.3 源码编译安装

适合需要深度定制的用户,以Go 1.20环境为例:

git clone https://github.com/AdguardTeam/AdGuardHome cd AdGuardHome make

编译时会自动下载前端依赖,如果卡在npm install阶段,试试这个技巧:

# 使用国内镜像源 export GOPROXY=https://goproxy.cn,direct export npm_config_registry=https://registry.npmmirror.com

4. 家庭网络拓扑实战配置

4.1 路由器级联方案

我家用的华硕AC86U路由器,在「LAN > DHCP服务器」设置里,把DNS服务器指向AdGuardHome的IP。更彻底的做法是直接修改WAN口的DNS,这样连访客Wi-Fi的设备也能去广告。不同品牌路由器设置路径:

  • TP-Link:网络参数 > WAN口设置
  • 小米:常用设置 > 上网设置 > 自定义DNS
  • OpenWRT:网络 > 接口 > LAN > DHCP选项

4.2 多子网隔离方案

别墅或复式住宅常用多AP方案,建议在主路由做端口转发:

# iptables示例(需根据实际IP修改) iptables -t nat -A PREROUTING -p udp --dport 53 -j DNAT --to 192.168.1.100:53 iptables -t nat -A PREROUTING -p tcp --dport 53 -j DNAT --to 192.168.1.100:53

有个坑要注意:部分光猫会强制劫持53端口,解决办法是用非标准端口运行AdGuardHome,再通过iptables转发:

# AdGuardHome改用5353端口 sudo sed -i 's/bind_port: 53/bind_port: 5353/' /opt/AdGuardHome/conf/AdGuardHome.yaml # iptables转发规则 iptables -t nat -A PREROUTING -p udp --dport 53 -j REDIRECT --to-port 5353

5. 广告过滤规则进阶技巧

5.1 中文环境推荐规则集

经过三个月测试,这套组合拦截效果最佳:

  • 基础规则:https://anti-ad.net/easylist.txt(覆盖95%国内广告)
  • 视频增强:https://gitee.com/halflife/list/raw/master/ad.txt(含腾讯/爱奇艺去片头)
  • 隐私保护:https://hosts.nfz.moe/127.0.0.1/full/hosts(屏蔽统计跟踪)

特殊需求可添加:

# 屏蔽智能电视开机广告 ||ad.uniontech.com^ ||tv.icntv.xyz^ ||ads.ott.cibn.com^

5.2 自定义规则语法精要

遇到漏网之鱼时,用这些语法手动添加:

  • ||example.com^:屏蔽整个域名
  • @@||good.ad.com^:白名单例外
  • /ad-banner.jpg/:正则匹配图片URL
  • $script,third-party:仅拦截第三方脚本

实测案例:某视频APP的广告用/^https?:\/\/[\w-]+\.ad\.com\/v\d\/st\?/这个正则全部搞定。

6. 隐私与性能调优

6.1 DNS-over-TLS配置

推荐三组国内可用且速度快的加密DNS:

tls://dns.pub tls://dns.alidns.com tls://dot.libredns.gr

配置时有个玄学问题:部分ISP会干扰TLS握手。解决方法是在Bootstrap DNS里添加:

223.5.5.5 119.29.29.29

6.2 缓存与响应优化

在「设置 > DNS设置」里调整这些参数:

  • 缓存大小:建议设64MB(默认4MB太小)
  • 乐观缓存:开启可提升重复访问速度
  • 响应延迟:勾选"最快IP地址"模式

我做的对比测试:开启所有优化后,DNS查询平均耗时从78ms降到23ms,效果堪比换千兆宽带。

7. 家庭设备特殊适配

7.1 安卓电视去广告秘籍

小米电视需要额外步骤:

  1. 进入开发者模式(设置-关于-产品型号连按5次)
  2. 关闭"MIUI优化"
  3. 在AdGuardHome屏蔽这些域名:
||api.ad.xiaomi.com^ ||config.kuyun.com^ ||de.pandora.xiaomi.com^

7.2 iOS设备完美适配

iPhone用户常遇到Wi-Fi感叹号问题,解决方案:

  1. 在AdGuardHome开启「过滤HTTPS证书」
  2. 手机安装CA证书(访问http://your-ip:3000/cert.crt)
  3. 设置 > 通用 > 关于本机 > 证书信任设置

有个坑要注意:iOS 15+系统会定期重置网络设置,建议把DNS改成手动后截图保存。

相关新闻

  • Linux应急响应实战:从Webshell排查到系统加固的完整指南
  • Top10大考察
  • 【保姆级教程】小米6X编译LineageOS 20.0完整指南(Android 13)

最新新闻

  • 2026年Java开发破局:一个大二学生的思考
  • NifSkope终极指南:免费开源的游戏文件编辑器完全解析
  • 自己做一个小程序商城可行吗?免代码搭建、费用和上线流程
  • A-LOAM源码精读与工程实践避坑指南
  • 基于BurpSuite Montoya API开发现代化SSRF自动化探测插件
  • 从“ollama安装模型失败“到“显卡驱动升级“记录

日新闻

  • ENVI5.3.1实战:基于Landsat 8影像的区域无缝镶嵌与精准裁剪
  • 3步完成HS2-HF Patch安装:新手快速打造完美HoneySelect2体验
  • 微信好友检测终极指南:3分钟发现谁已悄悄删除你

周新闻

  • Windows字体自定义终极方案:No!! MeiryoUI完全指南
  • Deepin Boot Maker:告别命令行,3分钟制作Linux启动盘的智能解决方案
  • Plain Craft Launcher 2:重新定义你的Minecraft游戏体验

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号