外网IP+内网服务器的架构有多种实现方式。本文抛开架构不谈,以内网服务器是否可以连通外网作为区别进行阐述。
由于目前经验不足,本文会持续更新。

内网服务器可以连通外网

常见的架构如家用路由器进行端口映射,把外网IP的80端口映射到内网主机的相应端口。此方法的缺点是外网80端口无法映射多台内网主机。
在上述情况中,通常位于内网的主机也是可以连接外网的。如果我们有这种情况下的内网主机权限,可以采用反向连接的方式进行端口转发。

nc

lcx

其他反向连接工具

内网服务器无法连通外网

常见的架构有Nginx反向代理,一台外网IP可以通过nginx反向代理代理多个域名,这样的优点可以nginx进行静态文件缓存,减少后端服务器压力。这种架构下,通常内部服务器无法连接外网,只有特定的端口与代理服务器通信。
我们拥有这种情况下的内网主机权限,无法连接外网,端口无法反向主动连接外部服务器。这种情况下,我们只能模拟HTTP通信,通过映射的端口出来。这种方法的缺点是容易受到网速影响,体验较差,不稳定。

reGroge

Tuana