Remote Desktop – 预装在每一份 Windows 操作系统的远程桌面神器

Eric4 发布于 2023-10-29 17877 次阅读


自从我开始真正接触和学习互联网,我就一直对“远程桌面”这个概念非常感兴趣。在世界的任何一台具备互联网连接的计算机上都能远程到家中的计算机,这是一件如何美妙的事情!

其实市面上已经存在了很多远程桌面软件,他们大多是商用的,相对较为成熟的有如 Team Viewer、向日葵等。这些商用软件即下即用,非常方便,但就如他们的性质,商业化的软件毕竟还是要以盈利自己的主要目的,大多有不同程度的收费。

与此同时也有开源的软件,比如 Open stream 加上 Moonlight 的组合,不得不说,这两者的搭配延迟很低,比较适合在家庭局域网内对游戏进行串流,但是 Moonlight 拒绝连接到暴露在公共互联网下的 Open stream 主机,有时并不能满足我们的需求

除此之外,以上远程桌面的实现原理大多是录屏,因此大多在远程时远程计算机的屏幕需要保持常亮,而且不能自动适应客户端的分辨率

而 Windows 自带的远程桌面 Remote Desktop 不仅不需要远程计算机屏幕保持常亮,还能共享客户端计算机上的硬件(如:磁盘驱动器、网络摄像头、麦克风、扬声器等),并且对公共互联网上的使用场景有考虑,具有相对较高的安全性。

最重要的是:Remote Desktop Client (远程桌面客户端)预装在任何版本的(除了某些特殊优化的精简版)Windows上,并且在 iOS、Android 上有微软官方开发的RD Client应用程序(在 iPad OS 上的版本甚至对 Apple Pencil 进行了适配,可以被远程计算机识别为数位板设备,并保留压感和倾斜信息),在 Linux 上更有支持其协议的开源客户端 Remmina 。在这也就意味着不论何时何处,只要有计算机或手机,并有相对稳定的互联网连接,都可以连接到工作场所的计算机,进行即时的工作处理。

下面就让我为你介绍如何在 Windows 家庭版上开启 Remote Desktop 服务并妥善配置网络。


警告:向公网暴露远程桌面服务是相对危险的行为,请不要在未经允许的情况下在生产环境下尝试,对于按照本教程操作造成的任何损失和侵权本教程作者及网站不承担任何形式的任何责任


1. 更换(确认)Windows 版本

如果你已经确认自己的 Windows 版本可以开启 Remote desktop 服务, 那么不必再次跟随教程。

首先按下 Windows 徽标键+R 在弹出的“运行”窗口中输入“winver” ,你会看到如下信息:

我的电脑是企业版

你可以清晰地看到自己的 Windows 版本

目前,Remote desktop 仅支持 Windows 专业版、企业版、旗舰版(Windows 7)、Server(服务器版)操作系统作为被控端。如果很不幸,你的计算机正在运行家庭版或其他不支持 Remote desktop 的 Windows(更不幸的是,大多数预装 Windows 的笔记本和台式整机都预装了家庭版的 Windows), 你可能需要变更你的 Windows 版本,如果的操作系统恰好支持 Remote desktop ,你可以直接跳转到下一节

使用高级版本的 Windows 数字许可证

如果你的使用场景范围较广,或具有商业性质(比如你是企业的IT),或者你只是单纯的在意数字版权,你可以直接购买更高级版本的 Windows, 直接在微软商店购买即可:

购买之后计算机会进行一次更新以切换到你新购买的版本

使用 Windows 版本更换工具

警告

开源工具的本质是一种学习工具,若你使用这种工具,
即代表你不会将其用于商业目的,
并将在学习完成后自觉删除未经许可的 Windows 副本

你可以到 Github 下载最新版本,链接如下:

https://github.com/zbezj/HEU_KMS_Activator/releases

或者你也可以在本站下载文章更新时最新的版本:

下载完成后,解压并运行软件:

更换到任何符合要求的版本均可

之后你的计算机会重启来应用更改

2. 开启 Remote desktop 服务

完成 Windows 版本的更改后,打开计算机的设置菜单:

搜索”远程桌面“

打开”远程桌面“开关:

有时,在”设置“中的开关与实际情况不符,或者这个开关可能无法被打开,这时可以转到控制面板:

搜索”远程桌面“

点击”允许远程访问你的计算机“选项:

选中”允许远程连接到此计算机“,并单击”应用“、”确定“

为了安全考虑,建议复选”仅允许运行使用网络级别身份验证的远程桌面的计算机连接(建议)“,但是为了最大的兼容性,你也可以选择不勾选(风险自负)

现在,你已经完成了对服务端的配置

3. 客户端测试

(1) Windows(最推荐的)

在运行任意 Windows 版本的计算机上,按下 Windows 徽标键,搜索”远程桌面“,并敲下回车:

