目前竞斗云2.0 官方固件版本升级至 2.5.11.82 后可轻松刷入第三方固件,这简化了我们刷机的流程。

事前准备:

  • 电脑、网线、全新 / 已恢复出厂 的竞斗云2.0
  • 请先给路由器通上电后用网线将电脑连接至路由器的 LAN 口
  • 下载好下列文件:

竞斗云2.0 刷机相关文件

文件名 md5sum 描述 下载
openwrt-ipq40xx-R9.11.22-unlock-p2w_r619ac-squashfs-nand-factory.bin d3e8d29d1a37872f37f9070fabb9a7a2 OpenWrt 过渡包,在竞斗云官方固件更新后刷入 链接
opboot-p2w-r619ac-flash-v1.0.8.bin c3c0efd25aa18ee505debb3a90d75fe3 OpBoot文件,刷入过渡包后刷入 链接
openwrt-ipq40xx-R9.11.23-p2w_r619ac-squashfs-nand-sysupgrade.bin 856e7571263398a8c976cbf721ac821c 刷完OpBoot后,最后刷入的OpenWrt固件 链接

推荐 使用梯子在 MEGA 网盘下载相关文件,当然您也可以直接点击表格中的链接下载。

官方固件更新并刷入 OpenWrt 过渡包

  1. 浏览器访问 192.168.7.1 ,进入官方固件的管理页面。
  1. 选择 「 自动获取(DHCP模式) 」 ,下一步

  2. 设置 WiFi 名称和密码,密码可为空,下一步

  1. 输入设置的密码,「 登录 」(如果没设置密码直接点登录即可)
  1. 这就进入了主界面,我们点击 「 高级设置
  1. 点击 「 升级检查 」 -> 「 检查升级
  1. 升级提醒 处点击 「 确定
  1. 正在升级系统,请不要关闭电源…
  1. 升级完成后浏览器会重新进入路由器管理界面,重新输入设置过的密码登录即可。此时我们在主界面点击 「 高级设置 」 -> 「 升级检查 」 ,这里已经可以看到在新版官方固件(版本号为 2.5.11.82 )多了上传固件更新系统的功能。如图:
  1. 点击 「 选择文件 」 ,选中过渡包(即 openwrt-ipq40xx-R9.11.22-unlock-p2w_r619ac-squashfs-nand-factory.bin ),无需保存配置,点击 「 开始刷入 」 即可。
  1. 正在升级系统,请不要关闭电源…
  1. 刷完固件后,原有的 192.168.7.1 已经无法访问了,OpenWrt 的默认管理地址是 192.168.1.1 ,在浏览器的地址栏输入 192.168.1.1 即可。

如果能访问 OpenWrt 登录界面即表示正常刷入固件(此处我们无需登录),如图:

到这里,如果您是 Windows 用户,建议看 Hyejeong 的针针小站一文 —— 【Router】G-DOCK 竞斗云2.0 小白刷机教程

电脑上安装 OpenSSH

注意: 本人电脑使用的 Linux 发行版本是 Arch Linux,其默认的软件包管理器是 pacman 。请根据您使用的发行版本选择合适的包管理器安装 openssh

电脑上打开终端模拟器执行命令:

1
[eric@arch ~]$ sudo pacman -S openssh

将电脑上的 OpBoot 文件 ( opboot-p2w-r619ac-flash-v1.0.8.bin ) 复制到路由器

将文件从本地主机复制到远程主机,用法如下:

scp local_file_path username@host_ip:/remote/directory/

操作实例

注意: 默认密码是 password

1
2
3
4
5
6
7
[eric@arch ~]$ scp '/home/eric/OpBoot/opboot-p2w-r619ac-flash-v1.0.8.bin' root@192.168.1.1:/tmp
The authenticity of host '192.168.1.1 (192.168.1.1)' can't be established.
RSA key fingerprint is SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '192.168.1.1' (RSA) to the list of known hosts.
root@192.168.1.1's password:
opboot-p2w-r619ac-flash-v1.0.8.bin 100% 1472KB 3.6MB/s 00:00

SSH 登录到路由器

ssh 登录到远程服务器,用法如下:

ssh username@server-address

操作实例

注意: 密码和前面输入的是同一个,即 password

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
[eric@arch ~]$ ssh root@192.168.1.1
root@192.168.1.1's password:


BusyBox v1.30.0 () built-in shell (ash)

_______ ________ __
| |.-----.-----.-----.| | | |.----.| |_
| - || _ | -__| || | | || _|| _|
|_______|| __|_____|__|__||________||__| |____|
|__| W I R E L E S S F R E E D O M
-----------------------------------------------------
OpenWrt SNAPSHOT, r1673-ea47656
-----------------------------------------------------
root@OpenWrt:~#

读取路由器的分区表

前面已经登录到路由器的 shell 了,所以命令是在路由器上执行的了。

