Files
tvbox_collect/_posts/2024-08-21-pin-shellcrashadguardhome-mihomo.md
2026-07-30 17:32:45 +00:00

27 KiB
Raw Permalink Blame History

title, description, date, categories, tags, pin
title description date categories tags pin
全网最详细的解锁 SSH ShellCrash 搭载 mihomo 内核搭配 AdGuard Home 安装和配置教程 此教程使用 ShellCrash 搭载 mihomo 内核并搭配 AdGuard Home 作下游,配有详细图文 2024-08-21 18:29:59 +0800
置顶
Clash
mihomo
ShellCrash
AdGuard Home
解锁
SSH
true

说明 {: .prompt-tip }

  1. 本教程基于 REDMI AX6000 官方固件 v1.0.70 版,ShellCrash v1.9.5 版,AdGuard Home v0.108.0 版编写
  2. 恢复 SSH,安装 ShellCrash 和 AdGuard Home 的方法也适用于其它已解锁 SSH 的路由器
  3. 安装 mihomo 内核和 AdGuard Home 时须注意路由器 CPU 架构,查看 CPU 架构可连接 SSH 后执行命令 uname -ms,若执行结果是“linux aarch64”,就下载 arm64 版安装包;若是其它架构请下载相匹配的安装包
  4. ShellCrash 和 AdGuard Home 中所有没有提到的配置保持默认即可
  5. 使用本教程时,不建议启用 ShellCrash 配置脚本 → 2) 功能设置 → 3) 透明路由流量过滤 → 2) 过滤局域网设备,因不经过内核的设备在访问 漏网之鱼 域名时会遇到无法访问的情况
  6. ShellCrash 和 AdGuard Home 快速安装方法请看《ShellCrash 和 AdGuard Home 快速安装教程
  7. ShellCrash 单独使用时设置 DNS 分流请看《搭载 mihomo 内核进行 DNS 分流教程-geodata 方案》或《搭载 mihomo 内核进行 DNS 分流教程-ruleset 方案

一、 资源下载

打包下载:https://dustinwinvip.lanzoum.com/b01qd6p3a
密码:zyxz
注:

  • ① 没有对文件进行任何处理,请自行操作使用
  • ② 不保证实时更新,想用新版请安装后自行升级
  • ③ 版本信息请查看打包文件内的 Readme.txt 文本

1. ShellCrash

官方下载:https://raw.githubusercontent.com/juewuy/ShellCrash/master/ShellCrash.tar.gz

2. mihomo 内核

官方下载:https://github.com/MetaCubeX/mihomo/releases
下载 mihomo-linux-arm64-[version].gz 文件

3. PuTTY

官方下载:https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
下载 putty-64bit-[version]-installer.msi 文件

4. AdGuard Home

官方下载:https://github.com/AdguardTeam/AdGuardHome/releases
下载 AdGuardHome_linux_arm64.tar.gz 文件

5. UPX

官方下载:https://github.com/upx/upx/releases
下载 upx-[version]-win64.zip 文件

6. WinSCP

官方下载:https://winscp.net/eng/downloads.php
下载 WinSCP-[version]-Setup.exe 文件

二、 添加 SSH 支持

1. 给 Windows 操作系统添加 SSH 支持(任选一)

  • ① 启用 Telnet 客户端

    • ➊ 进入设置 → 系统 → 可选功能 → 更多 Windows 功能,勾选“Telnet Client”并点击“确定”
      启用 Telnet 客户端 1

    • ➋ 点击“让 Windows 更新为你下载文件”
      启用 Telnet 客户端 2

  • ② 添加 OpenSSH 客户端和 OpenSSH 服务器

    • ➊ 进入设置 → 系统 → 可选功能 → 查看功能,搜索“ssh”,在搜索结果中勾选“OpenSSH 客户端”和“OpenSSH 服务器”并点击“下一步”
      启用 OpenSSH 服务器 1

    • ➋ 点击“添加”
      启用 OpenSSH 服务器 2

在成功完成《三、 2》后才能进行此操作 {: .prompt-warning }

  • ③ 连接 Telnet
    • ➊ 以管理员身份运行 PowerShell 或 CMD,执行命令 telnet 192.168.31.1

      • 注:首次登录不需要用户名和密码,解锁或恢复 SSH 后用户名为 root,密码为《三、 3》中设置的登录密码
      连接 Telnet 1
    • ➋ 输入密码 12345678(输入时密码不可见,下同)并回车,显示“ARE U OK”表示成功连接 Telnet
      连接 Telnet 2

在成功完成《三、 3》后才能进行此操作 {: .prompt-warning }

  • ④ 连接 SSH
    • ➊ 以管理员身份运行 PowerShell 或 CMD,执行命令 ssh -oHostKeyAlgorithms=+ssh-rsa [email protected] 以允许 SSH 客户端接受“ssh-rsa”密钥,输入 yes 并回车

      • 注:若当前电脑登录过 SSH,后路由器经过重新解锁或恢复 SSH,须进入 C:\Users\[用户名]\.ssh{: .filepath} 文件夹,删除“known_hosts”文件,否则登录会报错
      连接 SSH 1
    • ➋ 输入密码 12345678 并回车
      连接 SSH 2

    • ➌ 显示“ARE U OK”表示成功登录 SSH
      连接 SSH 3

2. 通过 SSH 工具添加 SSH 支持(任选一)

在成功完成《三、 2》后才能进行此操作 {: .prompt-warning }

  • ① 连接 Telnet
    • ➊ 安装 PuTTY 并打开,按图输入和选择,点击“Open”即可成功连接 Telnet 连接 Telnet 1

    • ➋ 显示“ARE U OK”表示成功登录 Telnet
      连接和添加 Telnet 2

在成功完成《三、 3》后才能进行此操作 {: .prompt-warning }

  • ② 连接 SSH
    • ➊ 打开 PuTTY,然后按图输入,点击“Open”即可成功连接 SSH 连接和添加 SSH 1

    • ➋ “login as”输入 root 并回车,“password”为解锁或恢复 SSH 时设置的密码,输入后再次回车,显示“ARE U OK”表示成功连接 SSH
      连接和添加 SSH 2

3. 通过 WinSCP 连接路由器文件管理

在成功完成《三、 3》后才能进行此操作 {: .prompt-warning }

  • ① 安装 WinSCP 并打开,“文件协议”选择“SCP”,其它按图输入,“密码”为 SSH 登录密码,点击“保存”后再点击“登录”
    通过 WinSCP 连接路由器文件管理 1

  • ② 左侧为电脑本地文件,右侧为路由器文件
    通过 WinSCP 连接路由器文件管理 2


