在没有公网IP的情况下使用免费内网穿透工具实现微软RDP远程桌面

RDP是什么?它是由微软开发的安全网络通信协议,又被称为远程桌面协议(Remote Desktop Protocol),设计建构于国际电信联盟T.share协议(T.128)。值得注意的是,RDP的某些版本可以在Linux、Unix、Mac、iOS、Android和Windows以外的其他系统中使用。

用户使用RDP客户端连接到Windows计算机或服务器,例如Windows Server 2016远程桌面,连接的计算机或服务器也需要同时运行RDP。其中RDC(远程桌面连接)是RDP客户机的一种,也被称为RDP。对于RDP的主要功能,简单来说,它允许用户使用电脑远程控制一台电脑,像他们正在受控者计算机面前使用它一样。

那么RDP的用途是什么呢?通常来说,RDP可用于远程访问、远程协助和远程支持,主要用于生活中的商业目的。但您需要将其与云服务区分开来,在云服务中,用户实际访问的内容是存储在云中的文件和应用程序(云服务器),而使用RDP时,用户实际上是在访问存储在受控计算机本地的文件和应用程序。看到这里,相信大家对RDP是啥已经有了一个大致的概念。

Mac端RDC(远程端)下载地址:App Centericon-default.png?t=N7T8https://install.appcenter.ms/orgs/rdmacios-k2vy/apps/microsoft-remote-desktop-for-mac/distribution_groups/all-users-of-microsoft-remote-desktop-for-mac

iOS端RDC(远程端)下载地址:‎Remote Desktop Mobileicon-default.png?t=N7T8https://apps.apple.com/app/id714464092

Android RDC(远程端)下载地址:Android RDC(远程端)下载地址icon-default.png?t=N7T8https://play.google.com/store/apps/details?id=com.microsoft.rdc.androidx

RDP与向日葵这类远程桌面对比有什么优势?

  • 原生远程桌面兼容性强(原生的认证系统、安全角色体系、原生的桌面传输编解码协议)
  • 支持2k 60fps分辨率
  • 支持多屏幕、共享剪贴板
  • 支持多个用户同时登录一台服务器等
  • 能够区分文字、图片以及视频的不同,并依据网络条件使用不同的传输策略
  • ...

但是微软的RDP需要用户拥有公网IP,在国内大内网的情况下运营商几乎都不会给公网IP了,即使使用公网IP暴露在外网也很容易被黑客攻击,这里我们使用第三方组网工具Solopace.Gem进行RDP远程桌面的访问。

准备:

***需要远程和被远程的PC都需要安装Solopace.Gem客户

1、前往Solopace.Gem官网下载组网客户端

Solopace.Gem官网icon-default.png?t=N7T8https://solopace.doaction.pro/?c=CSDN_advertisement

2、登录注册

3、选择我是个人用户

4、选择我是个人用户后,进入此页面,等待第二台设备加入组网

5、在另一台需要远程访问/被访问的PC上面同样安装Solopace.Gem客户端,并登录同一个账号,会自动加入组网,两台设备点击连接按钮进入连接状态。

6、连接成功后点击设备列表,记下需要被远程访问电脑的组网IP,组网IP是Solopace.Gem分配的虚拟局域网IP,通过这个就可以不需要公网IP直接连接。

7、开启RDP远程访问

Win10和Win11需要个人专业版以上版本才支持远程桌面功能。

Win10&Win11:

微软官方开启远程桌面文档:

在电脑上启用远程桌面 | Microsoft Learn了解用于远程访问你的电脑的选项icon-default.png?t=N7T8https://learn.microsoft.com/zh-cn/windows-server/remote/remote-desktop-services/clients/remote-desktop-allow-access

在被控制的PC上面打开远程桌面功能(需要控制哪一台PC就在哪一台开启)

步骤1. 按“Win + I”键打开Windows设置,再选择“系统”

步骤2. 在窗口左侧选择“远程桌面”,再单击“启用远程桌面”下的按钮。

