把光猫搞成一个下载服务器

2022-04-10 15:21:48 +08:00
 zerofancy

本人的初衷是调研光猫改桥接的方式,以便能够以更高的速度 BT 下载。然而最后花力气进了管理员帐号发现也没有改桥接的选项,但在光猫上跑个下载服务却是可行的。 光猫型号:HG2543C1

  1. 访问 http://192.168.1.1 ,输入密码后进入光猫管理后台。这里我找到“上网帐号设置”,备份宽带帐号和密码。不得不说他系统还是挺拉的,密码框直接用审查元素功能把 type 改为 input 就可以看到密码了。
  2. 第一步后台不要退出,访问 http://192.168.1.1/servmngr.html 。这里看到一个空白页面,审查元素后发现大有乾坤。
  3. 将这些代码取消注释,此时网页还是空白的,但是用 Ctrl+A 可以看到实际是有内容的。在这个页面开启 telnet 访问,并设置密码。注意用户名为 admin 不要改,否则后面 telnet 登陆不进去。
  4. telnet 192.168.1.1 成功后执行sh。然后uname -a看下。这里我就不记录查看管理员密码步骤了,反正这个型号管理员面板也没有设置桥接的选项。
  5. top,发现占用内存最高的是个两个 java 进程。java -version,发现安装了 java8 。
# java -version
openjdk version "1.8.0-internal"
OpenJDK Runtime Environment (build 1.8.0-internal-jenkinsang_2022_01_15_04_03-b00)
JamVM (build 2.0.0, inline-threaded interpreter with stack-caching)
  1. free命令可知总内存约二十多兆,剩余仅 3 兆。这点空间是搞不了什么事情的,因此我尝试干掉前述两个 java 进程。ps -aux | grep java,发现除了存在两个 java 进程,还写了脚本自动把这两个进程拉起来,即/etc/monitor_java.sh 。统统 kill 掉。
  2. 现在有 10 兆左右的内存了,对于 java 来说可能还是不太能搞事,但跑个 aria2 足够了!尝试插入 U 盘,发现在/mnt/usb1_1自动挂载。
  3. 交叉编译 aria2c ,这里我用的是这个脚本:https://gitee.com/logic_2050/auto-build-aria2-mips32-static 。在我的 debian11 编译过程中只遇到一个问题,手动sudo apt install autoreconf即可。
  4. 如何把文件弄到光猫里,以及取出来?每次插拔 U 盘也太麻烦了。于是我找到一个支持上传的简单文件服务器:https://github.com/mayth/go-simple-upload-server。仍然交叉编译到 mips 静态包。env GOOS=linux GOARCH=mips GOMIPS=softfloat go build -trimpath -ldflags="-s -w -extldflags=-static"
  5. 成品。:

问题:

  1. 被我干掉的两个 java 进程是做什么的?光猫跑 java 属实有点离谱,一半内存都是他们占的,干掉后也不影响上网,甚至也不影响光猫后台管理。有兴趣的可以探究下。
  2. 不支持 https 。这个原因没有深入探究,看网上说编译 aria2c 时要指定证书,我这里暂时通过设置check-certificate=false不检查证书。
  3. 2GB 左右的大文件会失败,提示文件读写错误,这个我怀疑和光猫对 exFat 分区格式支持不好有关系。但手里只有一个 U 盘,并且暂时不方便格式化所以作罢。

这里是我编译好的 aria2c 和 go-simple-upload-server 。另外的 jar.tar 是我从光猫拷出来的那个原有的 java 程序,有兴趣的可以分析一下。

链接: https://pan.baidu.com/s/1AWR_rIVg58DcYZ_54d51ZA 提取码: 5kq8

7953 次点击
所在节点    分享创造
24 条回复
1903326369
2022-04-15 19:45:27 +08:00
浙江打电话就能改桥接~
timothyye
2022-04-16 08:23:22 +08:00
光猫: 饶了我吧
Decent
2022-04-16 19:42:54 +08:00
买个支持桥接的光猫不就行了
goodryb
2022-04-18 15:45:12 +08:00
不是应该更关注那两个 java 程序是干什么的吗

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/846078

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX