这台 KD-YUN-811G 是联通宽带留下的,从箱子里拿出来第一反应是轻。同体积的路由器我拿过不少,它比那些都轻,晃两下,里面像是没装东西。

轻这件事拆开就有答案了。板子本身不大,主控上面连散热片都没压,整机里能算得上分量的只有四个网口的金属壳、光组件的金属件和电源插座。这档机器从设计上就在省料,谈不上做工好坏。

它也确实旧了。铭牌上的生产日期是 2019 年 8 月,到今天整整七年;接口是 1 个千兆口带 3 个百兆口,无线只有 2.4G 单频。这套配置放在 2019 年不算差,放在今天就很勉强。下面先把它到底是什么讲清楚,再开盖看板子。

参数:铭牌上印的,和板子上焊的

参数分两半。一半是铭牌和联通那张白标上印的,属于厂商标称;另一半是板子上的丝印加上它开机时自己吐的日志,属于实测。两半对着看,能看出不少东西来。

中国联通 KD-YUN-811G 光猫正面,黑色塑料外壳,指示灯丝印为电源、注册、光信号、无线、电话、1-千兆、2-百兆、3-百兆、4-百兆、USB
正面。指示灯这一排把配置直接写在壳上了:1-千兆,2/3/4-百兆。上盖中间那一大片密集的圆点是散热孔。面板中央印着「智慧沃家」,右上角是联通标

先看标称。铭牌上真正有信息量的不是型号,是接口类型和厂商那一栏。

项目标称说明
设备型号KD-YUN-811G设备类型写作「GPON/4+1+WiFi(2.4G)」,4+1 = 4 个网口加 1 个电话口
设备名称吉比特无源光纤接入用户端设备(GPON ONU)上行是 GPON,不是 EPON
制造商北京云易时代技术有限公司2016 年成立,给运营商做智能网关和 ONU 方案,公开信息里中标过中国联通智网创新中心、河南联通 10G PON 智能网关等项目
品牌方联通在线信息科技有限公司中国联通旗下,铭牌上是单独贴的一条白标
电源12V ⎓ 1A标称 12W
用户接口4×网口 + 1×电话 + 1×USB网口里只有 1 个是千兆,另外 3 个是百兆
默认 WLANCU_B8Jr,接入密码 bvwggvc6密码直接印在铭牌上
管理入口http://192.168.1.1默认用户 user,默认密码 bvwggvc6
CMIIT ID2017DP5026型号核准 2017 年核发,比整机出厂早两年
进网许可19-C721-172715蓝色许可标签,型号栏与铭牌一致
出厂信息2019-08-22,检验员 QC03SN YUNG4B77ADF8,MAC 90:83:4B:77:AD:F8
KD-YUN-811G 背面铭牌:设备型号、12V 1A 电源规格、CMIIT ID 2017DP5026、制造商北京云易时代,以及联通白标上的默认 WLAN 名与密码
背面。上面那张是厂家铭牌,中间那条白标是联通在线的,下面是联通的用户标签。默认密码、管理地址、客服热线全在这儿,装机的时候根本不用拆
KD-YUN-811G 接口面:电话口、4 个百兆网口(丝印 4-百兆、3-百兆)、复位孔、USB-A、12V 电源插座与电源开关
接口面。从左到右是电话口、四个网口、一个圆形按键加一个内凹小孔、USB-A、12V 电源插座、电源开关。面板丝印上写的是「4-百兆」「3-百兆」,编号从右往左排,跟正面那一排指示灯是对应的

四个网口里只有一个是千兆,这件事有两个独立来源。面板上的指示灯丝印写着「1-千兆、2-百兆、3-百兆、4-百兆」;开机日志里也有一行 fe_ports:3 ge_ports:1。硬件丝印和固件自报对上了,这个结论就没有含糊的余地。

标称里缺的东西很明显:主控型号、内存容量、闪存容量、无线芯片、系统版本,铭牌一个字都没提。这些得看板子,或者看它开机时自己说。

部件丝印 / 型号实测值与公开资料
主控Broadcom BCM68488KFBG(第二行 TN1832 P10)CFE 报 Chip ID: BCM68488_A1_,MIPS 600MHz、DDR 533MHz、Bus 300MHz、RDP 428MHz;内核报两颗 BMIPS4350 核;初始化日志里出现 28nm 字样
内存ESMT M15T2G16128A(位号 U201)2Gbit DDR3,单颗 256MB;日志 Total Memory: 268435456 bytes (256MB),时序 07-07-07
闪存Micron 29F2G08ABAGA(位号 U205)2Gbit SLC NAND,256MB;日志 chipSize=256MB、pageSize=2048B、ECC BCH-8
无线Broadcom BCM43217KMLG2.4GHz 802.11n 单频;固件加载 bcm43217_map.bin,驱动却自报 BCM43227
光带尾纤的 BOSA 光组件 + Semtech GN25L95 光收发驱动(位号 U5)日志 scratchpad RdpaWanType - GPON;光模块的 I2C 从地址挂在 0x50 / 0x51
语音Silicon Labs Si32192FM1(位号 U4)单口 FXS 的 ProSLIC;CFE 里语音板配置写着 SI32192ISI_LCQC,跟板上这颗丝印对得上
网口隔离TNK QD20D04 / BD20A01 / BD16A01网口背后的隔离变压器,百兆口用的就是这一档
主板丝印TS41BDMUYY_V1_3A板型与版本号
引导CFE 1.0.38-116.230 for BCM96848构建于 2020-04-08,gcc 编译机账号 xuhuaikun
系统Linux 3.4.11-rt19 + BusyBox 1.17.2构建于 2022-07-14,gcc 4.6.2 / Buildroot 2011.11
固件版本串4.16L.04_CT2015_Yueme省级定制文件是 /lib/libmdm_guangdong.so,即广东版

默认账号和超级管理员密码

铭牌给的是普通账号 user,密码 bvwggvc6。这个身份权限很低,只能看无线名、改改 Wi-Fi 密码、看几个状态页。想改桥接、动 VLAN、翻出宽带拨号的账号,得用超级管理员 CUAdmin。

联通系设备的超密在公开资料里是固定的:用户名 CUAdmin,密码 CUAdmin,管理员登录页是 http://192.168.1.1/cu.html。麻烦的地方在登录页本身:这台机器的登录框默认只给一个密码输入框,用户名被写死成 user,你就算知道 CUAdmin 也没地方填。

同型号的绕法网上有公开记录,路子是把页面的限制绕过去。登录页的用户名元素 id 是 user_name,把它改成 CUAdmin,用户名框就出来了;更省事的是直接在控制台把两个框填好再提交:

document.getElementById('user_name').value = 'CUAdmin';
document.getElementById('password').value = 'CUAdmin';
document.getElementById('loginfrm').submit();

记录里还给了个直连地址,http://192.168.1.1/loginUser.htm?username=CUAdmin&password=CUAdmin,效果一样。写这条记录的博主顺带说了一句,同一年份的 TEWA-800E 上也是这套路数,两家固件的登录页是同一个模子。

这一段我只写公开记录,没在这台机器上实测过。它现在跑的是 2022 年的固件,登录页有没有补上这个口子我不知道。另外两件事得说在前面:一是很多省份的联通已经把超密改成动态口令,装维师傅装完机就改掉了,默认值进不去;二是光猫别随手复位,复位会丢掉注册信息,复位完不重新注册是上不了网的,只能等装维上门。这些操作只对自己名下的设备做。

拆解:板子上到底有什么

拆法没什么可讲的,底壳的螺丝拧掉,拿撬板沿着接缝走一圈,上下盖就分开了。第一次拆用塑料撬棒,金属的容易在壳子上留印。

KD-YUN-811G 主板正面:左侧是光组件与尾纤,中间是主控,右上角是三颗 TNK 网络变压器,板上有 12V 输入与电源电路
主板正面。左上角是 12V 电源口和 USB,中间那颗方片是主控,它上面没有散热片;右下角带白色尾纤的是光组件,上方一横排是网口变压器区
KD-YUN-811G 主板背面:右侧是 Micron NAND 闪存,中间一片电源与滤波元件,板号丝印 TS41BDMUYY_V1_3A
主板背面。贴片元件基本都在这面,右侧那颗大芯片是闪存。板子中间能看清丝印 TS41BDMUYY_V1_3A,这是板型和版本。上面那一排过孔是厂内测试点,不是接口

