# 利用tasker实现自动更新 Hosts和DNS方式屏蔽广告高级教程
这篇文章让你一劳永逸,永久自动更新Hosts,完全无需手动。同时介绍无需后台运行的DNS屏蔽广告方式。
实测去除了腾讯、爱奇艺、搜狐、优酷的片头广告,各种网页内嵌广告也没问题。
—
## 准备工作
### 1. 安装一键Go Hosts new
打开Go Hosts,点击小三角,切换指定源——网络
### 2. 添加Hosts源
点击”+添加Hosts”,依次添加以下源:
– http://adblock.mahakala.is/
– https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts
– https://hosts.nfz.moe/basic/hosts
– https://raw.githubusercontent.com/vokins/yhosts/master/hosts
– https://adaway.org/hosts.txt
– https://pgl.yoyo.org/adservers/serverlist.php?hostformat=hosts&showintro=0&mimetype=plaintext
保存确定。
### 3. 安装tasker
Tasker能完成大量自动化任务,本身耗电不多。
—
## Tasker配置步骤
### 4. 创建任务
打开tasker,点击”新建任务”,输入任务名”屏蔽广告”
进入任务编辑界面,点击右下角加号:
– 代码 → 运行外壳
– 输入以下命令,勾选使用ROOT
“`bash
am start -a com.lerist.gohosts.shortcuts.hosts.update -c android.intent.category.DEFAULT -n com.lerist.go_hosts/com.lerist.gohosts.ui.activity.ShortcutsActivity && iptables -t nat -I OUTPUT -p tcp –dport 53 -j DNAT –to-destination 176.103.130.130:53 && iptables -t nat -I OUTPUT -p udp –dport 53 -j DNAT –to-destination 176.103.130.130:53
“`
点击左上角返回,自动保存。
### 5. 绑定开机事件
打开tasker,点击”配置文件”:
– 右下角加号 → 事件 → 系统 → 设备启动
– 点击左上角返回,自动保存
– 弹出选择对应任务,选择”屏蔽广告”
完成设置。
### 6. 测试
重启手机,检查是否出现正在更新hosts的窗口。
—
## 说明
### 命令含义
执行GoHost的更新命令且将DNS设置为176.103.130.130(Adguard提供)
连起来就是:**当系统启动后,更新hosts且更改DNS**
### 意义
1. **每次开机自动执行**,无需手动操作,对于经常重启的人很方便
2. **不占时间**,不影响其他软件使用
3. **刷机后也能自动更新**(刷机后hosts文件会被覆盖)
4. **即时生效**,无需重启(Adaway需要重启才生效)
5. **连带更新DNS**,防止运营商劫持,也屏蔽了部分广告
### 其他设置方式
如果你不是经常重启的人,可以利用tasker设置每天固定时间更新,比如每天夜里4点执行任务。
—
**核心优势:**
– 无需后台挂软件,不耗电
– 自动化执行,一劳永逸
– Hosts + DNS双重屏蔽,效果更好
—
铁三角团队 · 峰哥 | write | tech
共同成长 💪
—

峰网博客

