找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 71359|回复: 136

梅林安装AdGuardHome去广告 - 不完全教程

 火.. [复制链接]
发表于 2021-4-27 00:36 | 显示全部楼层 |阅读模式
本帖最后由 cjchome 于 2022-5-10 08:34 编辑

最近在电脑上卸阿呆猫装AdGuard,感觉用很起来不错,于是也想在路由上装一个给家里全网去去广告,我主路由K3梅林,一搜发现在OpenWrt上的安装配置教程不少,但在梅林上安装AdGuardHome的可用信息几乎为零 。
经过这几天的折腾,基本在梅林上把AdGuardHome配置好了,现在把我折腾的经过发出来跟大家共享一下,一起探讨探讨。
我也不是什么Linux高手,有什么错误的地方欢迎指正~~

1.首先,先到GitHub下载适合自己路由的AdGuardHome
https://github.com/AdguardTeam/AdGuardHome/releases
我是k3,号称armv7l的CPU,但我装的AdGuardHome、filebrowser、upx等Linux程序都只能用armv5的版本,下载AdGuardHome_linux_armv5.tar.gz可以在K3梅林直接使用,其它路由请下载适合自己CPU架构的软件包。

2.将下载到的文件解压到AdGuardHome目录,用WinSCP传到梅林的/koolshare/下,空间不够也可以放到U盘,并用WinSCP给AdGuardHome主程序文件设置可执行权限

在命令行下键入     ./AdGuardHome -c /koolshare/AdGuardHome/AdGuardHome.yaml     (文件路径自己更改,没有AdGuardHome.yaml文件没关系,后面设置完后会自动生成)试试程序能不能正常运行,命令行会有提示,确保程序能正常运行后再进行下一步操作。
目前不知道要不要entware包的支持,因为我已经装过了不想再卸载测试,有必要请自己先安装一下,旧梅林运行entware-setup.sh,384之后的运行amtm。

3.这里重点,要考!
梅林的DNS/DHCP服务由dnsmasq提供,但梅林下又不像OpenWrt下有AdGuardHome的UI可以设置DNS端口重定向和DNS转发,就很难让AdGuardHome接管dnsmasq的工作,我在这一步上费了不少工夫。
难点在于,dnsmasq的DNS服务已经占用了53端口,会与AdGuardHome冲突,而且梅林下的dnsmasq有进程守护,终止进程后,没一会它就自动运行起来了,我试着修改/etc/dnsmasq.conf的配置,结果发现它重新运行时又会重置dnsmasq.conf文件,修改了也根本没用。
第一次运行要进行一些初始化配置,AdGuardHome需要用到53端口,但当前路由的53端口又被dnsmasq占用着,我的初装办法是:
在命令行键入     ./AdGuardHome -c /koolshare/AdGuardHome/AdGuardHome.yaml     (文件路径自己更改)运行程序,跑起来后命令行信息滚动(有出错信息自行分析)
到出现提示“[info] Go to http://192.168.50.1:3000时,用浏览器访问:http://路由内网IP:3000,出现如下网页

开始配置,共5步


第二步这里两个端口,一个是AdGuardHome管理界面的端口,一个是DNS服务器的端口,路由上很容易出现端口冲突,输入框下方有红色字体就说明有问题
梅林固件下安装,53端口肯定会有冲突,我的办法是先修改AdGuardHome DNS服务器端口号,比如先改成55,要是网页管理端口3000也有冲突就一起改了,让这一步先过,后面几个步骤就很简单了,根据提示操作。
设置好后,AdGuardHome就以55端口提供DNS服务跑起来了,进入AdGuardHome仪表盘,你会发现已被过滤器拦截总是为0,这是因为默认DNS服务默认走53,不会去走55的端口嘛
这5步初始化配置完成后,程序会在你指定的目录自动生成AdGuardHome.yaml配置文件。
Ctrl+C结束AdGuardHome运行,用WinSCP到AdGuardHome目录里,打开AdGuardHome.yaml,找到这一段

