引言
随着近些年远程办公的日益兴起,使得原本更多面向 IT 运维的远程控制类软件也逐渐走进了许多一般用户的视野。
通过远程控制软件 ,我们在家就可以直接控制办公室的电脑,取回办公资料或者直接在公司内网进行 OA 流程审批;相反我们也可以在公司控制家中的电脑,跟踪孩子上网课的情况或者远程打印文件等等。
对于 IT 运维而言,第三方远程控制软件存在的意义则更为重要:一些对网络安全要求较高的机房,会针对性地封禁掉常用的系统远程管理端口,第三方的远程控制服务可以确保远程访问的安全可控。
相比各大系统自带的远程控制服务,第三方的远程控制软件不限制网络和 IP,即便不同的网络环境的设备也可以轻松连接,有着更加强大的功能优势。目前市面上功能类似的远程管理软件也是多如牛毛,有大家最常见的国产服务向日葵、也有老牌的远程管理软件 Splashtop 和 TeamViewer、更有一些颇具特色的如 AnyDesk、RustDesk 、GotoHTTP 以及 Jump Desktop 等。
今天我针对平台支持、控制模式、连接和画质、操作和功能等几个维度,选出了 7 款相关软件进行对比,如果你对于远程控制管理软件存在需求,希望这份对比能够对你的选择起到帮助。
被控平台 | 主控平台 | 中转服务器 | 控制模式 | 连接质量 | 画质 | 操作界面 | 远程文件传输 | 远程打印 | 价格 | |
向日葵 | Windows、macOS、Linux、Android、iOS(有限支持) | Windows、macOS、Linux、Android、iOS | 可根据账户分配官方服务器、可付费私有化部署 | 配对码、无人值守 | 免费版只有一个服务器,付费版提供 BGP 机房,质量高延迟低 | 只有硬件加速项,实际画质一般 | 有快捷菜单,针对移动端远程控制有优化 | 有独立文件传输模块 | 支持远程打印 | 有免费版,可实现大部分功能 |
AnyDesk | Windows、macOS、Linux、Android、iOS(有限支持) | Windows、macOS、Linux、Android、iOS、freeeBSD、树莓派、Chrome OS | 官方提供(不提供选择)、企业版可私有化部署 | 配对码 | 一般,受制于当前网络环境 | 设置项目丰富,画质最佳可配置 | 一般,移动端控制不方便 | 有独立文件传输模块 | 支持远程打印 | 有免费版,可实现大部分功能 |
RustDesk | Windows、Linux、macOS | Windows、macOS、Linux、Android、iOS | 官方提供、免费私有化部署 | 配对码 | 尝试直连后再跳转转发服务器,较好 | 一般,无配置项 | 一般,移动端控制不方便 | 只有跨端复制粘贴 | / | 完全免费,开源 |
GotoHTTP | Windows、macOS、Linux、树莓派 | web 端、iOS、Android | 官方提供,无私有化部署 | 配对码 | 一般,受制于当前网络环境 | 一般、无配置项 | 一般,移动端控制不方便 | 只有跨端复制粘贴 | / | 按使用时长付费 |
Splashtop | Windows、macOS、Linux | Windows、macOS、Linux、Android、iOS | 官方提供,无私有化部署 | 配对码、无人值守 | 一般,受制于当前网络环境 | 较好,会动态调整 | 一般,移动端控制不方便 | 有独立文件传输模块 | / | 完全付费 |
TeamViewer | Windows、macOS、Linux | Windows、macOS、Linux、Chrome OS、Android、iOS | 官方提供,无私有化部署 | 配对码、无人值守 | 一般,受制于当前网络环境 | 较好,会动态调整 | 一般,移动端控制不方便 | 只有跨端复制粘贴 | 支持远程打印 | 非商用免费,商用付费 |
Jump Desktop | Windows、macOS | windows、macOS、iOS | 官方提供,无私有化部署 | 无人值守 | 一般,受制于当前网络环境 | 较好,有自主研发的远程控制协议 | 一般,控制不变有延迟 | 只有跨端复制粘贴 | / | Mac 客户端收费,其他免费 |
主控和被控的平台支持
被控平台:支持 Windows 和 macOS
远程控制软件中最为核心的需求就是对于被控端平台的支持,而最为主流的桌面系统自然就是 Windows;在这一点上,参与横评的所有远程控制软件均提供了支持。另一大桌面操作系统 macOS 虽然用做被控端的情况相当少见,但由于其系统本身的远程访问控制基于更为开放的 VNC 协议,因此目前市面上绝大多数的远程控制软件也支持控制 macOS。
比较特殊的是 Linux,由于 Linux 发行版众多且大多数使用场景通过 SSH 来登录 Linux 服务器,这对于主要基于 GUI 进行操作的远程控制软件而言其用途优势并不明显,加上目前 Linux 各种发行版较多,因此本次横评中的远程控制软件虽然支持 Linux,但大多数都是测试版,服务的稳定性上还有待验证。
除了对桌面系统进行控制之外,近些年的远程控制软件也都发展到了对于移动端设备控制的有限支持,不过这种所谓的控制依旧存在相当多的限制,更像是以往桌面端的「远程协助」:被控设备端依旧需要人为干预,甚至只能对设备桌面进行查看,而想要「无人值守」+「远程完全控制」,则必须对设备进行越狱或者获取 root 权限,显然被控设备的安全性也就得不到保障了。
在本次横评的远程控制软件中,也只有向日葵和 AnyDesk 支持有限的远控移动端设备的功能,毕竟这样的使用场景还是略显小众。
主控平台:主流平台不在话下,甚至还有网页版
主控端的系统支持方面,横评中几乎所有的远控软件都支持主流的 Windows、macOS,同时为了适应移动办公的使用场景,也大多提供了移动端的支持。
当然除了上面提到的主流桌面以及移动平台之外,也有一些远控软件支持了一些并不常见的主控平台,比如 GotoHttp 就另辟蹊径,你可以直接在其官网首页,输入被控端的 ID 和访问密码,直接在网页端发起远控操作。
对于在教育领域市场占有率颇高的 Chrome OS 系统,AnyDesk 以及 TeamViewer 也都提供了相对应的远控端;甚至你还可以在树莓派这样的设备中,通过 AnyDesk 发起远程控制。
中转服务器:给访问速度添砖加瓦
开始之前,先从微软的远程访问服务说起。微软的远程访问服务有一个局限性,要么你是在局域网内进行访问,要么被控主机拥有公网地址。而事实上大多数的电脑主机都不会有所谓的公网 IP,想要访问这些不同网络环境的主机就需要为其建立一个访问管道。
绝大多数的第三方远程控制软件也都是借助了这个原理:先尝试为主控主机和被控主机建立一个直接的访问通道直接连接,这也是很多远程访问中常说的「打洞」,如果「打洞」不成则使用中转服务器,让被控主机和主控主机分别和中转服务器连接,从而提高访问速度。
本次横评的远程控制软件基本都采用了以上方法来实现远程控制和访问,而衡量连接服务质量中,最为重要的就是所谓的「时延」,中转服务器的网速就显得非常重要。无论是付费还是免费服务,也都提供了官方的中转服务器来加速远程访问,只不过有些远程服务商会针对不同的账户级别,提供不同的服务器质量。
像国产的向日葵为付费用户提供了带宽和网络更好的服务器,在下午的访问高峰时间可以确保访问更流畅,延迟更低。当然对比一些中转服务器只部署在海外的远程控制服务,将中转服务器部署在国内有着不可比拟的优势。
除了提供官方的中转服务器,部分远程控制服务甚至允许用户自行搭建中转服务器,比如说开源的 RustDesk 就在其官方网站中提供了如何自行搭建中转服务器的教程。
尤其是在目前轻量级云服务器价格足够便宜的当下,只需根据步骤在有公网 IP 的云服务器上搭建服务就可以实现远程访问的中转,无论从安全性还是访问层面上都是更为实惠的选择,当然前提是使用者具有一定的 IT 运维经验和服务部署能力了。
控制模式
说完被控端和主控端,自然就不能不提所谓各类远程控制软件的控制模式。作为最常见的例子,微软的远程控制服务采用的是主控端通过客户端来访问,被控端只需打开相对应的系统服务,无需另行安装软件就可以实现被控;被控端也无需人为干预,这种控制模式可以被称作是「无人值守」服务。
现在大部分第三方远程控制服务大多采用的是一种基于客户端的配对连接模式,即无论是主控还是被控都需要安装相同的控制客户端,并会在安装后分别生成当前主机相对应的配对码以及验证码。
想要控制某台主机时,只需要在当前主机的客户端上输入被控制主机的配对码和验证码,就可以实现对目标主机的控制;由于都生成了配对码和验证码,因此当前主控主机也可以被控,使用上更为灵活,因此被叫做「配对」模式。
当然,如果要管理机房服务器,或者是企业有大批量管理的需求,希望被控主机处于无感状态接受被控,有时我们依旧需要使用更传统的「无人值守」模式,比如老牌的 Splashtop 、TeamViewer 以及向日葵客户端可以选择切换至「无人值守」,并且无需安装另外的被控客户端。
此外针对企业内批量控制设备的需求场景,一些远控服务需要独立的被控客户端来满足批量控制的需求,通过批量的将被控端加入到同一账户下的客户端列表中——只需要安装被控客户端,就可以在主控端通过设备列表实现「无感」的无人值守远控。
比较另类的「无人值守」还有 AnyDesk,具体的实现方式算是对「配对模式」的一种变通——通过给同一账户下不同设备设置别名以及对应的独立访问密码,我们就可以不使用配对码而是直接通过一系列的别名地址来实现远程控制,虽然在形式上和真正的「无人值守」有所区别,不过相比配对码,使用更容易记住的别名地址访问密码还是更方便一些。
连接与画质
对于远程控制软件而言,最为影响使用体验的当属连接和画质,毕竟连接稳定性是远程控制成功与否的关键;而针对网络条件的不同,如何通过调整画质的方式来实现更好的控制体验也极为重要。
例如向日葵就针对不同的账户提供了不同等级的连接质量选择,对于免费账户,其转发服务器只有位于苏州的电信机房,付费的账户可以使用 BGP 云服务器机房。在一些需要使用转发服务器的远程连接场景下,使用免费账户进行远程会出现明显的卡顿和延迟,对应的还有桌面画质的降低。如果你使用远程控制串流游戏,可以想想会是什么样的体验。
AnyDesk 则在「连接」项中提供了「优先直连」的选项,对于网络要求较高的企业使用场景,还可以通过云端部署或者本地部署来解决时延问题。同时针对实时的图像传输还设计了一套压缩算法,以确保在带宽较低的网络中实现画面的有效传输并降低延迟,因此在网络高峰期使用 AnyDesk 远程控制,服务会动态地对连接的画质进行调整,在相同的网络环境下,AnyDesk 的画质要明显好过其他家的显示效果。
但由于 AnyDesk 并不会像其他几款远程控制软件那样在低质量网络下动态调整分辨率,因此如果「显示模式」没有设置好,遇到网络质量较低的情况下会遇到非常严重的卡顿现象。
与之类似的还有 Jump Desktop,除了可以直接调用 RDP 协议之外,还可以调用自己研发的一套新的远程桌面协议:Fluid Remote Desktop,根据介绍该协议可以在低速带宽的场景下实现远程画面 60 帧的速率,远程桌面画面会更为流畅。不过由于其直连打洞能力一般加之转发服务器不在国内的缘故,其画质表现并不出众,或许在海外网络环境下会有不错的表现。
所以,最终决定远程控制的连接质量的依旧是带宽,在没有直连的情况下转发服务器的网络速度就显得极为重要。因此如果使用场景对于网络要求较高且必须依赖转发服务器,那么选择可以付费升级转发服务器的服务是较为合理的选择。当然如果考虑成本,也可以选择 RustDesk 这样允许自建转发服务器的远控服务,当然网络连接质量就取决于自建服务器的带宽了。
相比连接 Linux 只需要通过 Bash Shell 这种终端就可以解决大部分问题,我们使用远程控制往往控制的是具有 GUI 的桌面系统,连接画质上同样也非常重要了。不过针对画质这方面,很多此次横评的远程控制服务并没有在客户端提供详细的设置项,例如向日葵只可以选择硬件的加速项目,RustDesk 直接不提供,真正提供画质选择的只有 AnyDesk 。
例如在 AnyDesk 中你可以手动设置画面质量:是选择画面质量还是选择连接速度,同时显示模式上还可以进一步设置,比如说是在主控上显示被控的原始显示尺寸,还是选择最佳的显示画质,又或者针对主控设备,通过调整显示器的利用率来适配主控的显示分辨率。同时 AnyDesk 还可以设置硬件加速项,可以选择 Open GL、Direct3D、DirectDraw,并且可以在一些网络不佳的场景下调用快速 16 位渲染器来保证连接。
操作与功能
和早年单纯的远程桌面不同的是,现代远程控制软件早已经不是所谓的仅限桌面端系统的「第三方微软远程桌面」,而是涵盖了相当多的附加功能来实现多样化的远程控制,即便是最为基础的「远程桌面」的功能,也针对使用习惯提供了一系列有针对性的优化,比如可以快速映射快捷键,针对移动端控制的优化等等。
比如向日葵,GotoHttp ,在对桌面控制时,就可以通过远控界面中的菜单快速实现快捷键的映射,无需键盘操作,点击鼠标就可以快速调用系统快捷键。
移动端因为使用触控,因此在远程控制桌面端时就会存在诸多不便,比如说如何控制鼠标、如何输入各种桌面快捷键等,这一方面比较完善的是向日葵,针对移动端的使用给了相应的优化体验。比如说有个专门的鼠标控制小部件会悬浮在桌面上,需要点击鼠标时在触摸屏上可以拖拽小组件来移动鼠标;同时还设置了悬浮的快捷键输入小部件,点击小部件可以弹出快捷键列表,然后从列表中选择合适的快捷键点击就可以输入,在一定程度上使得在移动设备上进行远控变得更易操作。
除了远程桌面之外,现在很多远程控制服务还会增加很多「附加功能」,我个人觉得最为实用的还是远程文件传输。微软远程桌面可以使用两种方式实现主控机和被控机的文件传输:一种是通过挂载共享文件夹的形式,被控电脑会在我的电脑中看到主机分享的文件夹,从而在被控机的文件资源管理器中和主控机进行文件传输;第二种是直接跨端的文件复制粘贴,虽然最为直接但传输速度也是最慢的。
部分远程控制软件提供了类似文件管理器一样的独立文件传输功能,这样可以在不开启远程桌面的情况下实现远程文件传输,比如说向日葵以及 AnyDesk 就提供了一个独立的远程文件传输服务,整个用法上和 FTP 客户端别无二致。
除此之外,也有部分远程控制服务还提供了远程打印服务,这在目前疫情当下的远程办公需求激增的场景下变得非常应景,比如说通过远程控制的方式从家中电脑连接到公司的电脑,通过远程打印的方式可以让远程的文档被本地的打印机打印出来,这样就减少了将远程文件下载至本地再打印的步骤。目前包括向日葵、AnyDesk 以及 TeamViewer 的服务都已经支持了这项功能,我们只需要在主控端和被控端安装相应的虚拟打印机服务即可实现。
除了这两项功能之外,参与横评的部分远程控制服务还提供了一些特色功能,比如有的支持局域网唤醒,有的支持远程 SSH 连接等,考虑到并非是常用功能,这里就不一一赘述了。
总结
总的来说,在本次参与横评的一系列的远程控制软件中,大部分的软件都实现了在复杂的网络环境中高效地实现桌面系统的远程控制功能,各家软件也都提供了相当成熟的解决方案进一步提高易用性。对于一般使用者而言,通过以上各个分项功能的对比,相信你能根据实际情况作出合理选择,选出适合自己的连接快、操作延迟低的远程控制服务。