MoreRSS

site iconReiAC修改

Retired ICPCer / 长三角活动 / ArchLinux User / SC2 Grandmaster in Hibernate CN Server
请复制 RSS 到你的阅读器,或快速订阅到 :

Inoreader Feedly Follow Feedbin Local Reader

ReiAC的 RSS 预览

方程豹钛7

2025-12-03 23:09:39

Featured image of post 方程豹钛7

换车与选车

从 2019 年高中毕业拿到驾照到我工作两年,我开的车一直是家里的 Audi A6L 55TFSI Quattro 车型,说实话我相当喜欢这辆车,底盘稳定可靠,动力跟脚,机械结构上除了发动机烧机油外没见过啥问题,让我信心十足的度过了我的新手驾驶期。

不过工作两年后,我需要在杭州买一辆车,需要满足以下条件

  1. 品牌无所谓,家里一直开的是BBA,我自己没啥情怀
  2. 某方面的技术领先(这点其实淘汰了日系,只留下了德系(发动机/底盘技术领先)和国产车(三电技术领先))
  3. 买起来比较简单……别那种换电租电什么方案一堆的
  4. 我自己的现金流支持全款买

算了一下自己可以拿出来的流动资金,最开始的换车计划选了以下三台车(当然我实际上不止试驾了三台)

  • Xiaomi YU7 Pro
  • Tesla Model Y
  • Audi Q6L

一些试驾与感受

Xiaomi YU7 Pro

好开,好车,我各个方面都很喜欢,但是提车要38周,遂放弃

如果不是提车慢,这篇文章就是小米YU7了

Tesla Model Y

好开,底盘稳,动力强,操控灵

但是我不好说这是不是一辆好车

作为一个一直坐家中BBA传统油车长大的人,我认为,车内座舱的体验也是驾车很重要的一部分,特斯拉的内饰真不太行

老生常谈的 屏幕换档 方向盘按键转向灯 也是我觉得难受的地方

Audi E5

不错,但是没有四个圈不好看

Audi Q6L

油改电真不行吧

焕新极氪7X

家里人听说是吉利车:吉利车,天~窗~漏~水~啦~

哈哈,台州人对吉利的刻板印象来了

不过认真的说,吉利车不差,油的部分比BYD好,我觉得是无可争议的国产第一,但是电的部分确实比不上BYD

方程豹钛7

说起来我最开始不认识这个牌子,但是滨江展厅开在吉利店边上,路过的时候看到里面摆了一辆钛7,外观看上去很霸气,于是加了销售的微信,预约了第二天的试驾。

试驾后的体验确实还可以,问了一下知道是BYD的车

BYD的车到还有个好处,车机开adb折腾方便

福特智趣烈马(云)

这个车处于发布但是没有开售,不过我还挺喜欢的,所以在这里云一下

BRONCO 作为美系车驾驶方面不会差

但是他是个增程车,高速油耗比插混高(废话,你都买美系了还在意油耗?)

越野方面作为老牌美系车,给的比钛7多,还给了个全尺寸备胎

从已发布的信息上看是个好车但是还在预售中,买不到也试不到

确定购买与提车

说实话,试完之后感觉方盒子车真的视野好,且空间大更舒适,所以于 10.19下订, 11.04提车,相对于之前刚开始想的三台车(30W左右),实际上是省钱了哈哈

提车流程反正就那一套,方程豹的客餐还可以,不过橘子是酸酸的

主要是原先自己想要的三台车试驾后,都有些当时不可接受的问题,这个车正好还挺符合我各方面爱好和习惯的,而且比亚迪的三电技术也不错

1000KM 后

一千公里其实也没多少,开出去和朋友在钱塘江钓鱼玩玩之类的,然后从杭州开次高速回台州老家就差不多了。

底盘上,没有之前开A6L的信心足,跑一次高速就很明显能感受到,不过这两车也不在一个价位,这车二十来万,快一米九高,哪怕电池在车底带来天然的稳定性,和能买两台钛7的A6L对比确实有点欺负他了

动力上,不得不说这套插混系统真的是天才,太有力了兄弟,这也是电机系统领先于内燃机的地方

