![]() | 2 nomytwins 2023-12-17 09:38:07 +08:00 整个软路由,直接软路由改掉不就行了 |
4 5966 2023-12-17 10:50:02 +08:00 via iPhone 小米的能够在 app 上添加内容啊。 |
![]() | 5 Puteulanus 2023-12-17 11:05:24 +08:00 ![]() 之前搜到过这个,现在能用的好像是 script_usbmount 钩子 https://www.tiansam.net/?p=1334 https://blog.bbskali.cn/3929.html 参考这俩,需要路由器上插一个 U 盘,用钩子设定开机启动脚本,然后你脚本里再去修改 hosts (可以直接在 jffs 存一份你的 hosts ,开机的时候用脚本拷过去覆盖系统的) |
![]() | 6 xiaoz 2023-12-17 11:11:08 +08:00 via Android 换个思路?搭建 AdguardHome ,然后 ADH 上设置 host ,再把路由器 DNS 指向 adh 不就解决了。 |
7 18xlX5iTemdoau0 2023-12-17 11:26:40 +08:00 @xiaoz 我就是这样做的 |
![]() | 9 Kenshiro OP @Puteulanus 这就去试试,谢大佬 |
![]() | 11 gentrydeng 2023-12-17 12:20:00 +08:00 via Android 如果能装 Asuswrt-Merlin 固件的话,就比较方便了。它支持编写自定义配置文件: https://github.com/RMerl/asuswrt-merlin.ng/wiki/Custom-config-files 如果是 postconf 脚本的话,记得赋予执行权限。 |
![]() | 12 Kenshiro OP @gentrydeng postconf 这个试了不行 |
![]() | 13 Kenshiro OP @Puteulanus 老哥不行啊,脚本没有执行 |
![]() | 14 rshun 2023-12-17 13:33:22 +08:00 安装梅林后,在/jffs/configs/dnsmasq.d,新建 dnsmasq.conf ,内容如下 address=/baidu.com/127.0.0.1 重启一下 nsmasq service restart_dnsmasq 不知道是不是你要的效果 |
![]() | 15 gentrydeng 2023-12-17 13:45:49 +08:00 via Android @Kenshiro #12 这个只有在 Asuswrt-Merlin 才可用。 如果你使用的是原厂固件,则没有这个功能。 |
16 helldiablo 2023-12-17 13:54:25 +08:00 1.原厂固件做不到,需要梅林固件或者官改,主要是 jffs 的问题; 2.改刷梅林固件或者官改,开启 JFFS 和 SSH 登录; 3.SSH 或 WINSCP 登录路由器后 在/jffs/configs 下建一名为 dnsmasq.conf.add 的文件 在里面写 addn-hosts=/jffs/configs/hosts 在/jffs/configs 下建自己的 hosts 的文件 执行 service restart_dnsmasq 重启 dnsmasq 服务(或者重启路由器) 4.hosts 文件直接使用 win 下的就行,需要维护时就替换一下,重启下 dnsmasq 服务即可,全程可避免重启。这种方法我已经用了 3 年多了,重启不掉。 |
![]() | 17 xiaoz 2023-12-17 14:43:34 +08:00 |
![]() | 18 Puteulanus 2023-12-17 18:33:02 +08:00 @Kenshiro 其他的我就不知道了,只是查资料的时候正常查到过华硕的这个 |
![]() | 19 Kenshiro OP |
20 helldiablo 2023-12-18 00:37:05 +08:00 via Android @Kenshiro 路由固件是什么,官方原版的就放弃吧,不支持 jffs 下的配置的 |
![]() | 21 Kenshiro OP @helldiablo 梅林的 386.12.4 路由器需要什么设定吗 |
22 helldiablo 2023-12-18 16:13:36 +08:00 @Kenshiro 梅林的在后台开 jffs ,按照上述步骤走就可以了。其实就是给 DNSMASQ 加了一个配置文件,或者你可以将类似于 address=/test.com/127.0.0.1 的形式添加到/jffs/configs/dnsmasq.conf.add 中替代 hosts 文件 |
![]() | 23 Kenshiro OP @helldiablo 是这样的老哥,ssh 看了系统 hosts 文件是加进了,但里面的被 127.0.0.1 域名还是能在设备访问,DNS 缓存也刷了。 路由那启动了 DNS Director 和 静态 DHCP 的 DNS 指定,有没有可能是这些设定影响吗?老哥方便透露您那边设定的吗 |
![]() | 24 Kenshiro OP @gentrydeng 我这个是梅林但 postconf 好像新版不能用了 |
![]() | 25 gentrydeng 2023-12-18 20:13:19 +08:00 @Kenshiro 不可能,不能用肯定是别的原因。比如没有赋予执行权限,“chmod +x example.postconf”或者放错位置。 |
26 helldiablo 2023-12-18 23:58:01 +08:00 @Kenshiro 1.系统管理-系统设置下,Enable JFFS custom scripts and configs-->是 2.DHCP 下,DNS 未作指定,Advertise router's IP in addition to user-specified DNS-->是 3.DNS Director 未设置 4./jffs/configs 下两个文件,dnsmasq.conf.add 和 hosts 。dnsmasq.conf.add 内容为 addn-hosts=/jffs/configs/hosts 。hosts 文件编码为 UTF-8 5.初次修改或维护 hosts 后,重启路由器或者 SSH 过去 service restart_dnsmasq ,重启 dnsmasa 服务 6.客户端 DNS 设置为路由器 IP |
27 Brainos 2023-12-21 15:30:23 +08:00 @Kenshiro #23 就是这里的问题,你用这两个功能把客户端的指向了其他的 dns ,路由器里的 dnsmasq 就直接被绕过去了,只有客户端的 dns 使用的是 dnsmasq 的监听地址(路由器的 ip 地址),修改才能生效 |
![]() | 28 Kenshiro OP |
![]() | 29 Kenshiro OP @gentrydeng 周末研究研究 |
30 Brainos 2023-12-21 21:20:48 +08:00 @Kenshiro #28 如果只用静态 dhcp 给设备固定 ip 地址就不会,但如果手动给设备设置了独立的 dns 服务器就会影响设备的 dns 解析。 另外,你应该 ssh 进命令行界面,用 `nslookup 你设置 host 的域名 你的路由器地址` 来测试设置是否生效 |
![]() | 31 BitGeek 2023-12-29 21:03:51 +08:00 ![]() https://github.com/jumpsmm7/Asuswrt-Merlin-AdGuardHome-Installer 我先咱用的就是这个,官方的 adguardhome 安装脚本 |