将port: 55改成53保存退出,这一点很重要,梅林下AdGuardHome的DNS端口一定要是53,才能正常接管dnsmasq工作,同时也会接管梅林的DHCP服务,之前在梅林DHCP设置的静态IP分配也会失效,有需要可以到AdGuardHome的设置->DHCP设置中重新分配。
以上初始化之后,再次运行程序前就要先结束掉dnsmasq进程,指令集如下:
  1. killall -9 dnsmasq ; service stop_dnsmasq ; service disable_dnsmasq ; dnsmasq --port=0 ; /koolshare/AdGuardHome/AdGuardHome -c /koolshare/AdGuardHome/AdGuardHome.yaml
复制代码
可以将需要的指令整理成一个脚本文件AdGuardHome.sh,给可执行权限,以后运行方便:
  1. #!/bin/sh
  2. killall -9 dnsmasq          #结束dnsmasq进程,准备让AdGuardHome接管DNS和DHCP服务。根据楼下的经验,杀不掉进程时,试试用kill -9 $(pidof dnsmasq)替换该指令
  3. service stop_dnsmasq >>/dev/null          #停止dnsmasq,以保证dnsmasq终止,该指令在梅林下不一定有效
  4. service disable_dnsmasq >>/dev/null          #禁用dnsmasq,该指令在梅林下不一定有效
  5. nohup /koolshare/AdGuardHome/AdGuardHome -c /koolshare/AdGuardHome/AdGuardHome.yaml >>/dev/null &          #后台运行AdGuardHome
  6. dnsmasq --port=0          #dnsmasq不是会自动运行起来吗?反正没办法完全禁用,干脆我帮它先运行了,指定端口号为0,等于关闭了DNS服务
复制代码
需要手动运行AdGuardHome时,进入SSH命令行执行/koolshare/AdGuardHome/AdGuardHome.sh,重新出现命令行提示符时,AdGuardHome就驻留在后台运行了。
以上指令集和脚本的区别在于,指令集启动的AdGuardHome在前台运行,有运行状态信息提示可供配置时调试;脚本启动的完全静默,仅供程序配置正常后常驻内存提供服务。

4.SSH下用上面指令集运行AdGuardHome,程序跑起来后浏览器再访问http://路由内网IP:3000就可以对AdGuardHome进一步配置
接下来的配置OpenWrt下的安装教程已经有很多很详细了,不再赘述,借用一下其他大神写的教程吧:
来吧,AdGuardHome去广告和DNS正确姿势
https://www.right.com.cn/forum/thread-4090928-1-1.html
AdGuard Home设置指南 让你点哪里打开哪里 各项性能调校
https://www.right.com.cn/forum/thread-4055807-1-1.html
openwrt插件 AdGuardHome学习与分享
https://www.right.com.cn/forum/thread-4084366-1-1.html

5.在配置过程中,网页的右下角可能会弹出一些提示xxxxx连接不上巴拉巴拉。。。的错误信息,总结一些常见问题:
   a.设置->DNS设置里,AdGuardHome的默认提供的DNS服务器不适合我们天朝上国的网络环境,改成国内腾讯阿里或ISP运营商提供的DNS就可以解决
   b.过滤器->DNS封锁清单里,同样AdGuardHome的默认配置可能不合适,连接不上的禁用,同时增加适合国内环境的阻止列表,上面的配置教程里有推荐
   c.内网接入的客户端DNS要设置成AdGuardHome所在设备的IP,如192.168.50.1
   d.路由jffs空间有限,建议调试完成后到设置->常规设置中将日志关闭
   e.配置完成后备份好AdGuardHome.yaml和AdGuardHome.sh文件,需要重装时可以省事很多

6.设置AdGuardHome开机自启
确保AdGuardHome能正常运行并提供DNS服务后,编辑/jffs/scripts/services-start,在这个文件末尾加入一行
/koolshare/AdGuardHome/AdGuardHome.sh
重启路由。

其它没什么难点了,当你看到仪表盘的DNS查询和已被过滤器拦截有数字变化时,AdGuardHome已经开始生效了,开始你的无广告冲浪之旅吧!

