哪一个 Windows 程序使用起来简单并且可以执行以下操作:
- 计算机 A 的未知 TCP 客户端想要连接到计算机 B 的未知 TCP 服务器。
- 两者都位于 NAT 之后。
- 计算机 A 有端口转发功能,而计算机 B 则没有。
我想我需要在 A 和 B 上安装一个程序,并且必须运行两个实例:监听器和辅助器。我不确定这个程序是什么,但我认为它的工作方式如下:
- 计算机 B 启动其未知的 TCP 服务器
- 计算机 A 启动其上的监听程序
- 计算机 B 在其端启动辅助程序,然后计算机 B 的辅助程序连接到计算机 A 的侦听程序以“准备连接”
- 计算机 A 启动其 TCP 客户端以连接到正在运行侦听器程序的本地主机。侦听器发出信号通知协助器程序应连接到未知 TCP 服务器,侦听器和协助器负责在未知 TCP 服务器和客户端之间通过互联网传递数据。
肯定有“这个应用”吧?有适用于 Windows 的应用吗?
答案1
是的,它存在,最常见的实现是SSH 隧道。只需将计算机 A 设置为 SSH 主机并将端口转发到计算机 B,以便它可以与计算机 B 上的服务器应用程序通信。
有 SSH 主机用于几乎所有操作系统。
以下是步骤
- 计算机 B 启动其未知的 TCP 服务器
- 计算机A启动SSH服务器(路由器设置端口转发
22
到计算机A) - 计算机B运行类似的命令(替换为计算机B的ip和端口以及TCP服务器的端口,是计算机A的公网IP)
ssh [email protected] -R 10000:192.168.1.10:7777
192.168.1.10:7777
12.23.45.67
- 计算机 A 启动其 TCP 客户端进行连接
localhost:10000
(您可以通过在步骤 3 中向交换机传递不同的第一个数字来更改端口-R
)。SSH 端口隧道处理在未知 TCP 服务器和客户端之间通过互联网传递数据的工作。