
2 nomytwins Dec 17, 2023 整个软路由,直接软路由改掉不就行了 |
4 5966 Dec 17, 2023 via iPhone 小米的能够在 app 上添加内容啊。 |
5 Puteulanus Dec 17, 2023 之前搜到过这个,现在能用的好像是 script_usbmount 钩子 https://www.tiansam.net/?p=1334 https://blog.bbskali.cn/3929.html 参考这俩,需要路由器上插一个 U 盘,用钩子设定开机启动脚本,然后你脚本里再去修改 hosts (可以直接在 jffs 存一份你的 hosts ,开机的时候用脚本拷过去覆盖系统的) |
6 xiaoz Dec 17, 2023 via Android 换个思路?搭建 AdguardHome ,然后 ADH 上设置 host ,再把路由器 DNS 指向 adh 不就解决了。 |
7 18xlX5iTe9mdoau0 Dec 17, 2023 @xiaoz 我就是这样做的 |
9 Kenshiro OP @Puteulanus 这就去试试,谢大佬 |
11 gentrydeng Dec 17, 2023 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 Dec 17, 2023 安装梅林后,在/jffs/configs/dnsmasq.d,新建 dnsmasq.conf ,内容如下 address=/baidu.com/127.0.0.1 重启一下 dnsmasq service restart_dnsmasq 不知道是不是你要的效果 |
15 gentrydeng Dec 17, 2023 via Android @Kenshiro #12 这个只有在 Asuswrt-Merlin 才可用。 如果你使用的是原厂固件,则没有这个功能。 |
16 helldiablo Dec 17, 2023 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 年多了,重启不掉。 |
18 Puteulanus Dec 17, 2023 @Kenshiro 其他的我就不知道了,只是查资料的时候正常查到过华硕的这个 |
19 Kenshiro OP |
20 helldiablo Dec 18, 2023 via Android @Kenshiro 路由固件是什么,官方原版的就放弃吧,不支持 jffs 下的配置的 |
21 Kenshiro OP @helldiablo 梅林的 386.12.4 路由器需要什么设定吗 |
22 helldiablo Dec 18, 2023 @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 Dec 18, 2023 @Kenshiro 不可能,不能用肯定是别的原因。比如没有赋予执行权限,“chmod +x example.postconf”或者放错位置。 |
26 helldiablo Dec 18, 2023 @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 Dec 21, 2023 @Kenshiro #23 就是这里的问题,你用这两个功能把客户端的指向了其他的 dns ,路由器里的 dnsmasq 就直接被绕过去了,只有客户端的 dns 使用的是 dnsmasq 的监听地址(路由器的 ip 地址),修改才能生效 |
28 Kenshiro OP |
29 Kenshiro OP @gentrydeng 周末研究研究 |
30 Brainos Dec 21, 2023 @Kenshiro #28 如果只用静态 dhcp 给设备固定 ip 地址就不会,但如果手动给设备设置了独立的 dns 服务器就会影响设备的 dns 解析。 另外,你应该 ssh 进命令行界面,用 `nslookup 你设置 host 的域名 你的路由器地址` 来测试设置是否生效 |
31 BitGeek Dec 29, 2023 https://github.com/jumpsmm7/Asuswrt-Merlin-AdGuardHome-Installer 我先咱用的就是这个,官方的 adguardhome 安装脚本 |