因此,我设置了两台 Windows 7 计算机以允许远程桌面连接(不需要网络级别身份验证)。其中一台在本地和跨 NAT 均可正常工作。另一台在本地正常工作,但不能跨 NAT 正常工作。相反,mstsc 挂在“配置远程会话”上,然后显示计算机无法连接到远程计算机。
我尝试过的事情:
- 关闭问题计算机上的所有防火墙
- 将 NAT 上的公共端口切换为 3389(两者都设置了不同的公共端口和私有端口 3389)
在 MSTSC 中:
- 禁用所有本地资源
- 禁用持久位图缓存
我完全不知所措。目前,我正在与工作计算机建立远程桌面连接,然后使用该连接通过 RDP 连接到这台计算机……
答案1
当入站和出站流量通过不同的路由时,我遇到了相同的症状。
举例来说,假设您有一台名为 A-RDP 的计算机运行着一个 RDP 服务器,还有一对路由器 R 和 G。路由器 G 是互联网的网关。路由器 R 是网关 G 后面的路由器。如果服务器 A-RDP 的默认网关是路由器 R,但网关 G 的端口转发直接转到服务器 A-RDS,那么连接将无法建立,并且至少需要 10 秒钟才能弄清楚并说无法连接。
在这种情况下,你有两个选择
- 将 A-RDP 的默认网关更改为网关 G,并向 A-RDP 添加使用路由器 R 所需的任何静态路由。
- 将网关 G 中的端口转发更改为转到路由器 R,并在路由器 R 上启用伪装并将端口从路由器 R 转发到计算机 A-RDP。
请注意,SSH 也有类似的安全策略。