|
|
本帖最后由 FengByX 于 2026-6-24 10:36 编辑
手上这台 D2 吃灰好几年了,最近翻出来想折腾一下。网上教程零零散散,有些步骤还是错的,干脆自己整理一份。从刷 Breed 到 U 盘扩容,按我实际操作的顺序写,遇到的坑也顺带标出来,方便后来人。
一、先把 EEPROM 备份出来——这步不能省
很多教程上来就叫你刷 Breed,但有一步更重要:先把各 MTD 分区备份出来,尤其是 factory 分区。
原因很简单,D2 的无线网卡校准数据(MAC 地址、RF 参数)就存在 factory 分区里,一旦刷坏或丢失,无线基本就废了。Breed 刷入过程出意外的概率虽然低,但数据无价,养成喜欢。
用一键刷机助手(Zy143L 出品)的话,这一步是自动完成的:
- 网线接 D2 的 LAN 口,电脑网卡设 DHCP
- 浏览器开 http://192.168.99.1,跑完原厂初始化向导,记住管理密码
- 下载助手(百度网盘,提取码 qztt),输入密码,等它自动跑完
助手会依次帮你:备份 EEPROM → 开启 SSH → 刷入 Breed → 重启。备份文件记得保存好,别丢。
重启后访问 http://192.168.1.1,能看到 Breed Web 控制台就成了。
想自己用 SSH 手动来的,或者已经变砖需要 TTL 救援的,这里不展开,另找专帖。
二、刷 ImmortalWrt——固件文件别搞错
去 ImmortalWrt 固件选择器 搜 Newifi D2,版本选 stable(23.05)还是 snapshot 看自己需求,snapshot 功能新但可能不稳定。
重点来了: D2 的固件没有 factory.bin,很多帖子这里写错了。实际提供的是两个文件:
- kernel:底包,第一次刷必须先刷这个
- sysupgrade.bin:系统包,底包刷完重启再刷这个
在 Breed 里操作顺序:
- 固件更新 → 选 kernel → 刷入 → 等重启
- 重新进 Breed(断电后按住 reset 再上电)→ 固件更新 → 选 sysupgrade.bin → 勾选「清除环境变量」 → 刷入
跳过底包直接刷 sysupgrade 的话,部分同学反馈会有奇怪问题(比如双线 IPTV 转发断网),所以两步都走稳妥。
三、换源——国内用必换,否则 opkg 龟速
ImmortalWrt 默认源在境外,国内访问基本超时。一条命令换掉:
- sed -e 's,<a href="https://downloads.immortalwrt.org" target="_blank">https://downloads.immortalwrt.org</a>,<a href="http://mirrors.ustc.edu.cn/immortalwrt" target="_blank">http://mirrors.ustc.edu.cn/immortalwrt</a>,g' \ -e 's,<a href="https://mirrors.vsean.net/openwrt" target="_blank">https://mirrors.vsean.net/openwrt</a>,<a href="http://mirrors.ustc.edu.cn/immortalwrt" target="_blank">http://mirrors.ustc.edu.cn/immortalwrt</a>,g' \ -i.bak /etc/opkg/distfeeds.conf
复制代码 中科大的源对教育网和家用宽带都比较友好。如果你在清华校园网,换 TUNA 更快:
https://mirrors.tuna.tsinghua.edu.cn/immortalwrt阿里云的也行,公网带宽大:
https://mirrors.aliyun.com/immortalwrt换完跑一下,没报错就好。
四、U 盘扩容——32MB Flash 其实够用,但装多插件还是需要
D2 板载 32MB Flash,相比早期 16MB 设备已经好不少了,官方固件装下来还剩个七八兆可用。如果你装的插件不多,其实不一定非得扩容。但要上 AdGuardHome 这种吃空间的,还是挂 U 盘把 overlay 搬出去更踏实。
先装依赖:
- opkg updateopkg install block-mount e2fsprogs kmod-fs-ext4 kmod-usb-storage kmod-usb2 kmod-usb3
复制代码
格式化 U 盘(注意:数据会清空):
- <div>mkfs.ext4 -F /dev/sda1
- </div>
复制代码 然后去 LuCI:系统 → 挂载点 → 编辑 /dev/sda1,挂载点选「作为外部 overlay 使用 (/overlay)」,保存应用,重启。
重启后进软件包页面,顶部显示的可用空间变成 U 盘容量就说明挂上了。
有几点要注意:
- U 盘最好用 USB 2.0 的,部分 USB 3.0 U 盘在 D2 上识别有问题
- 如果重启后 overlay 又缩回去,检查 /etc/config/fstab 里 enabled 是不是真的写进去了(uci commit 漏跑的话不会生效)
五、装插件
换好源之后就能正常装了,几个常用的:
- opkg updateopkg install luci-app-turboacc luci-app-adguardhome \ luci-app-zerotier luci-app-ddns-go
复制代码- Turbo ACC:SFE 软件加速,D2 能用的加速手段主要就是这个(下面细说)
- AdGuardHome:DNS 层去广告,全家生效
- ZeroTier / Tailscale:异地组网、内网穿透
- DDNS-Go:家庭宽带 IP 变动自动更新域名
六、关于性能优化——有些东西 D2 不支持,别踩坑
这里要单独说一下,因为网上有些教程(包括我早期写的版本)有误导性内容。
D2 的网络架构是单 GMAC(GMAC00),不像部分设备有双 GMAC 可以做硬件直通。在启用 DNAT 或大流量转发时,数据包必须经过 CPU 处理,这是硬件架构决定的,没有什么命令能绕过去。
有个坑是之前教程里写的这条命令:
- echo 1 > /sys/devices/system/cpu/cpufreq/ondemand/io_is_busy
复制代码
在 ImmortalWrt 的 MT7621 固件上,这个路径根本不存在,执行会直接报错。 有坛友实测:
- -ash: can't create /sys/devices/system/cpu/cpufreq/ondemand/io_is_busy: nonexistent directory
复制代码 这条命令已经从本教程删掉了,别再抄了。
D2 上实际能用的加速方案是 SFE(Shortcut Forwarding Engine)软件加速,在 LuCI → 网络 → Turbo ACC 里开启就行,效果是有的。别对 D2 的转发性能期望过高,这个价位能跑稳就是赢。
七、备份
装好之后记得备份,省得重来:
整机备份(推荐):LuCI → 系统 → 备份/升级 → 生成备份,下载 backup-*.tar.gz 存好。刷机后同页面上传即可还原配置。
U 盘 overlay 单独备份(装了很多东西时用):
- tar czf /mnt/sda1/overlay-$(date +%F).tar.gz -C /overlay .
复制代码 八、常见问题Breed 刷完进不了系统
重新进 Breed(断电 → 按住 reset → 上电,等 5 秒松手),恢复出厂设置,然后重新按两步流程刷固件。
opkg update 报 404
大概率换源没生效,或者换的源和固件版本对不上。确认一下 /etc/opkg/distfeeds.conf 里的 URL 是否已经替换,再检查下固件版本(21.02 和 23.05 的源路径不同)。
U 盘插上去没有 /dev/sda1
先用 lsusb 看看有没有识别到设备。没识别到换个 U 盘试试,或者插另一个 USB 口。kmod-usb3 装了吗?
WiFi 用一天就断,连不上
这是 ImmortalWrt 官方版本在 D2 上的已知问题,稳定版和 snapshot 都有人反馈过。临时方案是在计划任务里加个定时重启 hostapd:
# crontab -e,加入下面一行(每天凌晨 4 点重启无线)0 4 * * * /etc/init.d/network restart根本解决需要等固件更新,或者换个社区编译版本。
|
|