Asuswrt-Merlin(梅林固件)是一个Asuswrt的改版,本身只是网上众多的第三方路由器固件之一。但是国内某论坛开发的改版集成了一系列非常非常非常实用的工具,使得Merlin成为了国内最受欢迎的第三方路由器固件之一。
想玩Asuswrt-Merlin,最好还是买个ASUS品牌的路由器,现在比较热门的型号之一就是ASUS RT-AC68U。国行ASUS RT-AC68U在国内的售价将近1000人民币,美版在新蛋等B2C网站也要150刀,价格真心不便宜。但是在美国,ASUS RT-AC68U有一个马甲,这就是T-Mobile定制版的TM-AC1900。在有折扣时,这款路由器在T-Mobile官网上的售价只要50~60刀,这价格可比普通版实惠多了。
这个定制版也有一些问题,虽然它的硬件和ASUS RT-AC68U一模一样,但是软件却有很大的不同。TM-AC1900原厂固件不允许刷入第三方固件,甚至连CFE(Common Firmware Environment)都有区别,无法使用Merlin固件。
所以在买到TM-AC1900之后,如果想用Merlin固件的话,还要进行一系列折腾,首先要做的就是将CFE刷成RT-AC68U的CFE,之后还要刷入RT-AC68U的固件,以便刷入Merlin。刷写CFE的工作需要通过Telnet远程登录到路由器上才可以进行,但是目前市面上销售的TM-AC1900都把开启Telnet的功能屏蔽掉了。针对这个问题,国内的教程里都是让大家先降级到旧版本的固件,因为旧版本固件没屏蔽这个功能。不过降级过程本身也很复杂,而且我发现现在销售的TM-AC1900的固件版本比教程上写的要新,教程里给出的降级方法未必能成功。
不过,经过仔细观察可以发现这个TM-AC1900的固件,其实只是把开启Telnet功能的界面给屏蔽掉了,后端功能依然存在,而且屏蔽的方法很低级,所以只要用一些简单的手段,就可以不用降级直接开启Telnet。
首先,你需要准备一个带有Web调试/开发功能的浏览器,只要是比较新的浏览器,比如Chrome/Firefox/Edge都可以。
之后,打开TM-AC1900的配置界面,进入到Administration -> System (系统管理 -> 系统设置),默认情况下,这个页面的地址是http://192.168.29.1/Advanced_System_Content.asp。
进入浏览器的开发者模式,一般是按F12。之后切换到DOM/Element查看编辑模式,并查找“telnet”,应该会找到以下代码:
<tr id="telnet_tr" style="display: none;">
<th>Enable Telnet</th>
<td>
<input type="radio" name="telnetd_enable" class="input" value="1" disabled="">Yes
<input type="radio" name="telnetd_enable" class="input" value="0" checked="" disabled="">No
</td>
</tr>
将这段代码修改成
<tr id="telnet_tr" style="">
<th>Enable Telnet</th>
<td>
<input type="radio" name="telnetd_enable" class="input" value="1" >Yes
<input type="radio" name="telnetd_enable" class="input" value="0" checked>No
</td>
</tr>
这时你就会看到开启Telnet的选项出现了,选择Yes后保存即可开启Telnet。
本作品使用基于以下许可授权:Creative Commons Attribution-NonCommercial 4.0 International License.
后面如何刷CFE
刷CFE的方法与其他教程中的方法一致,一般都是通过TELNET。本文说的这个方法只是开启TELNET的方法。
进入浏览器的开发者模式,一般是按F12。之后切换到DOM/Element查看编辑模式,并查找“telnet”,应该会找到以
F12之后不会弄了,查找不到telnet
如果找不到telnet,你的固件版本可能比较新,新版固件据说已经堵上这个漏洞了
我的是固件版本:3.0.0.4.376_3199,这个方法可以显示,但好像改了没有用,TELNET还是连不上路由器,按reset进入CFE mini web也无法刷固件,除了拆芯片下来就没有其他办法了吗?
如果网上说的方法都无效的话,应该就只能拆芯片了。
3199版本不行,打开了也telnet不同。没救了……