一个从没搞过 iOS 开发的纯小白,历经两周时间煎熬,终于能在五一来临之前,在这里很高兴地向大家宣布:
蜃境 X —— 一个 Tailscale 第三方 iOS 客户端
终于可以让大家进行测试使用了!
我们在搞一个从服务端到各平台客户端以及 DERP 节点都可以自己控制的本土化 Tailscale 版本。
目前,我这边已经完成了控制器(基于 Headscale 打造含 WebUI 以及多租户支持的本土化版本)、Windows 客户端、DERP 自动部署及初级管理等能力。
以上这些还不完善时暂时还未打算对外开放,仍在蜃境网络私有 repo 中进行. 这些的很早期版本如果有兴趣的同学可以到我的个人 GitHub中查找。
那么,这个「蜃境 X 」也就是为了我们在做的这一套体系服务的,作为其中 iOS 系客户端存在。
1 、Tailscale 官方 iOS 客户端最新版本已经支持了设置使用自建控制器(即 Headscale 或我们的蜃境),很遗憾我们来晚了一点。但是「蜃境 X 」可以在应用界面即可设置控制器地址,而无需进入系统设置内设置;
2 、官方版本 iOS 客户端尚不支持其非移动端平台上可以进行的 Subnet 、DNS 设置是否使用的开关,「蜃境 X 」可以;
3 、默认使用的是「蜃境」的控制器地址(目前尚未稳定启用),如需使用 Tailscale 官方控制器,需要在服务器域名处填写login.tailscale.com
蜃境 TestFlight 地址
代码:wg6rNFFv
因为本人是小白,所以有问题大家尽管反馈,但请轻拍
欢迎大家试用体验,多提宝贵意见!
1
blankmiss 2023-04-28 09:07:54 +08:00
这个东西怎么保证安全性呢
|
2
gps949 OP @blankmiss
除了界面部分因为官方没开源是自己搞的,后端全部基于官方的开源代码,安全性基本完全依赖于 Tailscale 官方开源代码。 |
3
ww940521 2023-04-28 09:31:15 +08:00
兑换码有问题?数字没法输入。
|
4
dacapoday 2023-04-28 09:41:04 +08:00
“都可以自己控制的本土化 Tailscale 版本”
这个自己是指 蜃境 X 官方,还是最终用户? 本土化体现哪些方面,中文界面?还是。。。 和 Headscale 的区别是? |
6
gps949 OP @dacapoday
“自己”指的是用户自己控制。最终目标是实现 SaaS 服务版和用户自建版均支持。 本土化目前可能主要是中文界面方面。后续有 SaaS 服务的话就是服务资源本土化。 这个帖子中发布的是 iOS 的客户端,没法和 Headscale 比较。在做的蜃境控制器端( Server 端)是基于 Headscale 修改的,一方面功能方面修正了一些 Headscale 的问题、裁剪了一些 Headscale 我个人认为没有用处的部分、增加了完全类似 Tailscale 的 WebUI 管理界面、增加了分租户模式、内嵌了主流三方认证的对接、增加了对 DERP 的自动部署和控制管理……以及更多。 |
8
gps949 OP @ww940521
啊?这什么情况?我对 TestFlight 也不熟悉,但我这里打开(使用隐私模式,所以应该没登录任何账号)显示就是下面的样子: ![]( https://pic.ipv4.uk/截屏 2023-04-28 上午 10.08.55.png) |
9
gps949 OP |
11
roma 2023-04-28 10:16:24 +08:00
支持 ios 15 以下版本么
|
12
gps949 OP @roma
我 XCode 编译设置的是 iOS 15 为最低版本。。。而且我手头没 iOS15 以下的设备,也不知道如果设置成 iOS15 以下编译是否能正常用。等我搞到 iOS15 以下版本的设备了我尝试下 |
13
6IbA2bj5ip3tK49j 2023-04-28 10:53:10 +08:00
这名字第一眼看上去还不会读,想到海市蜃楼才意识到怎么读……
|
15
superhack 2023-04-28 14:58:48 +08:00
赞。能开源就好了
|
16
gps949 OP @superhack
后续包括这个 iOS 版客户端在内的客户端和控制器端都会开源的。由于目前精力实在有限,放出来也无力维护,所以暂时还没放出来。 |
17
housex 2023-04-30 21:36:50 +08:00 via Android
其他平台客户端在哪儿下载?
|
18
patrickyoung 2023-05-02 12:34:24 +08:00
是用了 Packet Filter 吗,这个 entitlement 似乎不太好拿?
我也有类似的需求,不过是 ZT 的。有没有学习 iOS 开发的推荐? |
19
gps949 OP @housex
其他平台的 Tailscale 官方版本应该也都够用吧? 已经搞的 Windows 增强版暂时还没放出来。如果有需要哪个平台的版本您先说一下。因为服务器端现在还有很多 feature 在完善中,所以只能说有需要的尽快安排,但我个人精力有限肯定不会那么快。 |
20
gps949 OP @patrickyoung
整体的架构是 SwiftUI 的 App+NetworkExtension (具体来说是 PacketTunnelExtension ,接口向后对接 Tailscale 开源代码的 Daemon )。 ZT 啊,确实,ZT 的我之前想自建 ROOT (好像叫 earth ?),但官方 iOS 端不支持。加油💪🏻 iOS 开发我是真小白,所以还是由专家来建议学习路线吧。我这边就是需要实现啥就 google 一下😂 |
21
xyzxiaoking 2023-05-04 16:44:02 +08:00
github 首页的贪吃蛇有点好玩,偷了🤣
|
22
ronnie9211 2023-05-10 11:37:54 +08:00
希望可以支持 ios15 以下的设备,真的太需要了
|
23
bjm1996 2023-05-10 17:31:20 +08:00
ios 用 google 账号登录的,开软件要新建 vpn 就无法科学了,那我怎么 google 登录哈哈
|
24
gps949 OP @ronnie9211
这个我试验了一下,首先 swiftui 中一些代码使用了 iOS15 才有的特性,所以要支持 iOS15 以下的话,先不说网络部分,UI 部分就得先修了。。。这周主要在处理各客户端版本号统一、Linux 发包、群晖版本编译和修改的事情,改 iOS UI 有点没精力了,可能会稍微往后放放。但我会尽量尝试的,到时如果能 build 过了可能就得看看谁有设备能帮着测了。 @bjm1996 你是说你的 Tailscale 是使用 Google 账号登录的吗?这个确实在苹果这样的单 VPN 设备上是问题。所以还是建议不用 Google 以及 Github 开 Tailscale 账号。 目前我这边搞的自部署服务器端已经可以支持配置 Google 、Microsoft 、Github 、Apple 账号登录,之前搞过短信和微信小程序扫码登录但暂时砍了(因为不是标准 OIDC ),后续如果有资源的话会考虑增加其他常用三方登录方式。 |
26
ak646951596 2023-07-11 09:32:09 +08:00
@bjm1996 对啊 同问
|
27
bjm1996 2023-07-11 09:36:16 +08:00
@ak646951596 我重新换了微软登录没问题了,不然就路由挂科学
|