板子整体很干净,没有散热片,也没有屏蔽罩,元件密度中等。翻板子的时候注意那根白色尾纤,它把板上的光组件和机身的光口连起来,又细又脆,硬拽一下就废。

主控是一颗博通的 GPON 处理器。丝印三行:BCM68488KFBG、TN1832 P10、255-09 P3B W。有意思的是引导程序里它换了个名字,CFE 横幅写的是 CFE version 1.0.38-116.230 for BCM96848,紧接着 Chip ID 那行又报 BCM68488_A1_。同一颗芯片两套叫法,一套是参考设计编号,一套是订货型号,后面折腾固件的时候两个名字都得留着,搜资料只搜一个容易搜不到。

主控芯片丝印特写:Broadcom BCM68488KFBG TN1832 P10 255-09 P3B W,BGA 封装
主控特写。丝印就是这三行,型号、批次、晶圆信息都在。这颗芯片压着的是绿油,不是散热片,所以拿在手里没分量

公开资料对 BCM68488 的描述是:面向 EPON / GPON 的处理器,把 PON MAC、SerDes、最多四个内置以太网 PHY、PCIe、USB 2.0 控制器和 DDR 控制器都集成在片内,数据面另有一组网络处理器做硬件加速,不用外挂交换芯片。这一句在日志里能验证:四个网口是 eth0 到 eth3,直接由主控内部交换出来的,板上找不到第二颗交换芯片。至于主频这类数字,日志给得比资料更实在:MIPS: 600MHz、DDR: 533MHz、Bus: 300MHz、RDP: 428MHz,内核那边报的是两颗 BMIPS4350 核,Brought up 2 CPUs。那个 428MHz 的 RDP 是博通的硬件转发引擎,日志里能找到 Packet Flow Cache HW acceleration enabled,转发走硬件,不走 CPU。

内存和闪存都是 256MB,颗粒料号把容量写死了。内存是 ESMT 的 M15T2G16128A,2Gbit 的 DDR3,单颗 256MB;日志那句 Total Memory: 268435456 bytes (256MB) 正好兜住。闪存是镁光的 29F2G08ABAGA,位号 U205,2Gbit 的 SLC NAND,也是 256MB,日志里报了页大小 2048 字节、块 128KB、ECC 用 BCH-8。这两个数字在百兆口这一档的 ONU 里不算抠门。

内存芯片丝印特写:ESMT M15T2G16128A,2Gbit DDR3,单颗 256MB
内存。丝印 ESMT / M15T2G16128A,料号里的 2G 就是 2Gbit,换算成字节是 256MB。板子上只有这一颗,没有第二颗并上去
闪存芯片丝印特写:Micron 29F2G08ABAGA,丝印位号 U205 NAND_FLASH
闪存。丝印 29F2G08ABAGA,板上丝印标着 U205 NAND_FLASH,是 TSOP-48 封装的 2Gbit SLC NAND。256MB 里有一大半被划去做插件分区了

无线只有 2.4G,而且芯片名字和驱动名字对不上。丝印是 BCM43217KMLG,HA1836 批次。但固件里驱动自报的是 Broadcom BCM43227 802.11 Wireless Controller,加载的校准文件又是 /etc/wlan/bcm43217_map.bin,一个 17 一个 27。这两个名字我都照实写,谁代替谁我不纠结:对用户来说,2.4G 单频、802.11n,这两点是确定的;芯片规格书里那些更细的(几发几收、理论最高速率),我手上没有博通的原厂文档,就不替它编了。

无线芯片丝印特写:Broadcom BCM43217KMLG HA1836 P10,QFN 封装,旁边是 20MHz 晶振
无线芯片。丝印 BCM43217KMLG,边上那颗金属壳的方块是给它做基准的晶振。这一颗芯片负责全部无线业务,板上没有独立的射频前端模块

