目录

CFE 专题

CFE (Common Firmware Environment) 是博通 (Broadcom) 芯片专用的引导程序。

简介

CFE 是博通公司为其芯片开发的引导程序。

特点

  1. 博通芯片专用
  2. 闭源
  3. 串口命令行操作
  4. 支持网络启动
  5. 常见于 Netgear、华硕部分机型

支持的设备

常见品牌
品牌 代表机型
Netgear R7000, R6400, R6220, R7800, WNDR3700
华硕 RT-AC66U, RT-N66U, RT-AC87U
Linksys WRT1900ACS, WRT1200AC
Buffalo 部分机型
博通芯片特点
  1. BCM47xx:802.11n 时代
  2. BCM53xx:802.11ac 时代
  3. BCM675xx:WiFi 6 时代
  4. BCM6756/BCM6765:WiFi 7 时代

进入 CFE

串口进入
  1. 连接 TTL 串口(115200 波特率)
  2. 路由器断电
  3. 按住 C + Enter 或空格键
  4. 路由器上电
  5. 直到看到 CFE> 提示符
网络进入

部分机型支持网络唤醒后进入:

  1. telnet 192.168.1.1
  2. 输入用户名和密码
  3. 输入命令进入 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 刷固件

准备工作
  1. 安装 TFTP 服务器
  2. 将 .chk 固件放入 TFTP 目录
  3. 使用网线直连路由器 LAN
  4. 设置电脑 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
注意事项
  1. 使用 .chk 文件(非 .bin)
  2. 等待刷入完成,不要断电
  3. 刷入时间约 3-5 分钟

NVRAM 修复

NVRAM 损坏症状
  1. 无法保存设置
  2. 设置后重启恢复默认
  3. 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 无法进入
  1. 确认串口参数正确(115200 8N1)
  2. 尝试不同按键组合(C/Enter/Space)
  3. 串口软件可能需要先打开
TFTP 刷入失败
  1. 确认使用 .chk 文件
  2. 检查网络连接
  3. 确认 TFTP 服务器可达
  4. 尝试更换 TFTP 软件
NVRAM 丢失
  1. CFE 的 NVRAM 与其他不同
  2. 恢复出厂设置后重新配置
  3. 部分机型需要重新设置地区代码
CFE 命令不识别

不同 CFE 版本命令略有不同:

  1. 输入 help 查看可用命令
  2. 部分命令需要大写
  3. 参考对应机型的教程

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 恢复模式
  1. 路由器断电
  2. 按住 Restore Factory Settings
  3. 插入电源
  4. 等待所有灯同时亮起
  5. 访问 192.168.1.1

相关链接