操控,灵活,好

银欣 CS382 装机

2025-04-06 05:36:06

Featured image of post 银欣 CS382 装机

为什么要更换机箱

INWIN 的 MS04 作为 NAS 机箱在我这服役多年,承载了 凄惨红H61 + i5-3470 和 华擎H97M-ITX/ac + E3-1265Lv3 两代硬件,当我这几天想给他升级 B760I + i3-12100 时,机箱的原装电源终于是吃不太消,来自 1U 电源风扇轴承的声音到达了一个让人难以忍受的程度。

为了拯救这个老机器,我还尝试购买了一下海韵的 350M1U 电源更换上去,当时看中的是海韵的 50% 以下电源负载时风扇停转功能。但是这个电源,在 MS04 这个箱子里的散热有点问题,导致虽然时低负载情况下,依旧会在开启一段时间后积热,然后风扇开始转动,海韵给这个电源配备了恐怖的万转风扇,这个风扇在这种情况下并未全速运行,但是依旧有令人讨厌的声音。

还有一点就是,原机上是 4*14T 的 WD HC530 硬盘,其实也有点不够用

终于,在清明节晚上大半夜,我决定是时候光荣退役这台 MS04,换个新的 8 盘位 NAS 机箱。

机箱选型

考虑过以下几个机箱选型

迎广 MS08

那么大一个箱子,明明不缺空间,用的却是 1U 电源,排除

银欣 DS380

虽然是个8盘位箱子,但是硬件兼容性还是小机器那套,排除,不过体积确实小

宝藏盒 Pro

小作坊的定制产品,我还挺喜欢,用的曙光的金属盘架,不过非常贵,1399,排除

银欣 CS380

发布有些年头了,兼容 ATX 主板,塑料盘架,黄鱼400块,京东700块

银欣 CS382

最终选用了这款,兼容 mATX 主板,塑料盘架,京东899,单纯觉得看着比 CS380 顺眼就买了。

电源

电源没啥好说的,海韵和振华的十年质保系列看哪个便宜买哪个就好了。不过离谱的是,刚好赶上振华打折,750W比650W便宜,那就买个750W好了(不过说到底,这套配置哪怕硬盘插满可能连 200W 都到不了吧)

电源包装

电源开箱

顺带说一下振华的新版电源,之前买HG850的时候,他的模组线有送个布袋,但是现在这个新版750W没了,不过附带的新版模组线,比以前的线软了很多很多,好插多了。

装机

很普通的装机,看我博客的人应该不需要看装机过程,很好装的机箱

B760M 刀锋钛

MSI B760M 刀锋钛 这张主板自带 6SATA,把芯片组自带的 SATA 接口全部引出。并且选择 MSI 的主板有个好处, BIOS 里面就可以直接把 RGB 灯光彻底关闭

值得说的一点就是,硬盘笼上的 SATA/SAS 接口是不兼容右向弯头线材的

SATA线材冲突

以及盘架是类似群晖那种,我并不喜欢,建议直接兼容戴尔的服务器盘架算了,不过相比群晖,给了一个螺丝孔加固

盘架

DELL 的 H730 卡在更新最新的固件之后可以直接在 BIOS 里面更改为 HBA 卡模式, TrueNAS 推荐使用 HBA 卡模式, 由 ZFS 直接控制硬盘, 如果是 OMV 之类或者其他 btrfs 的系统, 这里还是建议打开硬件 RAID

不过说实话之前那台 NAS 虽然用的是 TrueNAS 但是其用了 Intel RAID, 然后在 ZFS 里面直接选择条带模式。

其实用更便宜的 DELL H330 HBA 卡就行了, 用 H730 主要是因为这张卡现在可以设置为, 在非 RAID 模式下也使用 DDR Cache

DELL PERC9 H730

storcli 查看, H730 工作在 HBA 模式下的温度只有 42 度

机箱前面板,我到手才知道,这个箱子不仅有一个标准的光驱位,还有个超薄光驱位

前面板

和MS04的合照

和H5 Flow的合照

UPS

由于我现在住的公寓非常逆天,电费没了之后,不会给任何提示就断电,所以一台 UPS 还是很有必要的,地铁一小时按群友价去收了一台全新的 APC BK650M2-CH