一块 2.4G 射频撑起了四个 SSID。日志里能看到它开了四个虚拟接口,名字分别是 CU_B8Jr、CU_iTV_B8Jr、CU_B8Jr_3、CU_B8Jr_4。第二个是给 IPTV 机顶盒单独走的,后两个是访客或者多出来的网络。同一颗芯片切四个 VAP,这在百兆单频机上算常规操作,好处是隔离,代价是空口利用率。

光组件是一颗带尾纤的 BOSA,网口那边则是一排隔离变压器。光组件上贴着厂家自己的二维码和序列号,那是模块的标,跟整机序列号不是一回事。开机日志里能看到 gpon_i2c 挂在 I2C 总线的 0x50 和 0x51 上,这是 SFF-8472 规定的光模块 EEPROM 地址,主控靠这条总线读模块的型号和光功率。日志里这两行注册报错是重复注册,功能上没影响。

紧挨着 BOSA 那颗位号 U5 的芯片是 GN25L95,丝印就三行:25L95、1918(2019 年第 18 周)、40980。它是 Semtech 的 GPON ONU 专用光收发芯片,把突发模式激光驱动和限幅放大器做在一颗里,1.25 到 3.1Gbps 的收发都归它管,还带自动消光比控制、片上温度传感器和 DDMI 诊断。它跟那颗 BOSA 是配套的一对,光信号先在这一小片区域里完成电光转换,再交给主控的 GPON MAC。这颗和下面那颗电话芯片都是补拍到的,第一轮拆解漏了过去。

光电转换区特写:Semtech GN25L95 光收发驱动芯片(丝印 25L95 1918 40980,位号 U5),右侧是带金色管脚的 BOSA 光组件
光组件这一小片。左边那颗四边带脚的方片是 GN25L95,右边那坨金脚、贴着二维码标签的是 BOSA 本尊,两者之间只隔着几个阻容。整块板的光路就这一条,发射接收都在这个角落里做完
网口隔离变压器特写:三颗 TNK 变压器,丝印分别为 QD20D04、BD20A01、BD16A01
网口背后的隔离变压器。能看清丝印的有三颗,都是 TNK 的料号:QD20D04、BD20A01、BD16A01。图上方那块黑色件是接口区的磁性结构,丝印看不清,这里就不点名了

这几个小方块干的是脏活:把主控出来的信号和网线上的差分信号隔开,顺带做阻抗匹配和防雷。它们看着不起眼,但网口稳不稳、打雷坏不坏,全看这一片。板子上还有一圈电源部分,12V 从电源口进来,两颗蓝色电解电容加一堆电感和稳压电路,一级一级降下去,给主控、无线和光组件分别供电。翻板子时那两颗电解电容别磕,这类件怕摔。

接口面右侧那两个小件是功能按键位:一个圆形按键,一个内凹的小孔。日志里有 Wifi Button: onoffBtn_gpio 0x8022 和 Button Interrupt 0x7 is enabled,说明板上确实留了一个无线开关按键,长按多半是 WPS 或者关无线,那个小孔是复位。这两个按哪个之前想清楚,复位键按久了这台机器就得重新注册。

电话口背后是一颗 Silicon Labs 的 ProSLIC,位号 U4。丝印 Si32192FM1,批次 1913A0198P,也就是 2019 年第 13 周。这颗把 FXS 那一整套活儿全包了:馈电、过压保护、振铃、监测、编解码、混合电路和测试,行业里叫 BORSCHT,一项都不落;片内还带一个跟踪式 DC-DC 控制器给话机供电,自己会做自检和金属环路测试。它跟 CFE 里那行 Voice Board Configuration : SI32192ISI_LCQC 正好是一对,连 ISI 都对得上:Si3219x 支持好几种主机接口,ISI 就是那套三线串行接口的名字,这行配置翻译过来就是「用 ISI 接口的 Si32192」。铭牌上有电话口,板上就得有这颗,逻辑才闭合。

电话芯片特写:Silicon Labs Si32192FM1 ProSLIC,位号 U4,丝印 1913A0198P,周边是话机侧的阻容
U4,Si32192FM1。周边那一圈阻容不是白放的:话机的馈电和振铃电压要靠片上那个 DC-DC 控制器自己生成,外围元件就落在这附近。左下角那颗蓝色电解电容也贴着它

