====== CFE 专题 ====== CFE (Common Firmware Environment) 是博通 (Broadcom) 芯片专用的引导程序。 ===== 简介 ===== CFE 是博通公司为其芯片开发的引导程序。 **特点**: - 博通芯片专用 - 闭源 - 串口命令行操作 - 支持网络启动 - 常见于 Netgear、华硕部分机型 ===== 支持的设备 ===== == 常见品牌 == ^ 品牌 ^ 代表机型 ^ | Netgear | R7000, R6400, R6220, R7800, WNDR3700 | | 华硕 | RT-AC66U, RT-N66U, RT-AC87U | | Linksys | WRT1900ACS, WRT1200AC | | Buffalo | 部分机型 | == 博通芯片特点 == - BCM47xx:802.11n 时代 - BCM53xx:802.11ac 时代 - BCM675xx:WiFi 6 时代 - BCM6756/BCM6765:WiFi 7 时代 ===== 进入 CFE ===== == 串口进入 == - 连接 TTL 串口(115200 波特率) - 路由器断电 - 按住 C + Enter 或空格键 - 路由器上电 - 直到看到 CFE> 提示符 == 网络进入 == 部分机型支持网络唤醒后进入: - telnet 192.168.1.1 - 输入用户名和密码 - 输入命令进入 CFE 模式 ===== CFE 命令 ===== == 常用命令 == # 查看帮助 help # 查看系统信息 show devices show chips # 查看环境变量 show env # 设置环境变量 setenv nvram key value commit == 启动命令 == # 从 Flash 启动 boot # 从 TFTP 网络启动 flash -ctheader : flash0 boot == TFTP 启动 == # 设置 IP setenv ipaddr 192.168.1.1 setenv netmask 255.255.255.0 setenv gatewayip 192.168.1.254 # TFTP 加载固件 flash -ctheader 192.168.1.100:firmware.chk flash0 == NVRAM 操作 == # 查看 NVRAM nvram show # 设置 NVRAM nvram set lan_ipaddr=192.168.1.1 nvram commit # 清除 NVRAM nvram erase reboot ===== TFTP 刷固件 ===== == 准备工作 == - 安装 TFTP 服务器 - 将 .chk 固件放入 TFTP 目录 - 使用网线直连路由器 LAN 口 - 设置电脑 IP 为 192.168.1.x == 刷入步骤 == # 进入 CFE> 提示符 # 设置启动参数 setenv ipaddr 192.168.1.1 setenv netmask 255.255.255.0 setenv gatewayip 192.168.1.254 setenv serverip 192.168.1.100 # 刷入固件 flash -ctheader 192.168.1.100:firmware.chk flash0 # 重启 reboot == 注意事项 == - 使用 .chk 文件(非 .bin) - 等待刷入完成,不要断电 - 刷入时间约 3-5 分钟 ===== NVRAM 修复 ===== == NVRAM 损坏症状 == - 无法保存设置 - 设置后重启恢复默认 - WiFi 名称/密码丢失 == 修复方法 == # 在 CFE 中 nvram erase reboot # 或在 Web 恢复模式中 # 恢复出厂设置 == NVRAM 备份 == # 通过 Telnet/SSH telnet 192.168.1.1 # 用户名:admin # 密码:admin # 备份 NVRAM dd if=/dev/mtd/0 of=/tmp/nvram.bin # 通过 SCP/SFTP 导出 ===== CFE 与其他 Bootloader 对比 ===== | 特性 | CFE | U-Boot | Breed | |------|------|--------|-------| | 适用芯片 | 博通 | 通用 | 特定型号 | | 开源 | ❌ | ✅ | ❌ | | Web 界面 | ❌ | ❌ | ✅ | | 命令风格 | 特殊 | 标准 | 简化 | ===== 常见问题 ===== == CFE 无法进入 == - 确认串口参数正确(115200 8N1) - 尝试不同按键组合(C/Enter/Space) - 串口软件可能需要先打开 == TFTP 刷入失败 == - 确认使用 .chk 文件 - 检查网络连接 - 确认 TFTP 服务器可达 - 尝试更换 TFTP 软件 == NVRAM 丢失 == - CFE 的 NVRAM 与其他不同 - 恢复出厂设置后重新配置 - 部分机型需要重新设置地区代码 == CFE 命令不识别 == 不同 CFE 版本命令略有不同: - 输入 help 查看可用命令 - 部分命令需要大写 - 参考对应机型的教程 ===== Netgear 专用工具 ===== == nmrpflash == Netgear 推荐使用 nmrpflash 刷机: # Linux/macOS sudo nmrpflash -i eth0 -f firmware.chk 192.168.1.1 # Windows nmrpflash.exe -i Ethernet -f firmware.chk 192.168.1.1 == Web 恢复模式 == - 路由器断电 - 按住 Restore Factory Settings - 插入电源 - 等待所有灯同时亮起 - 访问 192.168.1.1 ===== 相关链接 ===== - [[bootloader:breed|Breed 专题]] - [[bootloader:uboot|U-Boot 专题]] - [[method:tftp-recovery|TFTP 恢复方法]] - [[method:nmrp-recovery|NMRP 恢复方法]]