我心中寻找的概念系统:
给定两个主机(可以是个人计算机)!
两者都可以在动态网络(动态 IP)上!
两者都连接到同一个中央服务器以找到对方!(在我的情况下需要!一个客户端主机也可以充当服务器)
服务器充当桥梁!并使隧道发生!
第一台主机连接到服务器!第二台也一样!现在服务器映射两个节点(主机)!
并进行转发(隧道)!
每当主机一向主机二发送某些东西时,它都会转到中央服务器!通过类似 Web 套接字的东西!然后服务器将其发送到第二台主机!第二台主机回复!或者其他什么!服务器以两种方式处理桥接和隧道!
此处的属性:
- 节点可以动态连接!无需设置网络或动态 DNS... 就像 teamviewer 或 anydesk 一样!
- tcp 连接已建立隧道并转发!
- 两个节点连接起来并可以像一个主机一样工作!
继续:pc1,pc2 => 将 pc1 连接到 pc2,无需彼此知道对方的 IP 地址!全部动态!直接隧道!
怎么做 ?
看了不同的东西之后!我只是觉得最简单的方法就是自己实现这样的事情!因为我可以想象我该怎么做!
我需要这个!尝试在 AWS EC2 上运行 Android 模拟器!并将 adb 转发到远程模拟器!
我不是在问解决 Android 问题!反而上面的系统!我想知道是否已经有东西可以做我所描述的事情!
否则我得花一些时间!
我想到了一个解决方案!我正在寻找一个中央 websocket 服务器!并通过 ws 隧道传输 tcp!
这样的系统该叫什么名字?
有哪些好的方法可以实现这一目标!你会怎么做?
我查过一些其他方法,而不是上面的系统
对于系统或问题,您可能会想到上述内容!就像使用 Android 远程调试一样!
我们可以想到:
Ssh 反向隧道 => 需要静态端!以我的情况为例,服务器!服务器实例需要 ssh 工作!在 AWS 中,需要做一些工作来设置工作代理!并不总是直截了当!
动态 DNS => 需要端口转发!对某些人来说设置起来可能比较复杂!可能存在安全风险
那些谁可以提及它们!我只要求上述的概念系统!
我自己在概念上提到的!将是最容易使用的东西和系统!无需进行复杂的设置!只需配置一台服务器!一切都按照设计顺利而动态地进行!即使对于非高级用户也是如此!就像同一团队或组织内的其他开发人员一样!就像teamviewer和anydesk一样,许多系统已经可以运行!
答案1
使用 openvpn 之类的东西来解决你的问题是否有点过头了?Openvpn 可以满足你的所有需求,但也会加密网络流量。这种加密会增加配置的复杂性。