|
本帖最后由 友谊 于 2024-1-8 06:02 编辑
现在是2021-06-08
我总结一下我买了这个路由器以后的折腾过程吧
############################
首先如果想折腾的玩家必须要了解路由器的启动知识
说一下路由器的启动过程:
通电以后路由器会启动引导区
然后这个引导区再根据reset键是否被按住选择操作
如果没有按住reset键,就引导系统启动
如果按住了reset键,就启动高级功能
那种傻瓜式的路由器用牙签按住reset,然后通电,路由器就不会正常的启动系统,而是执行“恢复出厂设置”这个操作
高档一些的路由器用牙签按住reset,然后通电,路由器就会进入一些特殊界面,可以使用各种功能,比如进行刷固件的操作(甚至可以根据按住reset键的时间长短来执行不同的功能)
一些路由器品牌为了限制用户刷第三方系统会修改引导区,导致不能稳定停留在引导区,这个时候就需要把引导区换成别的
############################
这台路由器的第三方bootloader有2种
最开始是有大神发布了PB-BOOT
现在有另外一个大神开发了BREED
这个是开发BREED的大神
https://www.right.com.cn/forum/thread-161906-1-1.html
这个是BREED下载地址
https://breed.hackpascal.net/
R6220用的BREED是breed-mt7621-r6220.bin
############################
然后我说一下我的折腾过程吧
最开始,我想尝试刷刷其他系统,然后就找了很多教程
刷系统第一步是刷第三方的bootloader,当时用的是PB-BOOT
这台路由器官方固件默认没有开启telnet,需要先开启telnet
############## 下面是开启telnet的方法(我改了路由器的LAN口IP为192.168.11.254)
1.打开有root的telnet权限
使用浏览器打开: http://192.168.11.254/setup.cgi?todo=debug 会看到 Debug Enabled ! 字样。说明已经开启了Telnet连接
2.telnet 192.168.11.254
输入root然后回车,这个时候进入的就是具有管理员权限的界面(如果输入路由器的账号密码进入的是普通权限的界面,普通权限不能进行刷机操作)
3.备份本身的固件
输入命令 cat /proc/mtd显示所有固件。
把固件备份到移动硬盘里面
cd /tmp/mnt/shares/U
dd if=/dev/mtd0 of=/tmp/mnt/shares/U/Bootloader.bin
dd if=/dev/mtd1 of=/tmp/mnt/shares/U/SC-PID.bin
dd if=/dev/mtd2 of=/tmp/mnt/shares/U/Kernel.bin
dd if=/dev/mtd3 of=/tmp/mnt/shares/U/Rootfs.bin
dd if=/dev/mtd4 of=/tmp/mnt/shares/U/English-UI.bin
dd if=/dev/mtd5 of=/tmp/mnt/shares/U/ML1.bin
dd if=/dev/mtd6 of=/tmp/mnt/shares/U/ML2.bin
dd if=/dev/mtd7 of=/tmp/mnt/shares/U/ML3.bin
dd if=/dev/mtd8 of=/tmp/mnt/shares/U/ML4.bin
dd if=/dev/mtd9 of=/tmp/mnt/shares/U/ML5.bin
dd if=/dev/mtd10 of=/tmp/mnt/shares/U/Factory.bin
dd if=/dev/mtd11 of=/tmp/mnt/shares/U/SC-Private-Data.bin
dd if=/dev/mtd12 of=/tmp/mnt/shares/U/POT.bin
dd if=/dev/mtd13 of=/tmp/mnt/shares/U/Traffic-Meter.bin
dd if=/dev/mtd14 of=/tmp/mnt/shares/U/DPF.bin
dd if=/dev/mtd15 of=/tmp/mnt/shares/U/SC-Nvram.bin
dd if=/dev/mtd16 of=/tmp/mnt/shares/U/Ralink-Nvram.bin
dd if=/dev/mtd17 of=/tmp/mnt/shares/U/Ralink-Reserved.bin
dd if=/dev/mtd18 of=/tmp/mnt/shares/U/ML6.bin
dd if=/dev/mtd19 of=/tmp/mnt/shares/U/Upgrade-Flag.bin
dd if=/dev/mtd20 of=/tmp/mnt/shares/U/Reserved-Block3.bin
dd if=/dev/mtd21 of=/tmp/mnt/shares/U/Reserved-Block4.bin
##############
把这些备份留着吧
然后就可以刷入PB-BOOT了
刷入pb-boot
wget http://xdd.co/router/pb-boot-r6220.bin (这个命令是获取pb-boot的文件,目前链接已经失效,没有网络的话可以用U盘)
mtd_write write pb-boot-r6220.bin Bootloader
看到 Unlocking Bootloader ...
Writing from pb-boot-r6220.bin to Bootloader ... [w]
说明pb-boot 刷好了,我们已经是不死uboot了。 可以随意折腾固件了。
然后重启路由器,用牙签按住reset键,就会进入pb-boot界面(注意:如果你的系统是win10装了hyper-v,是ping不通192.168.1.1的,需要在hyper-v设置界面删除虚拟交换机才行)
然后在pb-boot界面刷入其他固件就行了
##############
继续说我的折腾过程
我先后刷了LEDE 潘多拉 等多个版本的固件
然后最后刷了OPENWRT用了段时间,然后又刷回官方固件
#######
刷回官方的方法是:
下载这个固件 http://xdd.co/router/r6220_v11034.bin (现在这个下载地址已经失效了,而且现在有breed已经不需要这样刷了)
然后在 pb-boot 界面上传刷新即可
#######
刷回官方以后boot还是pb-boot,导致不能在管理界面更新到官方的最新版
解决方法是:
要在telnet下刷入上面备份的几个文件
需要用到U盘
首先把上面备份的文件全部复制到U盘,然后把U盘插到路由器上
然后执行第一步打开telnet权限
然后telnet连接路由器
然后输入命令cd /mnt/shares/U
ls查看一下
必须要有Bootloader.bin Kernel.bin Rootfs.bin这3个文件
然后输入下面的3个命令
mtd_write write Bootloader.bin Bootloader (这个命令的意思是把bootloader还原为官方的,这条命令执行完毕以后pb-boot就没了)
mtd_write write Kernel.bin Kernel (这个命令我也不知道是什么意思,但是我执行完毕了没问题)
mtd_write write Rootfs.bin Rootf (这个命令估计就是还原到备份的文件系统吧,反正执行完毕没问题)
然后重启路由器
然后路由器就还原到了我们之前备份的样子
这个时候就可以检测更新了,就可以自动更新到最新版了
#######
然后我又用了这个官方固件一段时间,感觉又想折腾,就又刷了OP 19.07.5
这个版本R6220基本可以说是完美使用了,我在这个版本里面折腾过smartdns,折腾过提子
以上就是我买了这个路由器的折腾过程
然后就是今天2021-06-08
我又感觉不刷不舒服斯基,我就先把OP更新到19.07.7,然后用了一会,感觉不行,ping LAN口竟然会又丢包
然后就想试试看官网原版的固件怎么样了,就去官网看了看
官网最新版的固件是R6220-V1.1.0.106_1.0.1
我就想着试试看这个最新版的固件如何,就开始刷了
##############
先刷breed的bootloader
openwrt开启了ssh以后就可以用winscp登录了,然后进putty
查看分区名称 cat /proc/mtd
R6220 刷了OPENWRT 19.07.7以后分区名如下
dev: size erasesize name
mtd0: 00100000 00020000 "u-boot"
mtd1: 00100000 00020000 "SC PID"
mtd2: 00400000 00020000 "kernel"
mtd3: 01c00000 00020000 "ubi"
mtd4: 00100000 00020000 "factory"
mtd5: 03c00000 00020000 "reserved"
然后
mtd write /tmp/breed-mt7621-r6220.bin u-boot
提示Could not open mtd device: u-boot
因为op禁止对bootloader区域进行写入
需要先安装kmod-mtd-rw
安装过程如下:
opkg update (这一步需要路由器能正常上网,如果不行,需要下载kmod-mtd-rw的安装包,拷贝进去安装)
opkg list |grep "mtd" 会发现有kmod-mtd-rw
然后opkg install kmod-mtd-rw
就装好了
然后使用命令
insmod mtd-rw.ko i_want_a_brick=1
(这个命令的作用是载入kmod-mtd-rw 模块,让用户可以写各个分区)
然后mtd write /tmp/breed-mt7621-r6220.bin u-boot 就刷入breed了
(这个命令是openwrt的命令,u-boot是op的bootloader分区的名称,如果想在官方的固件下直接刷breed
命令是mtd_write write breed-mt7621-r6220.bin Bootloader)
然后把电脑的ip设置为192.168.1.2
重启路由器 牙签按住reset键
ping 192.168.1.1 -t 通了以后就可以松开牙签
然后就可以打开浏览器访问192.168.1.1 就能看到breed界面了
然后在breed下上传官方的固件R6220-V1.1.0.106_1.0.1.img 就行了
这个版本的官方固件竟然在管理界面插广告,还好影响不大
测试了一会,发现没有LAN口的丢包现象了
至于体验还待考验
以上就是我买了路由器的折腾过程了
#############再次更新2021-06-15
由于想弄IPV6,在家里的服务器上弄软路由,最后的结果是只有21.02.0-rc2可以正常使用IPV6
然后就把这个路由器也刷了openwrt的21.02.0-rc2系统
然后使用暂时没问题,为了IPV6 也是为了极客精神 以后还是能刷OP的尽量刷OP吧
目前家里2个路由器 一个AC9 博通8+128被我刷了华硕的8M固件在用 然后这个路由器由于无线信号不如AC9目前暂时吃灰
#############再一次更新2022-04-10
网络环境是R6220关闭了LAN口的DHCP,纯当交换机和提供无线功能
然后最近感觉网络不稳定,就ping了一下,然后发现ping软路由不丢包,但是偶尔有几个延迟比较大的
然后就ping R6220的LAN口地址,然后发现竟然有时候会直接丢包 是没有任何症状的直接丢包,搞不懂openwrt这个系统出什么问题了
我感觉还是op不太稳定,就又刷回官方了
然后设置了WIFI LAN口地址 关闭了DHCP
然后重新通电,网线插错了,把软路由的那根网线插到WAN口了,结果这个R6220的WAN口获取了一个IP,网段和LAN口的冲突,结果LAN口的IP消失了,我把网线插回来,重启路由器,都无法找到LAN口地址(这么严重的bug),看来只能进breed恢复出厂设置了,不过幸好之前就配置好了,各种设置都不用动,暂时就这样用了
这台路由器用了这么久,来来回回的刷系统,最终还是回到了官方系统
看来买路由器还是不要乱刷系统了
#########################又一次更新2023-04-20
官方的系统总是感觉有点问题,于是又刷了openwrt
这次刷的时候breed有新版 用了新版breed
刷的openwrt22.03.4
目前发现一个小问题就是路由器的5G默认是80mhz,实际上这个路由不支持80m,改为40M就好了
其他没啥问题,用了两天没啥问题
不得不说这个路由器是真NB,用了这么久还好好的
唯一的缺点就是信号弱,隔一个房间就几乎没信号,但是在房间内还是非常稳定的,我用的iphone, 7 XSMAX 11从来没出现过无线问题
刚刚顺便查了订单,京东 2017-02-21买的 6年多了,这个路由器还是这么稳 而且竟然还有op的更新
########################继续更新2023-11-07
换了新手机SE3 然后感觉无线总有点问题,连了无线访问家里的NAS经常没速度
就想刷回原版试试
然后在breed界面刷了原版的img文件
R6220-V1.1.0.62_1.0.1.img
R6220-V1.1.0.106_1.0.1.img
R6220-V1.1.0.114_1.0.1.img
我先后刷了这3个官方img文件
重启以后电脑能获取到IP
但是死活ping不通LAN口IP,用端口扫描也发现80端口没开
查看arp发现mac是00-c0-02-12-35-88(这是一个错误的mac,3个官方img都显示的是这个mac)
我怀疑可能是breed的问题(目前最新版还是2022-07-24的)
也就是说貌似没法刷回官方版本了
最后我还是刷回openwrt22.03.4了
然后在网页里面更新到了23.05.0-rc4
##########################我又来更新了 2024-01-08
这次我插了个U盘到路由器上,然后开了共享
简单的说一下过程
我用的是官方原版的openwrt
先安装这个包
opkg install kmod-usb-storage-uas
然后从新拔插U盘
然后安装fdisk
opkg install fdisk
然后用fdisk -l就能看到U盘了
我的32G的U盘 在WIN10上分的区 并格式化 不知道为什么第一个分区被识别为了800多G第二个分区0 第三个分区几K 估计分区有问题,我直接删了所有分区重新分了一个区
分完区死活不能格式化,我直接把U盘拔下来,插到WIN10的电脑上 格式化为了NTFS
然后往里面随便建立了个文件夹和文本文档
然后继续操作路由器
安装ntfs文件格式支持
opkg install kmod-fs-ntfs3
装完这个把U盘插到路由器上
现在用fdisk -l 就能看到U盘的分区信息了,正确的识别出了ntfs格式
然后挂载
mount /dev/sda1 /mnt/usb
能识别出U盘里面的文件了
最后安装samba提供共享功能
opkg install samba4-server
装完server我的R6220就没空间装client了
没事,直接命令行配置共享
直接编辑/etc/samba/smb.conf
在最下面添加
[gongxiang]
comment = gongxiang
path = /mnt/usb
public = yes
writable = yes
保存退出
然后重新启动共享
输入命令smbd
现在在电脑上访问路由器的共享就能看到U盘里面的文件了
最后的收尾工作:
开机自动挂载
把上面的mount命令添加到启动脚本里面
编辑/etc/rc.local 或者用网页访问路由器,然后添加
开机自动启动共享
上面的smb.conf文件是个链接,重启会重置 搞不懂为什么要这么弄,直接删除链接就行了,文件会自动保留
这样就好了
目前路由器重启以后也有共享了
缺点就是第一次访问共享要等待几秒钟
然后我尝试往里面复制了一个3G的文件,速度16M/s 可用
目前这台路由器提供了KMS服务和共享
(KMS的文件是vlmcsd-mips32el-openwrt-uclibc-static)
刚好榨干这台路由器的所有价值
|
|