输入可以连接到你的计算机的网络地址/主机名(到这一步还只是测试,因此你可以使用内网IP地址,这是最简单的方法,你可以使用 ipconfig 命令或者在路由器管理软件查看目标计算机的IP地址)

有关如何查看计算机的IP地址(点击来展开)

按下 Windows 徽标键+R,输入“powershell”, 并按下回车:

在 Power Shell 中输入“ipconfig”:

按下回车:

查看IPv4地址即可(此处为192.168.0.118),若你的计算机有多张网卡,选择客户端可以访问的IPv4地址

对于开启了”仅允许运行使用网络级别身份验证的远程桌面的计算机连接(建议)“的远程计算机,你还需要点击”显示选项“,并指定要登录到的用户名:

敲下回车,如果一切正常,你就能登录到目标远程计算机了:

远程计算机的桌面

(2) iOS / iPad OS

在 App Store 下载名为”RD Client“ 的App:

按照指引添加计算机并连接即可:

使用 iPad 登录到远程计算机

(3) Android

作者手头没有 Android 设备,因此无法演示,请自行下载 RD Client 并按照软件指示操作连接

4. 网络配置

本节内容专业性较强,如果你并无异地访问的需求,可直接跳至第五节

(1) 直接向运营商申请公网IP

直接向你的ISP(网络服务提供商,如联通、电信)索要公网IP地址,IPv4最好,但这很大程度上看脸,IPv6在少数情况下也适用(需要客户端网络环境也支持IPv6,但是手机流量支持IPv6)

这种方法由于IPv4公网IP地址的枯竭对于个人而言已经几乎不切实际,如果你确实运气够好,要到了公网IP,那么直接按照网上已有的教程将远程计算机的3389端口的TCP和UDP(可选)协议暴露到你的公网IP即可

(2) 使用Frp进行内网穿透

Frp (Fast reverse proxy) 是一款专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议,且支持 P2P 通信。可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网,其在 Github 上开源

你可以从 Github 下载最新版本

https://github.com/fatedier/frp/releases

或者从本站下载文章更新时最新的版本:

之后从网上寻找 Frp 运营商(如,Sakura FRP)购买他们的服务并按照他们提供的教程(有些运营商有专有客户端,请遵循他们提供的教程)完成对内网穿透的配置,之后再连接时就可以使用穿透地址了

为何要进行内网穿透?(点击来展开)

家用宽带一般分配给路由器的是内网IP,这种地址是不能被互联网上的计算机直接访问的。这也就意味着当你不处于家中的网络环境时,计算机就无法根据这个内网IP地址找到目标计算机。而反向代理(内网穿透),顾名思义,就是用一台有公网IP的服务器进行中转,给互联网上的计算机指明到达目标内网计算机的路径(其实是有公网IP的服务器中转了所有流量,在互联网上的客户端看来,流量来源于服务器),这样就实现了从互联网访问家中没有公网IP的内网设备的目的,满足了我们的使用场景

(3) 使用 ZeroTier One 等 P2P 虚拟局域网工具

公网IP不好申请,Frp服务价格高昂,有没有免费的方案呢?

答案是肯定的

虚拟局域网在互联网上直接打通虚拟局域网下的设备之间的网络连接,为他们分配新的IP地址,这样在互联网上就可以使用新分配的IP地址直接连接到目标计算机而不需要经过服务器中转,因此所有流量都是免费的,同时在理想的情况下,延迟也会更低

其使用教程详见:

https://zerotier.atlassian.net/wiki/spaces/SD/pages/8454145/Getting+Started+with+ZeroTier

5. 远程桌面体验优化

(1) 60 fps解锁

不知道微软出于何种考量,但 Remote desktop 的默认屏幕刷新率是30fps,我们可以通过修改注册表项来使其允许60fps

按下 Windows 徽标键+R,输入“powershell”, 并按下回车:

输入“regedit”打开注册表编辑器:

导航到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations

右键新建,选择 “DWORD(32-bit)” ,输入文件名: “DWMFRAMEINTERVAL”

将其十进制值改为15即可

(2) 有关Open GL

或许是为了适配客户端千奇百怪的分辨率,微软的远程桌面并不调用远程计算机的显卡,这也就意味着不少依赖 Open GL 的软件在远程环境下无法运行,若你的远程计算机使用 Nvidia 显卡,则可以通过下面的补丁解决:

安装后重启计算机即可在远程桌面环境调用计算机的物理显卡,并使用更高版本的 Open GL

6. 远程开机 & 其他小问题

总让你的电脑开着肯定不是什么好主意,那么我们就需要远程开机

作者实在不想继续赘笔,因此直接引用别人的教程,请自行参阅:

https://zhuanlan.zhihu.com/p/302835122

感谢你的阅读,祝你生活愉快!

此作者没有提供个人介绍
最后更新于 2024-07-13