前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >AdGuard Home:搭建去广告DNS | 树莓派

AdGuard Home:搭建去广告DNS | 树莓派

作者头像
uniartisan
发布2022-03-03 09:38:16
6K0
发布2022-03-03 09:38:16
举报
文章被收录于专栏:uu的自留地

AdGuard Home 项目是著名广告拦截器 AdGuard 里 DNS Server 的一个开源版本。该项目的原理是,在 DNS 的域名解析的过程里拦截网页上的广告。

该项目代码与ADGuard DNS核心代码几乎相同,所以您不必考虑效率问题。

DNS:网络世界的指南针

DNS,英文全称「Domain Name Server」,域名系统(服务)协议(DNS)是一种分布式网络目录服务,主要用于域名与 IP 地址的相互转换,以及控制因特网的电子邮件的发送。

构建Adguard HOME AdGuard Home 与 PI-Hole 最大的不同在于:开箱即用。

以X64 Linux为例:

代码语言:javascript
复制
wget https://static.adguard.com/adguardhome/release/AdGuardHome_linux_amd64.tar.gz
tar xvf AdGuardHome_linux_amd64.tar.gz
cd AdGuardHome
sudo chmod u+x AdGuardHome
sudo ./AdGuardHome -s install

树莓派:

代码语言:javascript
复制
wget https://static.adguard.com/adguardhome/release/AdGuardHome_linux_arm.tar.gz
tar xvf AdGuardHome_linux_arm.tar.gz
cd AdGuardHome
sudo chmod u+x AdGuardHome
sudo ./AdGuardHome -s install

猫盘

代码语言:javascript
复制
cd /root/ && wget -N --no-check-certificate https://gitee.com/fkj2005/catdriver-Adguard/raw/master/install.sh && chmod +x install.sh && sh install.sh

Docker | 不建议使用

代码语言:javascript
复制
docker pull adguard/adguardhome
docker run --name adguardhome -v /my/own/workdir:/opt/adguardhome/work -v /my/own/confdir:/opt/adguardhome/conf -p 53:53/tcp -p 53:53/udp -p 67:67/udp -p 68:68/tcp -p 68:68/udp -p 80:80/tcp -p 443:443/tcp -p 853:853/tcp -p 3000:3000/tcp -d adguard/adguardhome

请修改数据库目录为您需要的目录。

请注意: 默认会占用3000、56、63、80等端口,当然您也可以修改。 打开浏览器,输入网址 ; AdGuard Home 网页端,并对 AdGuard Home 进行一些设置。

在「仪表板」上,我们可以看到 DNS 查询次数、被过滤器封锁的网站、查询 DNS 请求的 IP 地址等等信息。

仪表盘

您需要首先设置上游 dns 服务器,建议使用114、腾讯、谷歌、阿里的 ipv4 dns 服务器和 cnnic 的 ipv6 dns,对于用树莓派来建立 dns 的同学请务必禁用 edns。

移动、联通、电信默认的 dns 服务器极有可能返回错误的 IPv6 结果,导致 IPv6 优先的浏览器部分网站无法访问或者访问慢。

移动对于QQ、微信的图像进行了错误的解析: ::1, ipv4也是移动自己的地址。

移动地址
移动地址

为了更强力的拦截广告效果,我们可以做两件事。

第一,勾选「使用 AdGuard 浏览安全网络服务」、「使用 AdGuard 家长监控网络服务」、「强制执行安全搜索」。 第二,建议禁用自带 Adhost 规则导入 adblock 规则,程序兼容了两种规则语法。

开箱即用 DNS

提供教育网 IPv4 DNS 同时可解析 IPv6, 解析域名: edudns.unirtisan.com 获取地址。 暂时未启用 doh、dot

服务器配置分享

DNS配置

代码语言:javascript
复制
223.5.5.5
223.6.6.6
119.29.29.29
182.254.116.116
2400:3200::1
2400:3200:baba::1
240c::6666
240c::6644
tls://223.5.5.5
tls://223.6.6.6
tls://dns.pub
https://doh.pub/dns-query
https://dns.alidns.com/dns-query

去广告配置

代码语言:javascript
复制
https://files.uniartisan.com/anti-ad/filter.txt
https://files.uniartisan.com/anti-ad/anti-ad-easylist.txt

仅供日常使用,切勿恶意攻击服务器,解析地址!

设置设备 dns

路由器

此设置将自动覆盖连接到您的家庭路由器的所有设备,您不需要手动配置它们。

  • 打开您的路由器配置界面。通常情况下,您可以通过浏览器访问地址。打开后您可能需要输入密码以进入配置界面。如果您不记得密码,通常可以通过按下路由器上的重置按钮来重设密码。一些路由器可能需要通过特定的应用来进行这一操作,请确保您已经在计算机或手机上安装了相关应用。
  • 找到路由器的 DHCP/DNS 设置页面。您会在 DNS 这一单词旁边找到两到三行允许输入的输入框,每一行输入框分为四组,每组允许输入一到三个数字。
  • 请在此处输入 DNS 服务器地址。
  • 通过开始菜单或 Windows 搜索功能打开控制面板。
  • 点击进入 ”网络和 Internet“ 后,再次点击进入 “网络和共享中心”
  • 在窗口的左侧找到 ”更改适配器设置“ 并点击进入。
  • 选择您正在连接的网络设备,右击它并选择 ”属性“ 。
  • 在列表中找到 ”Internet 协议版本 4 (TCP/IPv4)“ ,选择并再次点击 ”属性“ 。
  • 选择 ”使用下面的 DNS 服务器地址“ ,并输入您的 DNS 服务器地址。macOS
  • 点击苹果图标,进入 ”系统首选项“。
  • 点击 ”网络“ 。
  • 选择在列表中的第一个连接,并点击 ”高级“ 。
  • 选择 ”DNS“ 选项卡,并输入您的 DNS 服务器地址。Android
  • 在安卓主屏幕菜单中点击设置。
  • 点击菜单上的 ”无线局域网“ 选项。在屏幕上将列出所有可用的网络(蜂窝移动网络不支持修改 DNS )。
  • 长按当前已连接的网络,然后点击 ”修改网络设置“ 。
  • 在某些设备上,您可能需要选中 ”高级“ 复选框以查看进一步的设置。您可能需要调整您安卓设备的 DNS 设置,或是需要将 IP 设置从 DHCP 切换到静态。
  • 将 "DNS 1 / 主 DNS" 和 ”DNS 2 / 副 DNS“ 的值改为您的 DNS 服务器地址。iOS
  • 从主屏幕中点击 ”设置“ 。
  • 从左侧目录中选择 ”无线局域网“(移动数据网络环境下不支持修改 DNS )。
  • 点击当前已连接网络的名称。
  • 在 DNS 字段中输入您的 DNS 服务器地址。
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • DNS:网络世界的指南针
  • 仪表盘
  • 开箱即用 DNS
  • 服务器配置分享
  • 设置设备 dns
    • 路由器
    相关产品与服务
    容器服务
    腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档