UPS

在 TrueNAS 中选好驱动即可使用

TrueNAS UPS Config

装完后剩余槽位与后续改进

  1. 3.5盘位 1 个, 该盘位为内置盘位,没有背板,用SATA线直接连接
  2. 薄光驱位 1 个, 考虑后续真的放个光驱进去
  3. 厚光驱位 1 个, 考虑后面买个热插拔 2.5 硬盘拓展笼子或者 E1.S 笼子
  4. 2.5英寸盘位 2 个, 来点 U2 大船
  5. 主板,迟早要把这个 ITX 板子卖了换个大板子

附录

配件价格表

类型 名称 数量 来源 总价(CNY)
机箱 银欣 CS382 1 京东 899
电源 振华 LEADEX III GOLD 750W 1 京东 659
机械硬盘 WD HC530 4 上台NAS继承 0
机械硬盘 东芝 MG08 4 淘宝 3356
M2 SSD (Cache) PM981a 1T 1 上台NAS继承 0
M2 SSD (OS) SN750 500G 1 上台NAS继承 0
RAID 卡 DELL H730 1 咸鱼 279
SAS 线 安费诺一分四服务器拆机 2 咸鱼 38.8
主板 MSI B760M 刀锋钛 1 闲鱼 719
CPU i3 12100 1 黄鱼 499
内存 阿斯加特 16G 7000Mhz DDR5 2 上台NAS继承 0
散热器 AXP90x53 1 上台NAS继承 0
网卡 华为 SP310 1 上台NAS继承 0
UPS APC BK650M2-CH 1 杭州本地群友 299
总价 6748.8

红米 AX6000 刷入 OpenWRT 和 Uboot

2023-10-18 20:30:49

Featured image of post 红米 AX6000 刷入 OpenWRT 和 Uboot

今日 OpenWRT23.05 正式版终于发了,MT7986 和 MT7981 系列芯片终于有 OP 的正式版支持了,于是就海鲜市场三百大洋收了一台 Redmi AX6000 应该是最便宜的 MT7986 路由器了(以及还是 openwrt.org 上文档 最详细的一款 MT7986 路由器)

打开原厂固件的SSH

降级(如果您准备直接TTL刷可以不看这里)

首先先要将路由器降级到 1.0.48 版本固件 在小米的升级界面可以直接选择旧版固件降级,然后系统会告诉你禁止降级,此时看到浏览器上方链接有个 downgrade= 如果后面的数字是 0 则改成 1,是 1(见于 1.0.64 版本固件)则改成 2

打开调试模式

进入 WebUI,登陆后看到的 URL 类似于

1
http://你的路由器IP/cgi-bin/luci/;stok={token}/后面一堆东西

然后将链接改成

1
http://你的路由器IP/cgi-bin/luci/;stok={token}/api/misystem/set_sys_time?timezone=%20%27%20%3B%20echo%20pVoAAA%3D%3D%20%7C%20base64%20-d%20%7C%20mtd%20write%20-%20crash%20%3B%20

这样将会在路由器中执行 echo pVoAAA== | base64 -d | mtd write - crash,然后使用

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

来重启路由器

修改 Bdata

重新登陆路由器 WebUI 此时 token 有变化,记得不要使用之前的链接操作

1
http://你的路由器IP/cgi-bin/luci/;stok={token}/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%20commit%20%3B%20

这条在路由器中执行 bdata set telnet_en=1 ; bdata set ssh_en=1 ; bdata commit

然后使用

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

来重启路由器

接着就可以 telnet 连接路由器了

打开 SSH

首先 telnet 连接到路由器,看到经典的 ARE U OK 彩蛋

然后用 vi 删除 /etc/init.d/dropbear 中 135 行到 137 行,其中内容是

1
2
3
if [ "$flg_ssh" != "1" -o "$channel" = "release" ]; then        
  return 0                                                           
fi

然后使用 /etc/init.d/dropbear start 来启动 dropbear 服务

接着用 passwd 来设置 root 账户的密码后就可以用SSH连接到路由器啦~

安装原厂分区的 OpenWRT