还有一颗我认不出来,位号 U704。8 脚封装,丝印就两行:1529 和 169,右边一个三角形厂标。对着丝印找了一圈,对不上任何一家的料号,所以我不给它安型号。它紧挨着一排厂内测试点,位置上更像电源或者辅助类的小芯片。至于「是不是 Flash」:这台机器启动时只注册了一个闪存设备,就是那颗 256MB 的 NAND,CFE 的参数区也在这颗 NAND 上,日志里找不到第二颗存储芯片的影子。所以我倾向于它不干存储的活,但这话只能说到这儿。

位号 U704 的 8 脚芯片特写:丝印 1529 与 169 加一个三角形厂标,型号未能识别
U704,8 脚封装,丝印只有 1529 和 169 加一个三角形厂标(照片里芯片是倒着的)。左边带铜环的大孔是固定孔,右边那一排是板上的测试点。这颗我确实没对上料号,就不硬猜了

日志里能看到、拆机看不到的东西

板子上留了一组四针的调试串口焊位,丝印写着 UART,位号 J601。接一个 CH340 转 TTL 的小板,115200 8N1,从上电那一刻起就能看到它自己在说话。下面挑了几屏贴出来,配着几件拆机绝对看不到的事一起说。

串口日志第一屏:CFE version 1.0.38-116.230 for BCM96848,构建日期 2020 年 4 月 8 日,Chip ID BCM68488_A1_,MIPS 600MHz、DDR 533MHz、Bus 300MHz、RDP 428MHz,Total Memory 256MB
上电第一屏。最上面那行 Base: 4.16_04_CT2015_Yueme 就是参数表里那个固件版本串,往下是 CFE 版本、构建日期、芯片 ID,以及四路频率和内存容量。拆解那一节写的 600MHz、533MHz、428MHz、256MB,出处全在这一屏

这套固件是一套多用,靠一个字符串认机型。无线驱动初始化时打了两次 ######## product_class=KD-YUN-811G gpio=1。同一份固件烧到不同板子上,靠这个字符串决定加载哪套射频参数,这台加载的就是 bcm43217_map.bin。这也解释了为什么同一型号的机器在不同批次上,硬件可能有差别。

它是广东定制版。日志里写着 loading mdm file:/lib/libmdm_guangdong.so,省级定制的配置全在这个文件里。移动、联通这种按省定制的设备,同一型号换个省,固件里的业务配置可能完全不一样,铭牌上看不出任何区别。

这台机器的固件被升级过。铭牌上的出厂日期是 2019 年 8 月,但引导程序的构建时间是 2020 年 4 月,内核的更晚,2022 年 7 月。机器里的固件比整机出厂晚了将近三年,说明中间被推过一次升级。看你手上的机器有没有被升级过,比对这两个日期最快,不用拆。

串口日志:Linux 3.4.11-rt19 内核启动,构建于 2022/07/14,CPU revision Broadcom BMIPS4350,可用物理内存 0x0e800000,totalpages 59392
内核接管之后这一屏。构建时间是 2022 年 7 月 14 日,比铭牌上的 2019 年 8 月出厂晚了将近三年。CPU revision 报的是 Broadcom BMIPS4350,可用内存 0x0e800000 折过来是 232MB,另外两段 reserved 的 4MB 和 20MB,正好对上 CFE 里 MC 4MB、TM 20MB 那两项分配

闪存被切成了 10 个分区,核心分区都是 A/B 双份。有 rootfs 和 rootfs_update、image 和 image_update、bootfs 和 bootfs_update,另外还有独立的 nvram、middleware、plugin 和 data。文件系统是 UBI / UBIFS,plugin 一个分区就占了 96MB,专门给插件用。刷坏一套还能回滚到另一套,这是运营商设备敢远程推固件的底气。