配置免密码连接 SSH 和 WinSCP {: .prompt-tip }

  1. 配置免密码连接 SSH
  • ① 打开 PuTTYgen,直接点击“Generate”(期间鼠标必须在此窗口内不停移动)
    生成 key
  • ② 生成后复制完整的“Key”值备用,点击“Save private key”(可在“Key comment”输入 [email protected] - REDMI AX6000
    保存 key
  • ③ “保存”文件到 C:\Users\[用户名]\.ssh\rsa_key.ppk{: .filepath} 中
  • ④ 打开 PuTTY,进入 Connection → SSH → Auth → Credentials,点击“Private key file for authentication”的“Browser”,定位到 C:\Users\[用户名]\.ssh\rsa_key.ppk{: .filepath} 文件并“打开”
  • ⑤ 进入 Connections → Data,“Auto-login username”输入 root
    设置登录用户名
  • ⑥ 进入 Session,按图输入后,先点击“Default Settings”,后点击“Save”
    保存配置
  1. 配置免密码连接 WinSCP
  • ① 打开 WinSCP,进入标签页 → 站点 → 站点管理器,点击“编辑”,删除密码后点击“高级”
  • ② 进入 SSH → 验证,点击“密钥文件”的“...”图标,定位到 C:\Users\[用户名]\.ssh\rsa_key.ppk{: .filepath} 文件并“打开”,点击“确定”,再点击“保存”
  1. 导入 Key 并加入开机启动
    连接 SSH,执行如下命令:
  • 注:将《1. ②》中复制的 Key 值替换下面命令中的 {key}
echo "{key}" > /data/auto_ssh/authorized_keys
chmod 600 /data/auto_ssh/authorized_keys
ln -sf /data/auto_ssh/authorized_keys /etc/dropbear/
echo -e "\nln -sf /data/auto_ssh/authorized_keys /etc/dropbear/" >> /data/auto_ssh/auto_ssh.sh

三、 解锁 SSH

1. 启用调试模式

  • ① 进入路由器管理页面 http://192.168.31.1,登录后复制地址栏中的 stok 值
    复制 stok 值

  • ② 将复制的 stok 值替换如下网址的 {stok} 并访问:

    http://192.168.31.1/cgi-bin/luci/;stok={stok}/api/misystem/set_sys_time?timezone=%20%27%20%3B%20zz%3D%24%28dd%20if%3D%2Fdev%2Fzero%20bs%3D1%20count%3D2%202%3E%2Fdev%2Fnull%29%20%3B%20printf%20%27%A5%5A%25c%25c%27%20%24zz%20%24zz%20%7C%20mtd%20write%20-%20crash%20%3B%20
    

    网页内容显示 {"code":0} 表示成功启用调试模式

  • ③ 继续将复制的 stok 值替换如下网址的 {stok} 并访问:

    http://192.168.31.1/cgi-bin/luci/;stok={stok}/api/misystem/set_sys_time?timezone=%20%27%20%3b%20reboot%20%3b%20
    

    网页内容显示 {"code":0},此时路由器会重启

2. 永久启用 Telnet

  • ① 重启完成后进入路由器管理页面并登录,再次复制 stok 值

  • ② 将复制的 stok 值替换如下网址的 {stok} 并访问:

    http://192.168.31.1/cgi-bin/luci/;stok={stok}/api/misystem/set_sys_time?timezone=%20%27%20%3B%20bdata%20set%20telnet_en%3D1%20%3B%20bdata%20set%20ssh_en%3D1%20%3B%20bdata%20set%20uart_en%3D1%20%3B%20bdata%20commit%20%3B%20
    

    网页内容显示 {"code":0} 表示成功设置 Bdata 永久启用 Telnet

  • ③ 继续将复制的 stok 值替换如下网址的 {stok} 并访问:

    http://192.168.31.1/cgi-bin/luci/;stok={stok}/api/misystem/set_sys_time?timezone=%20%27%20%3b%20reboot%20%3b%20
    

    网页内容显示 {"code":0},此时路由器会再次重启

启用 Telnet 成功!

3. 永久启用并固化 SSH

  • ① 连接 Telnet,执行如下命令:

    • 注:第一行命令是将 Telnet 和 SSH 登录密码设置为 12345678,可自定义
    echo -e '12345678\n12345678' | passwd root
    nvram set telnet_en=1
    nvram set ssh_en=1
    nvram set uart_en=1
    nvram set boot_wait=on
    nvram commit
    /etc/init.d/dropbear enable & /etc/init.d/dropbear start
    mkdir -p /data/auto_ssh
    curl -sS -o /data/auto_ssh/auto_ssh.sh -L https://cdn.jsdelivr.net/gh/lemoeo/AX6S@main/auto_ssh.sh
    chmod +x /data/auto_ssh/auto_ssh.sh
    /data/auto_ssh/auto_ssh.sh install
    uci set system.@system[0].timezone='CST-8'
    uci set system.@system[0].webtimezone='CST-8'
    uci set system.@system[0].timezoneindex='2.84'
    uci commit
    mtd erase crash
    reboot
    
    永久启用并固化 SSH
  • ② 最后一行 reboot 命令需要手动回车(下同),回车后路由器会重启

解锁 SSH 成功!

四、 恢复 SSH

若已解锁并固化过 SSH 的路由器在升级固件或恢复出厂设置后导致 SSH 丢失,可快速再次解锁 SSH {: .prompt-tip }

1. 计算 Telnet 登录密码

打开网站 https://miwifi.dev/ssh,在 SN 处输入路由器背面的 SN 号,点击“Calc”后再点击“Copy”即可复制密码

  • 注:复制的密码即 Telnet 和 SSH 登录密码
计算 Telnet 登录密码

2. 永久启用并固化 SSH

连接 Telnet,执行如下命令:

  • 注:最后一行命令是将 Telnet 或 SSH 登录密码设置为 12345678,可自定义
mkdir -p /data/auto_ssh
curl -sS -o /data/auto_ssh/auto_ssh.sh -L https://cdn.jsdelivr.net/gh/lemoeo/AX6S@main/auto_ssh.sh
chmod +x /data/auto_ssh/auto_ssh.sh
/data/auto_ssh/auto_ssh.sh install
echo -e '12345678\n12345678' | passwd root

3. 更改 Telnet 和 SSH 登录密码(可选)

执行命令 passwd root,输入密码如:12341234,回车后输入同样的密码,再次回车即可

恢复 SSH 成功!

五、 ShellCrash 安装和配置

1. ShellCrash 安装

  • ① 打开 WinSCP,将下载的 ShellCrash.tar.gz 文件移动到路由器的 /tmp{: .filepath} 目录中
    ShellCrash 安装 1

  • ② 连接 SSH 后执行如下命令:

    mkdir -p /tmp/SC_tmp && tar -zxf '/tmp/ShellCrash.tar.gz' -C /tmp/SC_tmp/ && source /tmp/SC_tmp/init.sh
    
  • ③ 选择 1 安装到 /data 目录,剩余空间:*.*M

  • ④ 根据需要自定义别名(此处选择“2) 【 sc 】”)

  • ⑤ 将下载的 mihomo-linux-arm64-[version].gz 文件解压,得到 mihomo-linux-arm64 文件

  • ⑥ 将 mihomo-linux-arm64 文件移动到路由器的 /tmp{: .filepath} 目录中
    ShellCrash 安装 2