最后上传一个我自己的AdGuardHome.yaml配置文件和AdGuardHome.sh供你们参考,或替换你的配置文件(账号admin密码123456,DHCP已开启并分配192.168.50.x网段,需改成自己实际的网段,应该不能直接使用)


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

评分

参与人数 5恩山币 +6 收起 理由
13188714456 + 1 为什么我装完之后,电视不能看了啊,创维
露月秋色 + 1 生活不易,相遇也不易,既然这样,让我们成为朋友一起面朝大海、花开花落……
MaxGO + 2 这个年轻人不讲武德,耗子尾汁!
luoyuehua724 + 1 感谢你的分享,无论怎样,你都是最无私的人!来,说说,你E盘上还有啥一起给我吧!
HUANWENSD + 1 感谢你的分享,无论怎样,你都是最无私的人!来,说说,你E盘上还有啥一起给我吧!

查看全部评分

我的恩山、我的无线 The best wifi forum is right here.
发表于 2021-4-27 01:03 | 显示全部楼层
睡醒了赶快接着写啊,让你说的我也想试试了
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2021-4-27 07:04 | 显示全部楼层
占个位楼主写完了看下
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2021-4-27 11:07 | 显示全部楼层
坐等完美教程。。。。。。。加油
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2021-4-27 15:34 | 显示全部楼层
没有ARM8的.........
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2021-4-27 15:40 | 显示全部楼层

arm64呀,不行几个arm都下载来试一下
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2021-4-27 20:00 | 显示全部楼层
谢谢分享,辛苦了
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2021-4-28 00:59 | 显示全部楼层
本帖最后由 小麦兜 于 2021-4-28 05:03 编辑

进入后台最后提示这个,AdGuardHome.yaml这个文件权限什么都设置好了,就是无法写入
Error: control/install/configure | Couldn't write config: open /AdGuardHome/.AdGuardHome.yaml448287982: no such file or directory | 500

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2021-4-28 08:31 | 显示全部楼层
cjchome 发表于 2021-4-27 15:40
arm64呀,不行几个arm都下载来试一下

谢谢 我还是等他们应用软件
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2021-4-28 08:55 | 显示全部楼层
小麦兜 发表于 2021-4-28 00:59
进入后台最后提示这个,AdGuardHome.yaml这个文件权限什么都设置好了,就是无法写入
Error: control/insta ...

AdGuardHome.yaml前面是不是多了个点(.)?
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2021-4-28 09:11 | 显示全部楼层
cjchome 发表于 2021-4-28 08:55
AdGuardHome.yaml前面是不是多了个点(.)?

不是点的原因,改了就会多个点
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2021-4-28 09:32 | 显示全部楼层
本帖最后由 cjchome 于 2021-4-28 09:35 编辑
小麦兜 发表于 2021-4-28 09:11
不是点的原因,改了就会多个点

改了就会多个点?这么奇葩
是不是你用的修改软件有问题
要不看看AdGuardHome.sh文件里的命令行是不是多个点了?
不排除你用AdG测试版的可能,我用的是105.2正式版

我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2021-4-28 09:52 | 显示全部楼层
cjchome 发表于 2021-4-28 09:32
改了就会多个点?这么奇葩
是不是你用的修改软件有问题
要不看看AdGuardHome.sh文件里的命令行是不是多 ...

AdGuardHome.sh  这命令里面没有点,加个点后错误提示也会跟着多个点
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2021-4-28 17:07 | 显示全部楼层
R6300V 2,下载的armv7,那个文件下载下来,里面没有.sh文件啊,安装失败,而且按照教程,也没法运行,楼主可以出个详细点儿的,带截图的教程吗
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2021-4-28 17:44 | 显示全部楼层
xzl885500 发表于 2021-4-28 17:07
R6300V 2,下载的armv7,那个文件下载下来,里面没有.sh文件啊,安装失败,而且按照教程,也没法运行,楼主 ...

这不是和K3一个系列的处理器吗?用armv5试试
.sh文件是自己创建的
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-4-23 14:59

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com 举报电话:0519-86695797

快速回复 返回顶部 返回列表