远控方案

上学/出差在外,总有远程控制电脑的需求。我折腾过一些,将经验写于此处。

我的刚需:Android 控制电脑;P2P 低延迟。

目前正在用 sunshine + moonlight。

一体化方案

这里主要是企业级一体化的解决方案,一个方案包揽了全平台的服务端与客户端,并且不需要涉及公网等,一般具有容易上手的 GUI。

向日葵远程控制

老牌远程控制软件了,以前我用了很久。其拥有优秀的客户端界面交互和无人值守。可惜的是免费版流量会经过官方服务器,无法做到 P2P,延迟还是比较高的。

Parsec

也是之前我很喜欢的远控软件,用来 Android 控制 Windows 非常好用。它主打 P2P 的低延迟。与向日葵相比:

不过后来 Parsec 进行了商业化,现在我在 Windows 上甚至一直无法登录(重装系统后也不行,所以是服务端问题),显示连接到 /v2/auth 啥啥啥的超时,所以只能尝试其他的远控方案。

RustDesk

一个开源的服务端/客户端软件,需要自己用服务器搭建。本质上还是需要让流量走中转服务器,延迟与丢包取决于中转的质量。

我从不买国内服务器,于是否决了。而且即使这玩意是 Rust 写的,它也有爆出过安全漏洞。

ToDesk

跟向日葵差不多,都是中心化连接。UI 会好看一点,但是我感觉没有向日葵好用。

TeamViewer

很早之前试过一次,感觉难用,不用了。这玩意国外用得应该更广泛一些。

连连控

一个相对的国产方案,免费版也支持 4k 传输。控制是通过国内线路中转的,不是 P2P,不过国内的延迟应该也不算高。

分离式方案

由于企业级一体化方案基本没有 P2P(有也不能用),因此我将重心放到了分离式方案上。分离式指用户需要自己部署客户端、服务端、内网穿透等模块,具有复杂与高度自定义化的特点。

内网穿透

分离式方案要想实现 P2P,关键就在内网穿透这一步。如果我们使用支持 P2P 的虚拟组网内网穿透,就可以享受低延迟的快感。

具体使用哪个,请前往内网穿透页面。

皎月连

是一个国内的免费(需要每日签到)内网穿透服务,支持 P2P 和虚拟组网。一般国内教程里都跟 sunshine + moonlight 配套出现。试了一下还行。

VNC

VNC 也是 Linux 乃至许多系统上的成熟远控方案。严格来说这是一套协议,服务端和客户端都可以任选。

VNC 的缺点是传输的是屏幕图像的变化部分而不是视频流,因此不支持修改码率,可能会对带宽造成压力。

sunshine + moonlight

这是一个广泛使用的游戏串流方案,也可以用到远控上。其中 sunshine 是被控端,moonlight 是主控端。二者之间还需要一个虚拟组网的内网穿透进行连接。(需要虚拟组网的原因是,sunshine 用了很多端口,写映射的话比较麻烦)

其他不采纳方案

SSH

最著名的命令行远程连接方案,可以在任何客户端连上任何服务器。坏处是只有命令行黑窗口,显然不方便操作。Windows 很多 GUI 的东西不能用 CLI 代替,例如最常见的远控浏览器,即使 Linuxer 能驾驭命令行,遇到这种需求也没辙。

NoMachine

国外的局域网远控软件,需要内网穿透。全英文,具有非常古老的 UI,并且连接质量也不咋样。然后 windows 受控端卸载程序还卡死了。纯纯的垃圾。