给 Tailscale Taildrop 一个更好的命令行交互体验

查看 21|回复 0
作者:Contextualist   
Taildrop
Tailscale 是个软组网工具,可以在广域网的设备间建立加密连接,并映射为虚拟网络设备,让它们仿佛处在同一局域网下。而 Taildrop 则是 Tailscale 提供的文件传输服务,在安装了 Tailscale 的设备间收发文件。
acp
acp 是我的个人项目,致力于提供一种简单的方式,让自己的设备间通过命令行点对点传输文件。使用体验上尽量贴近 cp ,发送端指定文件,接收端不需要指定任何信息(不需要别名、IP 地址、路径、一次性码)。并且启动无分先后,两边都就绪后即开始协商建立连接传输。
# 发送端
acp path/to/files
# 接收端,至 $(pwd)
acp
# 或接收到/接收为 path/to/target
acp -d path/to/target
为了让任意两个设备能协商建立点对点连接,我手搓了个打洞 NAT 穿越。我这简陋的实现能覆盖很多情况,但是 NAT 穿越是个很复杂的问题,所以还是会有打洞失败的情况。
Taildrop × acp
直到我用上了 Tailscale ,被他们专业的打洞技巧所折服,又发现了他们整的 Taildrop 。Taildrop 传输效果不错,但是在命令行里使用起来比较繁琐且限制较多。
于是乎,我萌生了”acp 交互 × Tailscale 底层”的想法。
acp v0.3.0 在维持简洁统一的交互下,底层连接可自动选用 Tailscale 。(acp 的老用户们,你们要是不喜欢 Tailscale 也没关系,因为从老版本升级上来的 acp 是默认不启用 Tailscale 集成的)
相较于 Taildrop ,acp 简洁的交互带来了下列提升:
  • 可以发送文件夹
  • 发送端无需写出接收设备的名字
  • macOS 和 Windows 端可接收文件至任意文件夹,而不只是下载文件夹

    相较于上一版 acp ,Tailscale 强大的组网能力带来了下列提升:
  • NAT 打洞成功率大大提升
  • 可以使用其中继节点,确保任何情况下都能建立连接

    那么,在哪里可以买到呢?
    项目地址:github.com/Contextualist/acp
    新用户安装 acp 前若已经安装了 Tailscale ,会自动启用 Tailscale 支持。或者在安装 Tailscale 后,在 acp 配置文件中加上 strategy:["tailscale","tcp-punch"] 优先启用 Tailscale 支持,或 strategy:["tcp-punch","tailscale"] 将 Tailscale 作为备选。
    让命令行个人文件传输像 cp 一样简单
  • 您需要登录后才可以回帖 登录 | 立即注册

    返回顶部