V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
mario85
V2EX  ›  宽带症候群

关于家庭云

  •  
  •   mario85 · 2017-12-04 17:57:08 +08:00 · 4357 次点击
    这是一个创建于 2537 天前的主题,其中的信息可能已经有所发展或是发生改变。
    本人广东电信,昨天心血来潮想弄这个,发现没有适合自己路由器的,于是打算自己抓包
    发现安卓客户端的提速机制是先发启用请求,再在传输文件的同时发送心跳包,文件传输结束后发送结束请求
    重放启用请求(Start)可以提速,但是心跳包重放失败,返回 400,定睛一看发现包头有校验字段,乍一看看不出来是什么
    于是我反编译了 app (完全没权限要求的 app,给个赞,估计用的人多了照样沦陷),把里面的校验算法找出来,翻译成 python 代码丢路由器执行
    一开始的确美滋滋,提速效果明显;但是可能是因为我用力过猛( cron 一分钟发一个心跳),到了中午居然把我上下行带宽都减半了,也就是 我原本是 200/4 的提速后是 200/20,现在提速后也只有 100/10 了
    不知道明天会不会恢复,感觉电信也就这个尿样了,还指望真的能爽一波

    脚本总大小 5KB,理论上路由器装上 python 就能跑,只需要抓到登陆时的 accessToken 即可,不需要抓 start,明天要是不恢复带宽,我决定大闹营业厅+开放脚本代码(虽然已经不是第一次大闹了)
    第 1 条附言  ·  2017-12-16 23:22:00 +08:00
    经过几天测试,发现即使发送了心跳包,加速也会在指定时间内结束。所以其实只需要在加速剩余时间耗尽前(一般是一小时)重放 startQos 请求包即可保持加速状态,已无需使用从 app 中解出的算法。
    那个校验算法十分简单,实际上就是将请求参数拼成字符串再进行 SHA1 加密。如果还是有人需要学习算法源代码那就开源
    23 条回复    2017-12-16 20:38:05 +08:00
    liuminghao233
        1
    liuminghao233  
       2017-12-04 18:00:41 +08:00 via iPhone
    很好奇为什么会有这样的人
    hugelion
        2
    hugelion  
       2017-12-04 18:02:11 +08:00
    赞一个!!!!!!
    楼主能不能弄成一个能在 PC 上运行的软件,刷路由器太复杂了, 搞不来!!!!
    hugelion
        3
    hugelion  
       2017-12-04 18:04:04 +08:00
    此外,可以参考这两个帖子:
    KS 改版梅林
    [2017-10-28] [家庭云提速] 广东电信家庭云上行提速 20M
    http://koolshare.cn/thread-126377-1-1.html
    (出处: KoolShare)
    H 大 Padavan
    [2017-10-25]广东电信家庭云上行提速 20M [抓取代码教程]
    http://www.right.com.cn/forum/thread-255021-1-1.html
    (出处: 恩山无线论坛)
    hellommd
        4
    hellommd  
       2017-12-04 18:22:18 +08:00
    跑过两个月,没问题,我是 10 分钟一次定时任务,后台发现上传用处不大就没再续费了。
    billytom
        5
    billytom  
       2017-12-04 18:56:22 +08:00
    同求,能不能弄一个 Mac 上可执行的,路由器为了稳定不想刷
    pabupa
        6
    pabupa  
       2017-12-04 18:58:14 +08:00 via Android
    人无聊起来真可怕😨
    xeis
        7
    xeis  
       2017-12-04 19:06:25 +08:00 via iPhone
    我是用 start 每 5 分钟一次,然后每分钟 check 加速剩余时长。
    junp
        8
    junp  
       2017-12-04 19:16:44 +08:00 via iPhone
    以后用不了都是楼主害的。
    Neo
        9
    Neo  
       2017-12-04 20:06:03 +08:00
    加油 lz,佩服喜欢折腾的人
    alect
        10
    alect  
       2017-12-04 20:56:56 +08:00
    其实你偷偷的用就好了……别晒出来
    panpanpan
        11
    panpanpan  
       2017-12-05 08:14:26 +08:00 via iPhone
    楼主都说了用 python 写的,楼上各位为什么还要纠结什么 mac 能用的,pc 能用的。
    whx20202
        12
    whx20202  
       2017-12-05 11:52:09 +08:00
    LZ 方便共享一下 python 代码吗
    billytom
        13
    billytom  
       2017-12-05 18:06:47 +08:00
    @mario85 LZ 方便共享一下 python 代码吗,万分感谢
    EricInBj
        14
    EricInBj  
       2017-12-06 15:46:03 +08:00
    以前北京联通有提速到 100M 的接口,而且不减时长。
    现在似乎没了
    mario85
        15
    mario85  
    OP
       2017-12-06 17:47:18 +08:00
    @EricInBj 其实并没有时长限制,投诉一波之后现在稳定 200/10 了(估计上传还把我当成 ADSL 用户)
    hugelion
        16
    hugelion  
       2017-12-06 17:58:46 +08:00
    @mario85 家庭云提速都是 20M 的,这个很明显,特地人为给你端口限速 10M 了。
    mario85
        17
    mario85  
    OP
       2017-12-07 11:47:16 +08:00
    @hugelion 看下面的小字,ADSL 用户最大提到 12M,光纤用户最大提到 20M。所以是被错认为 ADSL 用户了,前天打客服说宽带数据混乱了
    hugelion
        18
    hugelion  
       2017-12-07 14:03:25 +08:00
    @mario85 那么,还开放脚本代码吗???
    mario85
        19
    mario85  
    OP
       2017-12-07 21:00:50 +08:00
    @hugelion 过两天再说吧,最近略忙。而且自己弄也不难,无非就是找到那个算法然后翻译一下,shell 调用代码拿到校验码,再用 curl 组织下包
    hneyyy
        20
    hneyyy  
       2017-12-11 21:19:23 +08:00
    @mario85 可以一起研究下,缺那个算法,哈哈
    z352022657
        21
    z352022657  
       2017-12-15 12:35:03 +08:00
    联系 QQ352022657 pc 端 自动刷新 我教你
    z352022657
        22
    z352022657  
       2017-12-15 12:42:41 +08:00
    家庭云有几段 http 请求,第一条是 uploadFileId 获取文件 Id 必须有这个
    第二条是利用获取到返回的 uploadFileId 文件 ID 提交加速
    加速成功会提示<qosSn>63659949522692516</qosSn></qosInfo>
    其中这段数字会随着使用加速开关的人数而逐渐变大
    还有一段代码是 http://api.cloud.189.cn/family/qos/checkQosAbility.action?&clientType=FAMILY_IPHONE
    获取加速剩余时间,每加速一次 可以持续 60 分钟
    为什么软件每次上传文件加速一次?
    那是因为他每次上传完文件后会提交一个关闭加速的 http 请求,我们用脚本就可以提交一次持续 60 分钟,而不是几分钟
    mario85
        23
    mario85  
    OP
       2017-12-16 20:38:05 +08:00 via Android
    @z352022657 只要定时重放 startQos 请求就可以保持了,其他所有请求都可以不用管
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2897 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 00:31 · PVG 08:31 · LAX 16:31 · JFK 19:31
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.