设置启动分区

首先我们使用 cat /proc/mtd 来查看原厂分区长什么样子

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
root@XiaoQiang:~# cat /proc/mtd
dev:    size   erasesize  name
mtd0: 08000000 00020000 "spi0.1"
mtd1: 00100000 00020000 "BL2"
mtd2: 00040000 00020000 "Nvram"
mtd3: 00040000 00020000 "Bdata"
mtd4: 00200000 00020000 "Factory"
mtd5: 00200000 00020000 "FIP"
mtd6: 00040000 00020000 "crash"
mtd7: 00040000 00020000 "crash_log"
mtd8: 01e00000 00020000 "ubi"
mtd9: 01e00000 00020000 "ubi1"
mtd10: 03200000 00020000 "overlay"

有两个启动分区,类似于 AndroidAB 分区

然后使用 cat /proc/cmdline 来查看当前的启动分区,得到类似以下结果

1
2
root@XiaoQiang:~# cat /proc/cmdline
console=ttyS0,115200n1 loglevel=8 firmware=1 factory_mode=1 uart_en=1

如果 firmware=1 当前启动分区为 ubi1,如果 firmware=0 ,当前启动分区为 ubi

以我手上这台 firmware=1 为例,设置下一次的启动分区为 ubi 也就是 mtd8

1
2
3
4
5
6
7
8
root@XiaoQiang:~# nvram set boot_wait=on
root@XiaoQiang:~# nvram set uart_en=1
root@XiaoQiang:~# nvram set flag_boot_rootfs=0
root@XiaoQiang:~# nvram set flag_last_success=0
root@XiaoQiang:~# nvram set flag_boot_success=1
root@XiaoQiang:~# nvram set flag_try_sys1_failed=0
root@XiaoQiang:~# nvram set flag_try_sys2_failed=0
root@XiaoQiang:~# nvram commit

刷入 initramfs

然后为路由器刷入 initramfs 后重启, 我这里为了确保不受到国际互联网连接的影响,直接在本机起了一个 Nginx,互联网连接好的话也可以直接 wget op 的官方源

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
root@XiaoQiang:/tmp# wget http://本机IP/AX6000/openwrt-23.05.0-mediatek-filogic-xiaomi_redmi-router-ax6000-stock-initramfs-factory.ubi
Connecting to 本机IP (本机IP:80)
openwrt-23.05.0-medi 100% |*********************************************************************************************|  8320k  0:00:00 ETA
root@XiaoQiang:/tmp# ubiformat /dev/mtd8 -y -f /tmp/openwrt-23.05.0-mediatek-filogic-xiaomi_redmi-router-ax6000-stock-initramfs-factory.ubi 
ubiformat: mtd8 (nand), size 31457280 bytes (30.0 MiB), 240 eraseblocks of 131072 bytes (128.0 KiB), min. I/O size 2048 bytes
libscan: scanning eraseblock 239 -- 100 % complete  
ubiformat: 240 eraseblocks have valid erase counter, mean value is 0
ubiformat: flashing eraseblock 64 -- 100 % complete  
ubiformat: formatting eraseblock 239 -- 100 % complete  
root@XiaoQiang:/tmp# reboot
root@XiaoQiang:/tmp# Connection closing...Socket close.

Connection closed by foreign host.

其实这一步之后就可以直接跳到 uboot 然后刷入 ubootmod 固件,但是这样风险比较高,如果想这样做的话,这里直接刷入 ubootmod-initramfs-factory.ubi 固件然后直接跳到下一步

设置 uboot-env

这里用于设置总是于 system 0 启动

1
2
3
4
5
6
7
8
fw_setenv boot_wait on
fw_setenv uart_en 1
fw_setenv flag_boot_rootfs 0
fw_setenv flag_last_success 1
fw_setenv flag_boot_success 1
fw_setenv flag_try_sys1_failed 8
fw_setenv flag_try_sys2_failed 8
fw_setenv mtdparts "nmbm0:1024k(bl2),256k(Nvram),256k(Bdata),2048k(factory),2048k(fip),256k(crash),256k(crash_log),30720k(ubi),30720k(ubi1),51200k(overlay)"

然后随意使用 WebUI 或者是 sysupgrade 指令安装 OpenWRT

这一步做完当 AP 什么的就已经可以用了,如果你要在上面安装 114514 个软件或者只是觉得官方分区傻逼,想来点开源的 Openwrt U-boot 的话可以接着往下看

安装 ubootmod 分区的 OpenWRT

备份

可以用 WebUI 的备份或者 cat 后 ZMODEM 传输

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
root@OpenWrt:~# opkg update
# 这里太长略过
root@OpenWrt:~# opkg install lrzsz
Installing lrzsz (0.12.21-1) to root...
Downloading https://downloads.openwrt.org/releases/23.05.0/packages/aarch64_cortex-a53/packages/lrzsz_0.12.21-1_aarch64_cortex-a53.ipk
Configuring lrzsz.
root@OpenWrt:~# cat /dev/mtdblock0 > /tmp/BL2.bin
root@OpenWrt:~# sz /tmp/BL2.bin 

root@OpenWrt:~# cat /dev/mtdblock1 > /tmp/Nvram.bin
root@OpenWrt:~# sz /tmp/Nvram.bin 
rz
root@OpenWrt:~# cat /dev/mtdblock2 > /tmp/Bdata.bin
root@OpenWrt:~# sz /tmp/Bdata.bin 

root@OpenWrt:~# cat /dev/mtdblock3 > /tmp/Factory.bin
root@OpenWrt:~# sz /tmp/Factory.bin 
rz
root@OpenWrt:~# cat /dev/mtdblock4 > /tmp/FIP.bin
root@OpenWrt:~# sz /tmp/FIP.bin 
rz

查看当前分区(非必须,但是保险起见看一眼)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
root@OpenWrt:~# cat /proc/mtd
dev:    size   erasesize  name
mtd0: 00100000 00020000 "BL2"
mtd1: 00040000 00020000 "Nvram"
mtd2: 00040000 00020000 "Bdata"
mtd3: 00200000 00020000 "Factory"
mtd4: 00200000 00020000 "FIP"
mtd5: 00040000 00020000 "crash"
mtd6: 00040000 00020000 "crash_log"
mtd7: 01e00000 00020000 "ubi_kernel"
mtd8: 05000000 00020000 "ubi"

刷入 ubootmod initramfs

依旧是本地起的 Nginx

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
root@OpenWrt:~# wget http://本机IP/AX6000/openwrt-23.05.0-mediatek-filogic-xiaomi_redmi-router-ax6000-ubootmod-initramfs-factory.ubi
Downloading 'http://本机IP/AX6000/openwrt-23.05.0-mediatek-filogic-xiaomi_redmi-router-ax6000-ubootmod-initramfs-factory.ubi'
Connecting to 本机IP:80
Writing to 'openwrt-23.05.0-mediatek-filogic-xiaomi_redmi-router-ax6000-ubootmod-initramfs-factory.ubi'
openwrt-23.05.0-medi 100% |*******************************|  8320k  0:00:00 ETA
Download completed (8519680 bytes)
root@OpenWrt:~# ubiformat /dev/mtd7 -y -f ./openwrt-23.05.0-mediatek-filogic-xiaomi_redmi-router-ax6000-ubootmod-initramfs-factory.ubi 
ubiformat: mtd7 (nand), size 31457280 bytes (30.0 MiB), 240 eraseblocks of 131072 bytes (128.0 KiB), min. I/O size 2048 bytes
libscan: scanning eraseblock 239 -- 100 % complete  
ubiformat: 240 eraseblocks have valid erase counter, mean value is 2
ubiformat: flashing eraseblock 64 -- 100 % complete  
ubiformat: formatting eraseblock 239 -- 100 % complete  

重启

再次查看当前分区(非必须,但是保险起见再看一眼)

1
2
3
4
5
6
7
8
root@OpenWrt:~# cat /proc/mtd
dev:    size   erasesize  name
mtd0: 00100000 00020000 "BL2"
mtd1: 00040000 00020000 "Nvram"
mtd2: 00040000 00020000 "Bdata"
mtd3: 00200000 00020000 "Factory"
mtd4: 00200000 00020000 "FIP"
mtd5: 07a80000 00020000 "ubi"

修改分区

安装并加载 kmod-mtd-rw 内核模块

1
2
3
4
5
6
root@OpenWrt:~# opkg update && opkg install kmod-mtd-rw
# 太长略过 
Installing kmod-mtd-rw (5.15.134+git-20160214-2) to root...
Downloading https://downloads.openwrt.org/releases/23.05.0/targets/mediatek/filogic/packages/kmod-mtd-rw_5.15.134%2bgit-20160214-2_aarch64_cortex-a53.ipk
Configuring kmod-mtd-rw.
root@OpenWrt:~# insmod /lib/modules/$(uname -r)/mtd-rw.ko i_want_a_brick=1

删除所有的崩溃转储文件以防止 OpenWRT Uboot 启动到恢复模式

1
rm -f /sys/fs/pstore/*

格式化 ubi 并且创建新的 uboot-env 分区

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
root@OpenWrt:~# ubidetach -p /dev/mtd5; ubiformat /dev/mtd5 -y; ubiattach -p /dev/mtd5
ubidetach: error!: cannot detach "/dev/mtd5"
           error 19 (No such device)
ubiformat: mtd5 (nand), size 128450560 bytes (122.5 MiB), 980 eraseblocks of 131072 bytes (128.0 KiB), min. I/O size 2048 bytes
libscan: scanning eraseblock 979 -- 100 % complete  
ubiformat: 880 eraseblocks have valid erase counter, mean value is 1
ubiformat: 96 eraseblocks are supposedly empty
ubiformat: warning!: 4 of 980 eraseblocks contain non-UBI data
ubiformat: warning!: only 880 of 980 eraseblocks have valid erase counter
ubiformat: mean erase counter 1 will be used for the rest of eraseblock
ubiformat: use erase counter 1 for all eraseblocks
ubiformat: formatting eraseblock 979 -- 100 % complete  
UBI device number 0, total 980 LEBs (124436480 bytes, 118.6 MiB), available 954 LEBs (121135104 bytes, 115.5 MiB), LEB size 126976 bytes (124.0 KiB)
root@OpenWrt:~# ubimkvol /dev/ubi0 -n 0 -N ubootenv -s 128KiB
Volume ID 0, size 2 LEBs (253952 bytes, 248.0 KiB), LEB size 126976 bytes (124.0 KiB), dynamic, name "ubootenv", alignment 1
root@OpenWrt:~# ubimkvol /dev/ubi0 -n 1 -N ubootenv2 -s 128KiB
Volume ID 1, size 2 LEBs (253952 bytes, 248.0 KiB), LEB size 126976 bytes (124.0 KiB), dynamic, name "ubootenv2", alignment 1

创建 OpenWrt U-Boot 的 NAND 恢复模式分区并刷入 ubootmod-initramfs-recovery.itb

这一步可选,不做也有 tftp 恢复模式可以用,可用空间也大一点

1
2
3
4
5
6
7
8
9
root@OpenWrt:~# ubimkvol /dev/ubi0 -n 2 -N recovery -s 10MiB
Volume ID 2, size 83 LEBs (10539008 bytes, 10.0 MiB), LEB size 126976 bytes (124.0 KiB), dynamic, name "recovery", alignment 1
root@OpenWrt:~# wget http://本机IP/AX6000/openwrt-23.05.0-mediatek-filogic-xiaomi_redmi-router-ax6000-ubootmod-initramfs-recovery.itb
Downloading 'http://本机IP/AX6000/openwrt-23.05.0-mediatek-filogic-xiaomi_redmi-router-ax6000-ubootmod-initramfs-recovery.itb'
Connecting to 本机IP:80
Writing to 'openwrt-23.05.0-mediatek-filogic-xiaomi_redmi-router-ax6000-ubootmod-initramfs-recovery.itb'
openwrt-23.05.0-medi 100% |*******************************|  7104k  0:00:00 ETA
Download completed (7274496 bytes)
root@OpenWrt:~# ubiupdatevol /dev/ubi0_2 ./openwrt-23.05.0-mediatek-filogic-xiaomi_redmi-router-ax6000-ubootmod-initramfs-recovery.itb 

刷入 OpenWRT U-boot

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
root@OpenWrt:~# wget http://本机IP/AX6000/openwrt-23.05.0-mediatek-filogic-xiaomi_redmi-router-ax6000-ubootmod-preloader.bin
Downloading 'http://本机IP/AX6000/openwrt-23.05.0-mediatek-filogic-xiaomi_redmi-router-ax6000-ubootmod-preloader.bin'
Connecting to 本机IP:80
Writing to 'openwrt-23.05.0-mediatek-filogic-xiaomi_redmi-router-ax6000-ubootmod-preloader.bin'
openwrt-23.05.0-medi 100% |*******************************|   200k  0:00:00 ETA
Download completed (205560 bytes)
root@OpenWrt:~# mtd write ./openwrt-23.05.0-mediatek-filogic-xiaomi_redmi-router-ax6000-ubootmod-preloader.bin BL2
Unlocking BL2 ...

Writing from ./openwrt-23.05.0-mediatek-filogic-xiaomi_redmi-router-ax6000-ubootmod-preloader.bin to BL2 ...     
root@OpenWrt:~# wget http://本机IP/AX6000/openwrt-23.05.0-mediatek-filogic-xiaomi_redmi-router-ax6000-ubootmod-bl31-uboot.fip
Downloading 'http://本机IP/AX6000/openwrt-23.05.0-mediatek-filogic-xiaomi_redmi-router-ax6000-ubootmod-bl31-uboot.fip'
Connecting to 本机IP:80
Writing to 'openwrt-23.05.0-mediatek-filogic-xiaomi_redmi-router-ax6000-ubootmod-bl31-uboot.fip'
openwrt-23.05.0-medi 100% |*******************************|   718k  0:00:00 ETA
Download completed (735409 bytes)
root@OpenWrt:~# mtd write ./openwrt-23.05.0-mediatek-filogic-xiaomi_redmi-router-ax6000-ubootmod-bl31-uboot.fip FIP
Unlocking FIP ...

Writing from ./openwrt-23.05.0-mediatek-filogic-xiaomi_redmi-router-ax6000-ubootmod-bl31-uboot.fip to FIP ...     

最后,用 WebUI 或者 sysupgrade 指令刷入 ubootmod-squashfs-sysupgrade 固件即可

解决 RouterOSv7 中的 PMTU 黑洞问题

2023-07-30 19:40:38

Featured image of post 解决 RouterOSv7 中的 PMTU 黑洞问题

当我刚刚用 RB5009 替换掉之前的老 E3 后并配好了 IPv6

结果大概一小时后,室友突然闯进了我的房间,用我的电脑测试打开了 mail.qq.com

恐怖故事就此发生,我的电脑对此响应缓慢,而室友的电脑直接就无法打开

试了一下让猫猫头软件启用全局模式之后,世界又好了起来

我的第一反应是:鹅炸了?

那显然不是……

第二反应是 DNS 的问题,解析到了神必目标,遂把室友电脑的 DNS 改到 114

结果没用,不是这个原因(要不然也不会有这篇了……)

接着试了一下 ping mail.qq.com 发现解析到了IPv6地址,遂反应过来,是不是 PMTU 黑洞了

赶紧打开 http://icmpcheckv6.popcount.org/ 来测一下,结果全绿

ICMP black hole check

不过还是死马当成活马医了一下(主要是有点懒的监看一下流量,抓包看一眼)

1
/ipv6 firewall mangle add chain=forward out-interface=pppoe-out1 protocol=tcp tcp-flags=syn action=change-mss new-mss=clamp-to-pmtu

结果……结果真的活了!

问了下群友

MikroTik RB5009 开箱

2023-07-30 10:30:00

Featured image of post MikroTik RB5009 开箱

在 Путин, Владимир Владимирович 搞事之前,RB5009 的价格一直是 12xx 软妹币……

然后……然后……这玩意就成理财产品了……

观望了好几年,这玩意的价格从 12xx -> 2xxx -> 13xx 虽然价格还是很高,但是还算可以接受

不过一个 10G SFP+ 一个 2.5G RJ45,剩下 7 个都是 1000M 口这种配置,MikroTik做出来属实有些膈应人了……

哦,背板带宽还跑不满

不过主要是 E3-1265Lv3 软路由实在是撑不起家里的网络了,不得不换一个

包装盒

顶面

正面

目前杭州租的房子里机架还没搞好,只能丢个袋子里挂起来,灵车的很

等下次回台州把猫棒什么都拿来,淘汰掉联通的垃圾光猫

Tips: 如果您要将 RB5009 与 RTL960x 系列 SFP 猫棒协商 2.5G 速率

首先需要 SSH到猫棒上执行 flash set LAN_SDS_MODE 6 然后回到 winbox,关闭自动协商,设置速率为 2.5G baseX,然后需要等待第一次重协商的时间会比较长,参考资料

RouterOSv7 泥头车与酒驾 BGP

2023-06-13 17:14:44

Featured image of post RouterOSv7 泥头车与酒驾 BGP

安装

DD

MikroTik官方文档里推荐的安装方法是在Setting - Custom ISO - SystemRescue挂载镜像后操作,但是我懒,直接在 Debian 下 dd 的

1
2
3
wget https://download.mikrotik.com/routeros/7.9.2/chr-7.9.2.img.zip
unzip chr-7.9.2.img.zip
dd if=chr-7.9.2.img of=/dev/vda

这时候如果您是按照官方文档里推荐的安装方法安装的话,需要解除 ISO 挂载,机器会自动重启

修改用户

1
2
/user add name=rei password=密码 group=full
/user remove admin

关闭不需要的服务

我只需要 SSH 和 winbox 服务

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
[rei@MikroTik] > /ip service print
Flags: X, I - INVALID
Columns: NAME, PORT, CERTIFICATE, VRF
#   NAME     PORT  CERTIFICATE  VRF 
0   telnet     23               main
1   ftp        21                   
2   www        80               main
3   ssh        22               main
4 X www-ssl   443  none         main
5   api      8728               main
6   winbox   8291               main
7   api-ssl  8729  none         main
[rei@MikroTik] > /ip service set 0,1,2,4,5,7 disabled=yes
[rei@MikroTik] > /ip service print
Flags: X, I - INVALID
Columns: NAME, PORT, CERTIFICATE, VRF
#   NAME     PORT  CERTIFICATE  VRF 
0 X telnet     23               main
1 X ftp        21                   
2 X www        80               main
3   ssh        22               main
4 X www-ssl   443  none         main
5 X api      8728               main
6   winbox   8291               main
7 X api-ssl  8729  none         main

也许还可以改个SSH端口什么的

接下来在 winbox 下操作

配置 IPv6

直接 dd 安装 ROS 的 v4 是活的,但是 v6 寄了。在 IPv6 - Address 中添加地址

然后在 IPv6 - Settings 中取消勾选 IPv6 Forward 即可

最后 ping 一下 2001:4860:4860::8888 (GoogleDNS)验证是否通网

与 Vultr 建立 BGP Sessions

Filters

其实如果你和我一样单纯只是想在 Vultr 上收个全表的话,理论来说不用管这玩意。

以及酒后写 v7 的规则实在是容易出事,还是以后有机会再写吧

Templates

显然,整个模板可以让我们偷懒摸鱼,我是直接修改了自带的 default 模板

Connection

Vultr 上个人建议建立两个 Connection,也就是一个 v4 的和一个 v6 的

v4 的写法也差不多,照着改就行,其实就是把 Vultr 给你的 Bird 模板改改塞进去

然后切换到 BGP - Sessions 选项卡

开头的 E 代表 Established 也就是你配的没问题生效了

广播你自己的 IP

由于我买不起v4,所以这里只能写v6了

Firewall

首先在 IPv6 - Firewall - Address Lists 中新建一条你要播的地址

Output Network

然后在承载你这条网络所对应的 BGP Connection 中的 Filter - Output Network 中将其选中

Route

IPv6 - Route 中建立一条用于承载广播地址的路由

Address

最后就和第一步配v6网络的时候一样,在 IPv6 - Address 中添加地址即可