中国移动在为用户安装宽带时,总会好心地“赠送”一个光猫(调制解调器)。这看似是个不错的促销手段,但通常情况下,这个“赠品”会给用户带来许多麻烦。
赠送的“光猫”安装了许多不必要的功能。光猫的本职工作是进行光电转换,然而中国移动的“光猫”不仅承担着光电转换的任务,还同时进行拨号上网、路由、地址转换(NAT)、端口映射、文件服务器(FTP)等等额外的功能。这些功能让本就廉价而算力低下的光猫运行缓慢,不堪重负。最可气的是,中国移动为了节约维护成本,将光猫的绝大多数设置项锁定,防止用户修改。为了重新“拥有”光猫,我决定夺回对光猫的控制权。
- 中国移动产品
- 能够开启Telnet服务
我的型号是H2-2。下列操作理论上使用于其他型号。
- 浏览器前往
http://192.168.1.1/
(默认地址),输入光猫下的账号(user)与对应密码登录Web UI。 - 关闭WLAN、Samba、FTP等不需要的功能。
- 浏览器前往
http://192.168.1.1/
(默认地址),输入光猫下的账号(user)与对应密码登录Web UI。 - 新建标签页,前往
http://192.168.1.1/getpage.gch?pid=1002&nextpage=tele_sec_tserver_t.gch
(或http://192.168.1.1/usr=CMCCAdmin&psw=aDm8H%25MdA&cmd=1&telnet.gch
),打开Telnet on LAN。 - 启用Telnet客户端,命令行执行
telnet 192.168.1.1
,使用Username: CMCCAdmin; Password: aDm8H%25MdA
登录。 - 执行
su
,使用Password: aDm8H%25MdA
获取root权限。
光猫使用 sidbg 1 DB
管理参数数据库 DB
。因此对于光猫的修改,大都可以直接对数据库进行操作。具体语法直接输入尝试即可。主要用到:
- 设置条目值:
sidbg 1 DB set <Table-Name> <Row-Number> <Item-Name> <Value>
- 查看表:
sidbg 1 DB p <Table-Name>
- 解密数据库:
sidbg 1 DB decry /userconfig/cfg/db_user_cfg.xml
- 保存数据库:
sidbg 1 DB save
可以通过解密数据库得到管理员账号、密码,但直接设置更加方便
sidbg 1 DB set DevAuthInfo 0 User <Username>
sidbg 1 DB set DevAuthInfo 0 Pass <Password>
sidbg 1 DB save
其中<Username>
与<Password>
字段自行定义。
之后,使用设置好的账号密码登录Web UI即可。
得到管理员账号后能够修改更多设置,但中国移动仍然能够远程控制你的光猫。许多用户曾遭到远程重置的待遇。况且,外人能够远程监控家用网络设备就足够令人心惊胆战了。所以,首当其冲应当禁用远程控制。
打开“网络侧信息”能够看到,共有四个连接:TR069
、Internet
、VOIP
与OTHER
。TR069
就是远程控制的连接。Web UI是无法禁用此连接的,只能从后台进行操作。
- 进入Telnet,获取root权限
- 执行命令
sidbg 1 DB p WANC | grep 'Enable/|WANCName' #查看连接列表
sidbg 1 DB set WANC 0 Enable 0 #禁用TR069连接
sidbg 1 DB set MgtServer 0 URL http://0.0.0.0 #修改ACS报告URL
sidbg 1 DB set MgtServer 0 PeriodicInformEnable 0 #禁用定时报表
sidbg 1 DB save
reboot
重启光猫。- 等待重启后查看Web UI,TR069连接应显示“断开” Note: 禁用远程控制也能够减少光猫负载。
如果拥有路由器,使用路由器拨号能够一定程度上减轻光猫负担,提高网速。 首先要得到宽带的账号与密码。账号为绑定的手机号,密码可以致电客服查询,也可以解密数据库(见下文)得到。 具体实现方法各异。这一方面教程众多,不妨直接针对光猫型号查询方法。 对于H2-2,
- 访问
http://192.168.1.1/bridge_route.gch
,单击“桥接复原”。 - 等待重启
- 路由器设置“拨号上网”,填入账号与密码。 注意,桥接模式下无法管理光猫。可以直连光猫,或暂停拨号上网进行设置。
解密数据库后能够更加透彻地了解光猫的设置,定制适合自身的配置。
- 进入Telnet,获取root权限
- 执行命令
sidbg 1 DB decry /userconfig/cfg/db_user_cfg.xml
udpsvd -vE 0 69 tftpd -c /
- 启用TFTP客户端,命令行执行
tftp -i 192.168.1.1 GET /tmp/debug-decry-cfg <Local-Path>
。<Local-Path>
为本地路径,如"C:\db_user_cfg.xml"
。 - 使用记事本(或其他文本编辑器)打开
db_user_cfg.xml
。
明文数据库不仅能够找到隐藏的密码(Ctrl+F
查找),也能修改如Telnet登录密码等有意思的条目,进行定制。
Note: 别忘了sidbg 1 DB save
!
Plus, 有些设置需要reboot
重启后才能生效。
以防万一,建议将光猫设置进行备份。
- 一方面,可以使用“管理-恢复”备份到usb接口,
- 也可以直接备份数据库文件
/userconfig/cfg/db_user_cfg.xml
。