安装 ShellCrash 成功!

2. ShellCrash 配置

  • ① 连接 SSH 后执行命令 sc 即可打开 ShellCrash 配置脚本

  • ② 新手引导

    • ➊ 选择“1) 路由设备配置局域网透明代理”

    • ➋ 根据需要是否启用小内存模式(此处选择“0”)

    • ➌ 启用推荐的自动任务配置

    • ➍ 根据需要是否开始导入配置文件(此处选择“0”)

    • ➎ 此时脚本会自动“发现可用的内核文件”,选择“1) 立即加载”,后选择“1) Mihomo(Meta)”
      ShellCrash 配置 1

    • ➏ 内核加载完成后根据需要是否保留相关数据库文件(此处选择“0) 不保留”)

  • ③ 功能设置

    • ➊ 进入 ShellCrash 配置脚本 → 2) 功能设置 → 1) 路由模式设置(推荐“混合模式”,其次“Tproxy 模式”,宽带在 300M 内推荐“Tun 模式”)

      • 注:使用“Tun 模式”前须进入主菜单 → 8) 工具与优化,启用“8) 小米设备 Tun 模块修复”
    • ➋ 进入 2) 功能设置 → 2) DNS 设置(推荐“MIX 模式”)

    • ➌ 进入 2) DNS 设置 → 7) DNS 劫持端口,设置为“5353”(须完成《六、 1》后才可设置)

    • ➍ 进入 2) DNS 设置 → 9) 修改 DNS 服务器,选择“4) 一键配置加密 DNS”

    • ➎ 进入 2) 功能设置 → 5) 启用域名嗅探,选择“1) 是”

  • ④ 进入主菜单 → 4 启动设置,启用“1) 开机自启动”,然后选择“3) 设置自启延时”为“10 秒”

  • ⑤ 进入主菜单 → 5) 自动任务 → 1) 添加自动任务,输入对应的数字并回车后可设置执行条件

  • ⑥ 进入主菜单 → 8) 工具与优化,选择“6) 小米设备软固化 SSH”(无需输入需要还原的 SSH 密码)

  • ⑦ 进入主菜单 → 9) 更新与支持 → 4) 安装/更新本地 Dashboard 面板,推荐安装“1) 安装 zashboard 面板”
    注:

    • ➊ 启动服务后,面板 Dashboard 访问链接为:http://192.168.31.1:9999/ui/
    • ➋ 初次打开需要添加“主机”和“端口”,分别填入 192.168.31.19999 并点击“添加”即可访问 Dashboard 面板
    ShellCrash 配置 6
  • ⑧ 导入配置文件

    • ➊ 进入主菜单 → 6) 配置文件管理 → a) 添加提供者 → 1) 设置名称或代号,如输入“mihomo”;后进入 2) 设置链接或路径,粘贴你的订阅链接,选择“a) 保存此提供者”
    • ➋ 进入 6) 配置文件管理 → c) 在线生成配置文件 → 6) 自定义浏览器 UA,根据需要设置 UA(此处选择“2) 不使用 UA”)
    • ➌ 进入 6) 配置文件管理 → 1) mihomo,根据需要选择“b) 本地生成仅包含此提供者的配置文件”或“c) 在线生成仅包含此提供者的配置文件”;选择“e) 在线获取此配置文件”需要一定的 mihomo 知识储备,请查看《生成带有自定义策略组和规则的 mihomo 配置文件直链-geodata 方案》或《生成带有自定义策略组和规则的 mihomo 配置文件直链-ruleset 方案

    导入配置文件完成后,选择 1 启动/重启服务

