在本地安装adguard home拦截广告,有arm64位版本,大部分手机安装termux之后,是可以直接跑的。由于linux系统限制,监听1024以下端口需要root权限,dns一般为53端口,所以需要手机获取root权限。虽然可以监听其他端口,但是手机没有root也不能用。
1、安装https://github.com/AdguardTeam/AdGuardHome/wiki/Getting-Started#installation
wget https://static.adguard.com/adguardhome/release/AdGuardHome_linux_arm64.tar.gz # 下载 tar -zxvf AdGuardHome_linux_arm64.tar.gz #解压 cd AdGuardHome # 进入解压后的目录 ls #查看文件列表,你就可以看到AdGuardHome sudo ./AdGuardHome # 运行 # 先安装sudo apt install tsu #如果觉得比较麻烦每一次都要cd到目录,可以复制到软件安装目录 cp AdGuardHome /data/data/com.termux/files/usr/bin/ #每一次运行只要 sudo AdGuardHome
问Do you want to start AdGuard Home as root user,选y就行了
2、设置后台运行,方法很多:
nohup AdGuardHome & setsid AdGuardHome & screen -dmS AdGuardHome AdGuardHome # 这种方法比较推荐,如果screen没有安装,先安装一下 apt install screen screen -r AdGuardHome # 恢复窗口,即可查看软件运行状况。按ctrl +a +d即可后台运行
3、开机自启,可以配合termux:boot插件,放在后台跑,就不用每一次开机都启动一次termux。
termux各大插件使用方法:https://zsxwz.com/2019/06/22/termux%e5%87%a0%e4%b8%aa%e6%8f%92%e4%bb%b6%e4%bd%bf%e7%94%a8/
安装boot插件之后,在/data/data/com.termux/files/home/.termux/boot,文件夹随便新建一个sh脚本就可以了。
mkdir -p .termux/boot # 创建文件夹 nano .termux/boot/ad.sh # 如果没有安装nano编辑器,先安装一下,apt install nano #添加以下内容: #!/data/data/com.termux/files/usr/bin/bash nohup AdGuardHome & setsid AdGuardHome & screen -dmS AdGuardHome AdGuardHome #三种后台运行方法,三选一,留一个即可。
4、手机设置dns,可以先设置一下静态IP,长按已经连接的网络,修改网络,设置静态ip。dns可以顺手修改成127.0.0.1。
如果有使用v2等等软件,启用本地dns,并设置为127.0.0.1。
5、配置,AdGuardHome默认运行端口3000,运行以后浏览器打开http://127.0.0.1:3000,即可设置,用户名,监听规则等等。之后浏览器打开127.0.0.1即可,或者之前设置的静态ip地址。同一个局域网内的设备,也可以设置这个静态ip地址为dns服务器。
之后就可以设置dns服务器,dns规则,拦截网站,屏蔽ipv6等等。
简单的测试了一下,拦截效果还算可以。