1
2
3
4
5
6
7
root@OpenWrt:~# cat /proc/mtd
dev: size erasesize name
mtd0: 04000000 00020000 "rootfs"
mtd1: 04000000 00020000 "unused1"
mtd2: 00170000 00010000 "Bootloader"
mtd3: 00010000 00010000 "ART"
mtd4: 00e80000 00010000 "unused"

只要查询到分区里含有 Bootloader ,就可以继续下面的刷写 Bootloader 的操作了。

校验路由器上的 OpBoot 文件

1
2
root@OpenWrt:~# md5sum /tmp/opboot-p2w-r619ac-flash-v1.0.8.bin
c3c0efd25aa18ee505debb3a90d75fe3 /tmp/opboot-p2w-r619ac-flash-v1.0.8.bin

opboot-p2w-r619ac-flash-v1.0.8.bin 的 md5 值是:
c3c0efd25aa18ee505debb3a90d75fe3 ,如果对的上即可放心刷入。

刷写 OpBoot 到 Bootloader

1
2
3
4
5
6
root@OpenWrt:~# mtd -r write /tmp/opboot-p2w-r619ac-flash-v1.0.8.bin Bootloader
Unlocking Bootloader ...

Writing from /tmp/opboot-p2w-r619ac-flash-v1.0.8.bin to Bootloader ...
Rebooting ...

注意: 此处 Rebooting… 并不会自动退出,想要知道是否重启完,浏览器直接访问 192.168.1.1 如果能访问 OpenWrt 的登录界面则表示已经重启完成。此时你可以手动关闭电脑的终端模拟器了

进入 OpBoot

先拔掉路由器的电源,长按路由器背面的 reset 按键( 不要松开 ),然后重新插上电源,直到 跑马灯跑完 (即 LAN的 指示灯4,3,2,1 依次闪过,最后LAN口的指示灯全亮,过后又熄灭),这时就可以松 reset 键了。然后浏览器直接访问 192.168.1.1 ,这样就能进入 OpBoot 了。

备份ART

主界面下点击 「 高级功能 」 -> 「 数据备份 」 -> 「 执行 」 ,浏览器会将 art.bin 自动下载到你的电脑上。

备份编程器固件

刷新下浏览器然后在 「 备份分区 」 处选择 编程器固件 ,然后再点击 「 执行 」 ,浏览器会将 all.bin 自动下载到你的电脑上。

更新 OpenWrt 固件

注意: 你可以在之前刷入的 OpenWrt 管理界面里更新固件,当然你也可以继续留在 OpBoot 更新固件。

  1. 返回 OpBoot 主菜单
  1. 浏览文件 」 ,选中需要使用的 OpenWrt 固件 ( openwrt-ipq40xx-R9.11.23-p2w_r619ac-squashfs-nand-sysupgrade.bin ) ,然后点击更新即可。
  1. 浏览器重新访问 192.168.1.1 ,如果访问的是 OpenWrt 的登录界面即表示更新完成。

注意: 密码默认是 password

  1. 输入密码登录成后即可进入 OpenWrt 的主界面
  1. 建议执行一次重置。

系统 」 -> 「 备份/升级

执行重置

确认重置

重置完后浏览器会重新回到 OpenWrt 的登录界面。

美化 OpenWrt 的管理界面

默认的 OpenWrt 主题很是复古,这里我要介绍的是我很喜欢的一个主题,名字叫做 luci-theme-argon

操作实例

  1. 点击此处跳转到主题包release页面,下载最新版本的 *.ipk 文件即可

  2. 重新接受路由器的密钥

注意: 因为路由器前面经过重置,所以路由器的密钥会发生改变,所以我们需要在电脑上执行 ssh-keygen -R hostname_or_ip 来移除原有属于路由器的密钥,当再次连接路由器时重新接受路由器的密钥即可。如果不执行此操作将无法建立连接。

使用 man ssh-keygen 命令可以查看下ssh-keygen命令的详细用法:

1
2
3
4
5
6
7
8
9
名称
ssh-keygen - 生成、管理和转换认证密钥
............................................................
............................................................
-R hostname
从 known_hosts 文件中删除所有属于 hostname 的密钥。
这个选项主要用于删除经过散列的主机(参见 -H 选项)的密钥
...........................................................
...........................................................
1
2
3
4
[eric@arch ~]$ ssh-keygen -R 192.168.1.1
# Host 192.168.1.1 found: line 8
/home/eric/.ssh/known_hosts updated.
Original contents retained as /home/eric/.ssh/known_hosts.old
  1. 将主题包文件复制到路由器,电脑上打开终端模拟器,执行以下命令:
1
2
3
4
5
6
7
[eric@arch ~]$ scp '/home/eric/Downloads/luci-theme-argon_1.3-01-20191111_all.ipk' root@192.168.1.1:/tmp
The authenticity of host '192.168.1.1 (192.168.1.1)' can't be established.
RSA key fingerprint is SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '192.168.1.1' (RSA) to the list of known hosts.
root@192.168.1.1's password:
luci-theme-argon_1.3-01-20191111_all.ipk 100% 1138KB 2.9MB/s 00:00
  1. 登录到路由器:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