配置 ShellCrash 成功!

ShellCrash 常用命令:

  1. 打开配置:sc
  2. 启动服务:$CRASHDIR/start.sh start
  3. 停止服务:$CRASHDIR/start.sh stop
  4. 重启服务:$CRASHDIR/start.sh restart
  5. 更新订阅:$CRASHDIR/task/task.sh update_config
  6. 查看帮助和说明:sc -h

3. ShellCrash 升级

进入主菜单 → 9) 更新与支持,查看“管理脚本”、“内核文件”和“本地数据库文件”有无新版本,有则选择对应的数字进行升级即可
ShellCrash 升级

4. ShellCrash 卸载

  • ① 通过脚本命令进行卸载(任选一)
    连接 SSH 后执行命令 $CRASHDIR/start.sh stop && sc -u
  • ② 通过 ShellCrash 配置进行卸载(任选一)
    进入主菜单 → 9) 更新与支持,选择“8) 卸载 ShellCrash”

六 、 AdGuard Home 安装和配置

1. AdGuard Home 安装

  • ① 将下载的 upx-[version]-win64.zip 文件解压到桌面,目录结构为 C:\Users\[用户名]\Desktop\upx{: .filepath}

  • ② 将下载的 AdGuardHome_linux_arm64.tar.gz 文件复制到桌面,以管理员身份运行 PowerShell,依次执行如下命令:

    cd C:\Users\[用户名]\Desktop
    tar -zxvf AdGuardHome_linux_arm64.tar.gz
    

    .tar.gz 压缩文件成功解压到桌面的 AdGuardHome{: .filepath} 文件夹内,目录结构为 C:\Users\[用户名]\Desktop\AdGuardHome{: .filepath}

  • ③ 进入 AdGuardHome{: .filepath} 文件夹,将里面的“AdGuardHome”文件移动到 C:\Users\[用户名]\Desktop\upx{: .filepath} 文件夹中
    依次执行如下命令:

    cd C:\Users\[用户名]\Desktop\upx
    .\upx AdGuardHome
    
  • ④ 将压缩后的“AdGuardHome”文件移动到路由器的 /data/AdGuardHome{: .filepath} 目录(没有此目录就新建)中
    AdGuard Home 安装 1

  • ⑤ 进入路由器文件管理的 /data/AdGuardHome{: .filepath} 目录,右击空白处并选择“新建”,点击“文件”,“输入文件名”AdGuardHome.sh,添加如下内容并保存:

    #!/bin/sh /etc/rc.common
    
    START=95
    STOP=01
    USE_PROCD=1
    
    WORK_DIR="/data/AdGuardHome"
    CONFIG_FILE="$WORK_DIR/AdGuardHome.yaml"
    
    start_service() {
        echo "AdGuard Home 正在启动..."
        procd_open_instance
        procd_set_param command "$WORK_DIR/AdGuardHome" -s run
        procd_append_param command -c "$CONFIG_FILE"
        procd_append_param command -w "$WORK_DIR"
        procd_set_param pidfile /var/run/AdGuardHome.pid
        procd_close_instance
        echo "AdGuard Home 启动成功!"
    }
    
    stop_service() {
        echo "AdGuard Home 正在停止..."
        sleep 3
        echo "AdGuard Home 停止成功!"
    }
    
  • ⑥ 进入路由器文件管理的 /data/auto_ssh{: .filepath} 目录,右击“auto_ssh.sh”文件并点击“编辑”

    • 注:若没有此目录和文件,可新建,且须连接 SSH 后执行命令 chmod +x /data/auto_ssh/auto_ssh.sh
    AdGuard Home 安装 2

