研究这套方案的背景是:我上班所在的办公室没有外网Wi-Fi。虽然我已经办了一张流量卡,但手机的第二卡槽被另一张estk实体卡占据,没办法直接将流量卡插进手机。
总之,我需要一个可以插流量卡的移动Wi-Fi,长期放在办公室使用。不带电池倒可以接受,真要带出门时接在充电宝上即可。
机器选择
经过互联网上的一番调研之后,我锁定了中兴F50这台机器。选择理由是网络上分享相关魔改的方案非常多,方便刷机以及拆解。而同一系列的中兴F50Pro,看起来是加了一个Pro的头衔,过热的问题也确实有一定程度的缓解,然而实际的性能比F50要更弱一些。并且如果不满足于原装版本想做改造,那么相关的经验文章也更少,而我对于硬件这一块的知识基本为零,所以我会尽量避免在完全无指导的情况下做拆机、短接一类的操作。
拆机改装散热模块
原装的F50完全不做改装的话积热非常严重,用不了一阵就会导致视频卡顿。因此我选择被动散热与主动散热两开花:被动散热是在原有的散热片上涂硅脂并装上铜片,主动散热是在设备外安装带涡轮风扇的散热器。这样能将CPU温度从60°C压到45°C左右,在室内环境使用基本不出现降速问题。
主动散热
外装的主动散热淘宝上有非常多的3D打印外壳,个人觉得效果上大差不差,我选的是可达鸭的无电池版背包拓展坞,稍微照顾了一下可能要挂包上带出门的需求。安装的时候最好是设备信息面朝上,因为主要的热源在Wi-Fi正面,正面朝下方便风扇更快带走热量。
被动散热
被动散热选用的是XTSK家打包好的散热套装包,包含了一块紫铜片、一张纳米碳铜以及一管硅脂。具体的安装流程可以在他们的b站号上查到,这是目前最新安装视频。
第一步是用塑料片塞进缝隙,将背板撬开。
第二步是拧下背板与塑料盖子之间的全部螺丝,从type-c接口附近的空缺处撬开缝隙将塑料盖子取下。揭下盖子后,主板本体就露出来了,可以看到一层非常薄的铜纸贴在处理器上。
第三步,将碳铜贴纸按照形状贴在芯片上。
第四步,将另一面的铜纸撕下,把处理器表面的胶水清理一下。在指定位置贴上双面胶,方便铜板与主板之间粘贴得更牢固。
最后一步,盖上紫铜块,还原设备。
刷机并写入高级系统
KanoKano开发的高级系统UFI-TOOLS以及刷机方案已经相对成熟,并且到目前为止还在不断更新。作者提供了两种使用方法,为了解锁更多功能,我选择的是将UFI-TOOLS安装在Wi-Fi设备里使用。
作者发布的博客是一年前撰写,所以和目前的刷机方法稍有区别。整个刷机过程不需要拆开设备,现在只需运行两个程序即可。
在刷机前,记得首先进入F50自带的后台,确认好固件版本号。我购买到的机器版本为B15。
Step1: 临时打开无线ADB
我不是非常理解无线ADB是干什么的,但如果什么都不做直接运行下一步的一键刷机程序,就会发现程序提示需要开启这一功能。
原作者已经制作好了打开工具,云盘地址为123云盘地址,提取码BoL5,程序名为:临时打开无线ADB工具【适用于F50_B15、F50_B16、F50免插卡B03、F50存储版B08、F50ProB15、U30Pro部分版本】.exe
运行前,一定要确认好版本是否匹配。接着就可以将设备用数据线连接到电脑,运行该程序。
Step2: 一键刷机
如果上一步非常顺利,那么就可以直接使用原作者提供的一键刷机程序了,一键安装器地址在作者个人的云盘上:UFI-TOOLS一键安装器
同样的,确认好固件版本能对上后,插入设备后运行刷机exe程序。
现在设备在完成刷机的同时,还顺带安装了UFI-TOOLS面板,现在可以直接使用了。
安装猫猫插件实现透明代理
现在大部分主流终端都有开发相应的代理客户端,但是总是有一些小众设备不管是系统还是配置问题无法支持在本地安装客户端,也没有办法配置代理服务器从其他设备转发。针对这个问题,最好的方案还是在将分流转发的任务统一交给路由器这一层。
下载插件
那么下一个问题就是如何在移动Wi-Fi中安装代理工具。原作者也写好了一个“猫猫插件”,使用的内核是Clash系,Clash系列分支比较复杂,我能够确定的是可以直接用mihomo的配置文件。该插件可以直接通过内置插件商店添加:
将插件JS文件下载至设备后就可以点击提交就可以进入初始yaml配置页面。
自定义配置文件
如果使用的是机场的订阅链接,那么直接点击“订阅链接”一键配置即可。我长期使用的是自建VPS单节点,直接上传转换后的链接生成的yaml文件实在太过于复杂。所以这里我考虑自行编写一份yaml配置文件。
1allow-lan: true
2cmfa-plugin:
3 dashboard: zashboard
4 mode: tproxy
5 mosdns_enable: false
6dns:
7 default-nameserver:
8 - 223.5.5.5
9 - 119.29.29.29
10 direct-nameserver:
11 - https://dns.alidns.com/dns-query
12 - https://doh.pub/dns-query
13 direct-nameserver-follow-policy: true
14 enable: true
15 enhanced-mode: redir-host
16 ipv6: true
17 listen: 0.0.0.0:1053
18 nameserver:
19 - https://8.8.8.8/dns-query#disable-ipv6=true
20 - https://1.1.1.1/dns-query#disable-ipv6=true
21 perfer-h3: false
22 proxy-server-nameserver:
23 - https://dns.alidns.com/dns-query
24 - https://doh.pub/dns-query
25 respect-rules: true
26external-controller: 0.0.0.0:7788
27external-ui: WebUI/zashboard
28external-ui-url: https://github.com/Zephyruso/zashboard/releases/latest/download/dist.zip
29find-process-mode: "off"
30geo-auto-update: true
31geo-update-interval: 24
32geodata-loader: memconservative
33geodata-mode: true
34geox-url:
35 asn: https://github.com/xishang0128/geoip/releases/download/latest/GeoLite2-ASN.mmdb
36 geoip: https://cdn.jsdelivr.net/gh/Loyalsoldier/v2ray-rules-dat@release/geoip.dat
37 geosite: https://cdn.jsdelivr.net/gh/Loyalsoldier/v2ray-rules-dat@release/geosite.dat
38 mmdb: https://testingcf.jsdelivr.net/gh/MetaCubeX/meta-rules-dat@release/country.mmdb
39hc:
40 health-check:
41 enable: true
42 interval: 900
43 url: https://www.gstatic.com/generate_204
44 interval: 3600
45keep-alive-idle: 600
46keep-alive-interval: 15
47log-level: info
48mixed-port: 7890
49mode: rule
50ntp:
51 enable: true
52 interval: 30
53 port: 123
54 server: time.apple.com
55 write-to-system: true
56proxies:
57 - alpn:
58 - h2
59 - http/1.1
60 client-fingerprint: randomized
61 flow: xtls-rprx-vision
62 name: PROXY
63 network: tcp
64 port: 1111
65 reality-opts:
66 public-key: pubkey
67 short-id: shortid
68 server: example.com
69 servername: example.com
70 tls: true
71 type: vless
72 udp: true
73 uuid: uuid
74rule-providers:
75 advertising:
76 behavior: classical
77 format: yaml
78 interval: 86400
79 path: ./rules/advertising.yaml
80 type: http
81 url: https://cdn.jsdelivr.net/gh/blackmatrix7/ios_rule_script@master/rule/Clash/Advertising/Advertising.yaml
82rules:
83 - RULE-SET,advertising,REJECT
84 - AND,((NETWORK,udp),(DST-PORT,443)),REJECT
85 - GEOIP,PRIVATE,DIRECT,no-resolve
86 - GEOSITE,PRIVATE,DIRECT
87 - GEOSITE,category-games@cn,DIRECT
88 - GEOIP,CN,DIRECT,no-resolve
89 - GEOSITE,CN,DIRECT
90 - MATCH,PROXY
91secret: "123456"
92sniffer:
93 enable: true
94 parse-pure-ip: true
95 skip-domain:
96 - +.push.apple.com
97 - Mijia Cloud
98 sniff:
99 HTTP:
100 override-destination: true
101 ports:
102 - 80
103 - 443
104 - 8080-8880
105 QUIC:
106 ports:
107 - 443
108 - 853
109 - 8443
110 TLS:
111 ports:
112 - 443
113 - 853
114 - 8443
115tcp-concurrent: true
116tproxy-port: 7893
117unified-delay: true大部分配置内容照搬了猫猫插件自带的配置,我仅仅手动填写了proxies、rule-providers和rules三点:
proxies:只填写了一条我在使用的reality协议节点
rule-providers:仅增加了一条去广告相关的列表
rules:以GEOSITE和GEOIP文件为主,主要策略是大陆白名单模式,专门增加了一条category-games@cn规则,避免下载游戏等情况烧掉大量流量。
修改面板URL
目前版本的猫猫插件文件中,写死的面板地址有些问题,导致插件页面按钮处点击“打开面板”或者“刷新网页”时会登录失败,需要手动填写账密登录。
解决方案也很简单,点击插件列表中的猫猫插件JS文件打开编辑页面,找到“打开面板”和“刷新网页”两个按钮的代码。
原本的url是:
1`http://${UFI_DATA.lan_ipaddr}:7788/ui/?t=` + Date.now();将两处链接都修改为:
1`http://${UFI_DATA.lan_ipaddr}:7788/ui/#/setup?hostname=${UFI_DATA.lan_ipaddr}&port=7788&secret=123456`;这里的端口号和密码,都是猫猫插件默认的设置,如果在yaml文件里修改过,那么要在这里更新一下。点击提交重启服务后,就能直接看到登录后的面板页面了。
至此,插件配置完毕,点击提交使插件重启运行,就能看到正确的面板页面,且实现了连接终端设备的透明代理。
番外:如何从官方渠道办理一张流量卡
众所周知,过去想办一张便宜大碗的流量卡,最优方式是找第三方渠道办理。然而从今年8月开始,官方已经关闭了第三方渠道,想方设法鼓励大家订购2元/G的天价流量,同时营业厅app里也只会在套餐选择和流量订购页面里面放上死贵的套餐。
尽管如此,我们还是可以通过打客服电话修改套餐的方式办到流量相对够用的流量套餐。此处以我正在用的四川电信星卡29元套餐(实付19元/月,180G流量)为例,分享一下办理流程。其他省份或运营商的,可以看看小红书🍠上有没有类似的办理流程。说明一下,真的不是广告
第一步是确认要办理的套餐是否还在,可以在营业厅app中找到”资费公示“这一项进入。我办理的是电信星卡(29元套餐2022版),包含30G专用流量以及150G通用流量(通用流量需额外领取,不在套餐详情中显示),目前为止还可以查到详情。
第二步是办理一张新卡,如果你已经有一张闲置的电话卡可以跳过。这一步线上app或线下营业厅都可以完成,推荐是在线上办理,因为流程简单,并且同城顺丰发货中午办理下午收货。办新卡的时候是肯定没办法直接选中最实惠的套餐的,但是可以先预定同价位的天翼畅享套餐,预存一点话费之后再修改套餐。在app上填写个人信息以及收货地址之后,就可以等顺丰小哥上门帮忙走激活流程了。
第三步是修改套餐。确认好手机卡已经激活之后,打10000号人工客服,直截了当地要求“我要修改为星卡29元套餐“。挂断电话后客服会发来一个短信链接,点进链接开始自助办理变更流程。
最后一步是领取流量、要预存返现折扣。确认好套餐已经变更之后(我在办理时似乎是次月生效),再次打电话联系人工客服,同样是直接要求“我要领星卡的50G流量”以及“参加存100元返120元的预存活动”。客服也会发短信链接到手机,点进网页后可一键领取3个50G通用流量。在链接中充值100元后,就可以额外享受每月返10元的优惠,共12个月。
需要注意的是,如果参加预存活动,在这12个月中无法更改套餐。但折算下来,这张卡就变成了19元/月共180G流量的套餐,性价比对我来说还算不错(工作日上班期间平均一天使用5~6G),也不打算再更改了。
P.S. 据说8月起关停第三方渠道商后,运营商又在偷偷摸摸下架便宜流量套餐了。总之如果有需要还是尽早办理一张,反正套餐加价减量这一块,运营商从不让我失望 :)