我对以下系统架构有疑问:
假设我们有三台机器:
SERVER A
SERVER B
EXTERNAL A
SERVER A 提供了一些流服务,并且它位于一个未知的网络后面,因此它在指定的 PORT 上打开到 SERVER B 的反向 SSH 隧道,因此 SERVER B 可以通过 http://localhost:PORT 访问 SERVER A 服务
服务器 B 正在运行 linux 和 openssh 服务器以接受隧道。(此服务器是公开的)
当我想通过公共服务器 B 从外部 A 访问服务器 A 提供的流媒体服务时,就会出现疑问。假设我知道我想要实现的端口,例如:
EXTERNAL A -> 'http: //serverB_IP:PORT' -> SERVERB -> 'http ://localhost/PORT' -> Tunnel -> SERVER A service.
更复杂的是,可能有很多 SERVER A 服务器打开一个带有 SERVER B 的隧道(每个都在正确管理的不同端口上)。
关于如何实现这一目标的任何想法?