AdGuard Home 的“DNS 服务器端口”须设置为“5353” {: .prompt-warning }

  • ⑦ 在最下方添加如下内容并保存:

    sleep 20s
    cp -f /data/AdGuardHome/AdGuardHome.sh /etc/init.d/AdGuardHome
    chmod +x /etc/init.d/AdGuardHome && /etc/init.d/AdGuardHome start
    iptables -t nat -A PREROUTING -p tcp --dport 53 -j REDIRECT --to-ports 5353
    iptables -t nat -A PREROUTING -p udp --dport 53 -j REDIRECT --to-ports 5353
    ip6tables -t nat -A PREROUTING -p tcp --dport 53 -j REDIRECT --to-ports 5353
    ip6tables -t nat -A PREROUTING -p udp --dport 53 -j REDIRECT --to-ports 5353
    
  • ⑧ 连接 SSH 后直接粘贴如下所有命令:

    chmod +x /data/AdGuardHome/AdGuardHome
    cp -f /data/AdGuardHome/AdGuardHome.sh /etc/init.d/AdGuardHome
    chmod +x /etc/init.d/AdGuardHome && /etc/init.d/AdGuardHome start
    iptables -t nat -A PREROUTING -p tcp --dport 53 -j REDIRECT --to-ports 5353
    iptables -t nat -A PREROUTING -p udp --dport 53 -j REDIRECT --to-ports 5353
    ip6tables -t nat -A PREROUTING -p tcp --dport 53 -j REDIRECT --to-ports 5353
    ip6tables -t nat -A PREROUTING -p udp --dport 53 -j REDIRECT --to-ports 5353
    

安装 AdGuard Home 成功!

2. AdGuard Home 配置

  • ① 引导设置

    • ➊ 打开网页 http://192.168.31.1:3000 后点击“运行向导”
    • ➋ “设置密码保护”设置用户名和密码
    • ➌ Web UI 设置 → 端口,输入 3000,点击“下一步”
    • ➍ DNS 服务器设置 → 端口,输入 5353,点击“下一步”
    • ➎ “设备类型”保持默认的“路由器”,直接点击“下一步”
    • ➏ 点击“打开仪表盘”后输入刚才设置的用户名和密码“登录”,就可以进入 AdGuard Home 管理页面
  • ② 进入设置 → General,关闭“查询日志”(日志非常占用空间)

  • ③ DNS 设置

    • ➊ 进入设置 → DNS → 上游 DNS 服务器,点击“上游模式”后选择“并行请求”并“保存”

    • ➋ 点击“服务器地址”,输入 localhost:1053 并“保存”

      • 注:此时页面右下角可能会弹出报错信息,但不用理会
      AdGuard Home 配置 1
    • ➌ 点击“后备 DNS 服务器”,输入如下内容并“保存”:

      quic://dns.alidns.com:853
      https://doh.pub/dns-query
      
      AdGuard Home 配置 2
    • ➍ 点击“Bootstrap DNS 服务器”,输入如下内容并“保存”:

      223.5.5.5
      119.29.29.29
      
      AdGuard Home 配置 3
    • ➎ 进入 DNS 服务配置,点击“速度限制”,输入 0 并“保存”
      AdGuard Home 配置 4

    • ➏ 启用“乐观缓存”
      AdGuard Home 配置 5

  • ④ 进入过滤器 → 拦截列表 → 添加黑名单 → 从列表添加,推荐勾选“区域”里的“CHN: anti-AD”,然后点击“添加”

    • 注:若等待 10 分钟仍下载失败,可手动将“URL 或文件路径”修改为 https://anti-ad.net/easylist.txt
    AdGuard Home 配置 6

    添加成功
    AdGuard Home 配置 7

配置 AdGuard Home 成功!

AdGuard Home 常用命令:

  1. 启动服务:/etc/init.d/AdGuardHome start
  2. 停止服务:/etc/init.d/AdGuardHome stop
  3. 重启服务:/data/AdGuardHome/AdGuardHome -s restart
  4. 显示当前服务状态:/data/AdGuardHome/AdGuardHome -s status

3. AdGuard Home 升级

为了节约路由器内存,请按照如下步骤进行操作:

4. AdGuard Home 卸载

  • ① 删除开机启动项 执行《六、 1. ⑥》的操作步骤,删除添加的内容:

    sleep 20s
    cp -f /data/AdGuardHome/AdGuardHome.sh /etc/init.d/AdGuardHome
    chmod +x /etc/init.d/AdGuardHome && /etc/init.d/AdGuardHome start
    iptables -t nat -A PREROUTING -p tcp --dport 53 -j REDIRECT --to-ports 5353
    iptables -t nat -A PREROUTING -p udp --dport 53 -j REDIRECT --to-ports 5353
    ip6tables -t nat -A PREROUTING -p tcp --dport 53 -j REDIRECT --to-ports 5353
    ip6tables -t nat -A PREROUTING -p udp --dport 53 -j REDIRECT --to-ports 5353
    

    并保存

  • ② 卸载 AdGuard Home 连接 SSH 后直接粘贴如下所有命令:

    /etc/init.d/AdGuardHome stop && /data/AdGuardHome/AdGuardHome -s uninstall && rm -rf /data/AdGuardHome
    iptables -t nat -A PREROUTING -p tcp --dport 53 -j REDIRECT --to-ports 53
    iptables -t nat -A PREROUTING -p udp --dport 53 -j REDIRECT --to-ports 53
    ip6tables -t nat -A PREROUTING -p tcp --dport 53 -j REDIRECT --to-ports 53
    ip6tables -t nat -A PREROUTING -p udp --dport 53 -j REDIRECT --to-ports 53
    
  • ③ 重启路由器

七、 效果图

1. IPv6 效果

IPv6 效果 1IPv6 效果 2

2. BT 下载效果

UDP 连接正常,使用的是移动 1000M 带宽
BT 下载效果

3. ShellCrash 效果

使用的是移动 1000M 带宽
ShellCrash 效果

4. AdGuard Home 效果

AdGuard Home 效果