固件修改可以解锁更多功能、去除限制、安装第三方固件。
```bash # 分析固件结构 binwalk firmware.bin
# 提取固件内容 binwalk -e firmware.bin
# 自动识别并提取 binwalk -eM firmware.bin ```
```bash # 安装 sudo apt install firmware-mod-kit
# 转换固件格式 ./dgs2cfe firmware.bin output.bin
# 解包 ./unsquashfs_all.sh firmware.bin ```
```bash # 注释掉升级检查脚本 vi squashfs-root/usr/lib/upgrade/check_firmware.sh # 找到并注释掉 wget 或 curl 调用 ```
```bash # 修改启动脚本开启服务 vi squashfs-root/etc/init.d/rcS # 添加: /usr/sbin/telnetd -l /bin/login ```
```bash # 编辑 MAC 地址配置文件 vi squashfs-root/etc/config/network # 修改 option macaddr 'XX:XX:XX:XX:XX:XX' ```
* 修改无线功率参数 * 解锁禁用信道 * 调整地区代码
```bash # 使用 Firmware Modification Kit ./build-firmware.sh output_dir/
# 或手动打包 mksquashfs squashfs-root new-firmware.bin -comp lzma ```
注意:修改固件有变砖风险!
1. 通过 Breed 刷入(推荐) 2. 通过 TTL 串口刷入 3. 通过 TFTP 恢复模式
| 工具 | 下载地址 |
| —— | ——— |
| binwalk | binwalk on GitHub |
| Firmware Mod Kit | Firmware Mod Kit on GitHub |
* 修改固件会失去保修 * 部分地区修改无线参数可能违法 * 刷入前务必备份原厂固件 * 不当修改可能导致变砖