步骤3. 是否启用远程桌面,点击 确认 按钮。

8、开启后在控制PC内点击搜索 - 远程桌面连接

9、输入被控制PC上面的Solopace.Gem的组网IP

10、输入被控制PC的电脑账户和密码。

11、信任证书,不再提示

Mac端远程控制Windows教程

1、下载Mac端远程控制客户端

Mac端RDC(远程端)下载地址:App Center

2、安装后打开点击➕,add pc

3、设置远程PC的IP和名字

常见问题:

连接不成功:

1、检查防火墙设置是否关闭了3389端口号

2、检查用户名,如频繁提示用户名密码错误可以尝试新建一个用户专门用来登录远程桌面Solopace.Gem官网icon-default.png?t=N7T8https://solopace.doaction.pro/?c=CSDN_advertisement

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 使用C语言实现远程桌面协议(RDP)需要具备一定的编程技能,步骤如下:1)实现RDP协议的传输层,使用TCP/IP协议实现数据传输;2)实现RDP协议的会话层,使用TLS/SSL实现安全会话;3)实现RDP协议的表示层,使用RDP视图、RDP控制、RDP输入和RDP图形来显示远程桌面的内容;4)实现RDP协议的应用层,使用RDP视频、RDP音频、RDP文件转换和RDP打印等功能。 ### 回答2: 要用C语言实现RDP远程桌面,需要以下步骤和功能: 1. 首先,需要创建一个RDP客户端程序来连接远程计算机。这个客户端程序需要能够与RDP服务器建立连接,并进行身份验证。 2. 在客户端和服务器之间建立TCP/IP连接,以便在网络上进行通信。 3. 在客户端和服务器之间建立可靠的数据传输协议,以确保数据的准确性和完整性。在RDP中,使用的是RDP协议,它可以保证可靠的数据传输。 4. 实现键盘和鼠标输入的传输。将客户端接收到的键盘和鼠标输入传输到服务器上,以便远程控制服务器。 5. 在服务器端实现图形绘制和显示功能。这包括将服务器上的图像绘制到客户端的屏幕上,以实现远程桌面的显示。 6. 实现音频传输。如果需要在远程计算机上播放音频或录制音频输入,需要将音频数据从客户端传输到服务器。 7. 要实现远程剪贴板功能,使得客户端和服务器之间可以互相复制和粘贴文本或文件。 8. 实现远程文件传输功能,使得客户端可以上传和下载文件到服务器上。 9. 要对连接进行加密,以保护数据的安全性和隐私。 10. 最后,需要实现断开连接和退出等功能,以便安全地关闭RDP连接。 总之,通过这些步骤和功能,可以用C语言实现RDP远程桌面实现远程控制、文件传输和音频等功能,方便用户在远程计算机上进行操作。 ### 回答3: 使用C语言实现RDP远程桌面协议)可以通过使用RDP库来实现。下面是一个大致的步骤: 1. 首先,需要使用C语言连接到RDP服务器。可以使用RDP库来建立与服务器的连接,并进行身份验证。 2. 连接成功后,可以通过发送RDP协议中的命令和数据来控制远程桌面。这些命令和数据可以使用C语言的网络编程功能(如套接字)发送到RDP服务器。 3. 要实现远程桌面的显示,需要接收和解析RDP服务器发送的屏幕数据。可以使用C语言的图形处理库(如SDL)来创建一个与远程桌面相同分辨率的窗口,并在窗口中显示接收到的图像数据。 4. 接收到的图像数据可以进行解压缩和解码,以便将其转换为屏幕上的像素。可以使用C语言中的相关库和算法来实现图像解压缩和解码的功能。 5. 在显示远程桌面的同时,还可以在本地模拟用户的输入操作。可以使用C语言的系统api来模拟鼠标和键盘的输入,将用户的操作发送给RDP服务器。 6. 最后,关闭连接时,需要通过发送RDP协议中的断开连接命令来关闭与服务器的连接。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值