Creating 10 MTD partitions on "brcmnand.0":
0x00000580000-0x00004b80000 : "rootfs"
0x000050e0000-0x000096e0000 : "rootfs_update"
0x0000fb00000-0x0000ff00000 : "data"
0x00000000000-0x00000020000 : "nvram"
0x00000020000-0x000004b80000 : "image"
0x000004b80000-0x0000096e0000 : "image_update"
0x00000020000-0x000000580000 : "bootfs"
0x000004b80000-0x0000050e0000 : "bootfs_update"
0x00000f700000-0x00000fb00000 : "middleware"
0x000009700000-0x00000f700000 : "plugin"
串口日志:CFE 参数区 dump,Board Id 968488X41CU,Base MAC 90:83:4b:77:ad:f8,MAC 地址数 11,Voice Board Configuration SI32192ISI_LCQC,Partition 1 Size 96M
CFE 的参数区。Board Id 968488X41CU、Base MAC 和 11 个 MAC 地址、Wlan Feature 0x00,参数表里那条语音方案 SI32192ISI_LCQC 也是从这儿来的。最下面三个分区 96M、4M、4MB,跟内核里 plugin 96MiB、middleware 4MiB、data 4MiB 完全吻合
串口日志:UBI 挂载 rootfs 分区,70MiB,560 个好块、0 个坏块、0 个损坏块,擦除块 128KiB,VID 头偏移 2048
UBI 挂 rootfs 这一屏。70MiB、560 个好块、0 个坏块,连擦除块大小和 VID 头偏移都报了出来。这颗 SLC NAND 的坏块管理交给 UBI 做,跟前面那 10 个分区是一套方案

GPON 的注册标识和口令也在这里。日志里有一行 printSerialPasswd: SN=59:55:4e:47:4b:77:ad:f8,把十六进制拼回来就是 YUNG4B77ADF8,跟铭牌上那串 SN 完全一致。紧跟的一行是 PW=20:20:20:20:20:20:20:20:20:20,十个 0x20 就是十个空格,意思是这台机器的 PON 注册口令还是空的,没有下发过。运营商注册靠的就是 SN 加口令这两样,谁把它们抄走,谁就能在旁边另开一台设备顶你的线,这也是为什么铭牌上的 SN 和 MAC 值得遮一下。

还有一条:这台机器的串口只能看,进不去。日志跑到底停在 Login:,我没口令,试了两次都是 Login incorrect。所以这篇里所有关于系统的信息,都是它自己主动打出来的,不是我登进去翻的。日志能读到这一步已经够用了,想进 shell 还得另想办法。

总结

把这台机器摊开来看,结论其实挺清楚。

  • 硬件本身不寒酸。博通 BCM68488 双核 600MHz,内存闪存各 256MB,DDR3,片内交换直接出四个网口,数据面还有独立的硬件转发引擎。这套底子在 2019 年的百兆口 ONU 里属于正常偏好的水平,板子布局也规矩,没有飞线、没有省掉的隔离变压器。
  • 落后的是年份,不是用料。1 个千兆口配 3 个百兆口,无线只有 2.4G 单频。GPON 下行本身是 2.5G,瓶颈全在网口和空口上。宽带超过 100M 的话,一定要插在千兆那个口上,插错口只能跑到百兆,白花钱。认口最简单的方法是看灯:插哪根线,正面板对应那颗灯就亮,哪颗灯下头写着「千兆」,插那个就对了。
  • 它的可玩性不在硬件,在 CUAdmin 那条路上。普通账号能做的事情很有限,改桥接、看宽带账号这些都在超密后面。公开记录里的绕法同型号适用,但这台机器跑的是 2022 年的固件,能不能进得自己试,我不会替它打包票。
  • 手上还有这台机器的话,两点提醒。一是别复位,复位丢注册信息,重置完不重新注册就上不了网;二是铭牌照片上的 SN、MAC 和默认密码,发图之前遮一下,SN 被人抄走不是小事。

至于这台机器该不该继续用:如果宽带在 100M 以内,把它当纯光猫用,一点问题都没有,功耗低、发热也小;如果宽带已经上了 300M 或者 500M,那它该退休了,前面那三个百兆口就是天花板。

如果你觉得这篇文章不错,有用的话可以点击下面的“赞赏”支持作者,你的支持是我更新的动力(饿饿吃饭)。