情景说明
前段时间应公司需求,需要将内网的服务映射到公网。由于公司使用的是类似家庭宽带的线路,没有固定的公网 IP 地址,所以决定使用域名来完成。
当时有几种方案:
1、花生壳:但是目前需要乱七八糟的认证备案,舍弃!
2、NAT123:花里胡哨的,感觉像垃圾软件,也舍弃!
3、holer:GITHUB 上面的一个项目,但是我们只能安装 Client 端,Server 端在别人手里,不安全,舍弃!
...
还有其它的乱七八糟的很多,但是都觉得要么是 C/S 架构,麻烦。要么就是使用别人的,定制要么收费,要么不安全,也都放弃了,最后决定参考网上的 Python 调用阿里云 API 通过 Linux 定时任务来更新解析!
网络拓扑
简单的网络拓扑如下图:
说明:
1、电信 ASDL 拨号,会有一个会变化的公网 IP 地址,我们的域名就是要解析到最新的该 IP 地址上面
2、公司内网是一个路由器接交换机的方式,路由器比较 Low,H3C 的,简单的进行一个端口转发到指定的服务器 192.168.1.100
3、192.168.1.100 上面安装 Nginx,做反向代理,同时也作为统一的管理入口,方便管理&