[eric@arch ~]$ ssh root@192.168.1.1
root@192.168.1.1's password:


BusyBox v1.30.0 () built-in shell (ash)

_______ ________ __
| |.-----.-----.-----.| | | |.----.| |_
| - || _ | -__| || | | || _|| _|
|_______|| __|_____|__|__||________||__| |____|
|__| W I R E L E S S F R E E D O M
-----------------------------------------------------
OpenWrt SNAPSHOT, r1673-ea47656
-----------------------------------------------------
root@OpenWrt:~#
  1. 使用 opkg 安装主题包 luci-theme-argon
1
2
3
4
5
6
7
root@OpenWrt:~# opkg install /tmp/luci-theme-argon_1.3-01-20191111_all.ipk
Installing luci-theme-argon (1.3-01-20191111) to root...
Configuring luci-theme-argon.
uci: Entry not found
uci: Entry not found
uci: Entry not found
root@OpenWrt:~#

这个时候再用浏览器访问 192.168.1.1 ,就已经是应用了新主题啦。

到这里教程也算是结束了,后续的配置就与本教程无关了。

后续更新(OpBoot 1.0.9 + 128 MB OpenWrt)

文件名 md5sum 描述 下载
opboot-p2w-r619ac-flash-v1.0.9.bin c7d6d14b04d055bf27dad9d9c5d58c7d OpBoot 文件,用命令刷入 链接
opboot-p2w-r619ac-nor-v1.0.9.img 1eec34ed68043cc601b9a0225a1a3502 OpBoot 文件,在 OpBoot 里更新刷入 链接
openwrt-ipq40xx-p2w_r619ac-128MB-squashfs-nand-factory.ubi 0083bbf4b6a5eaf1beb896518f4d6057 OpenWrt 固件,在 OpBoot 里刷入 链接

推荐 使用梯子在 MEGA 网盘下载相关文件,当然您也可以直接点击表格中的链接下载。

OpBoot 升级说明

竞斗云 2.0 的 NAND 闪存大小是 128 MB,但前期的 OpBoot 仅支持 64 MB 大小,相应的 OpenWrt 固件也是 64 MB 的,也就是说实际可用的空间仅 64 MB。自从 OpBoot 升级至 1.0.9 之后即可支持竞斗云 2.0 的 128 MB 的 NAND 闪存。

注意: 切勿混刷 opboot-p2w-r619ac-flash-v1.0.9.binopboot-p2w-r619ac-nor-v1.0.9.img,xxxflashxxx.bin 那个仅通过命令刷入,xxxnorxxx.img 那个则通过 OpBoot 内置的更新功能刷入。自己选错刷入固件后果自负~

下面是更新到 OpBoot 1.0.9 的步骤说明 (有 2 种方法) :

方法 1

使用前面通过 scp 命令将 OpBoot 1.0.9 固件 ( opboot-p2w-r619ac-flash-v1.0.9.bin ) 上传至路由器的 /tmp 目录下,ssh 登录到路由器的 shell 然后执行下面的命令刷入即可(事前 请先校验 文件的md5值是否匹配):

1
root@OpenWrt:~# mtd -r write /tmp/opboot-p2w-r619ac-flash-v1.0.9.bin Bootloader

方法 2

您也可以通过 OpBoot 内置的更新功能刷入 opboot-p2w-r619ac-nor-v1.0.9.img 。通过如下操作刷入:

首先让路由器进入 OpBoot (怎么进入就不多说了,自己翻一翻前面的描述),然后点击 OpBoot 的右上角的 「 高级功能 」 -> 「 更新OpBoot 」 ,找到 opboot-p2w-r619ac-nor-v1.0.9.img 更新即可。

OpenWrt 128 MB 分区固件刷入说明

经过前面刷入 OpBoot 1.0.9 之后,您就可以刷入 128 MB 分区的 OpenWrt 了。更新 128 MB 的固件后,你就可以使用之前 64 MB 分区的固件所无法利用的空间了,也就是说你可以用更多的空间装路由器的插件啦。

因为需要重建 ubi 分区,所以更新过程需要通过 OpBoot 1.0.9 版本刷入 ubi 固件 ( 即 openwrt-ipq40xx-p2w_r619ac-128MB-squashfs-nand-factory.ubi )

所以你只需要让路由器进入 OpBoot ,然后直接选择 128 MB 分区的 ubi 固件更新就完成了。

鸣谢

最后,得在此感谢 mleaf 大佬提供的 OpBootlean 大佬提供的 OpenWrt 固件,同时我还要感谢那些我参考的文章作者。如果没有他们的努力成果,也就没有这篇文章的诞生啦

参考链接:

  1. 竞斗云2.0(R619AC)OpBoot1.0.6刷机教程
  2. 【Router】G-DOCK 竞斗云2.0 小白刷机教程

评论