[技术贴]微服务中的网关部署在云服务器,自己在公司内网启动服务,怎么让网关能调通自己本地的服务?

2023-02-15 09:35:15 +08:00
 Aliberter

如题,目前遇到这么个问题,一开始想的是内网穿透,但是被 pass 了说是对内网不安全,经过一番调研,阿里云有自己的端云互联工具,但是又不想用阿里云,太贵了。我们的某个竞品,他们部署在云端的后台就能直接发现自己内网的服务并成功调用,这个是怎么做到的呢?希望老哥们给指点一下迷津,感谢

4001 次点击
所在节点    程序员
51 条回复
ChengHaha
2023-02-15 11:12:53 +08:00
我是在本地启动一个网关,前端指向本地的网关就好了
nicebird
2023-02-15 12:15:30 +08:00
不难吧,自己开发个代理都可以
Bottle
2023-02-15 14:30:45 +08:00
说一下我们公司的情况:
1 、有两台物理服务器放在公司内网,部署一些服务
2 、办公室没有固定公网 IP
3 、有几台阿里云 ECS ,有公网 IP ,几台 ECS 之间内网互通

需求是:ECS 上的所有服务,都能访问办公室内网两台机器上的服务

我们采用的解决方案是:SSH 远程端口转发
1 、办公室内网服务端口转发到 ECS 指定端口上
2 、ECS 上的服务,通过转发的端口,访问公司内网服务

希望能够帮到你。


参考资料:
https://www.ronpad.com/docs/ssh/port-forwarding-4.html
https://www.cnblogs.com/XiiX/p/15095135.html
BQsummer
2023-02-15 17:07:26 +08:00
我们公司也有类似场景, ios 打包需要 mac 机器, 云服务没有, 就把 mac mini 放在办公地点的机房, 走的 vpn
lyc8503
2023-02-15 19:27:25 +08:00
如果不用过墙的话 wireguard 或者 openvpn 就可以? 两者都是完全开源的工具.
k8ser
2023-02-15 21:17:31 +08:00
wireguard over udp ,国内运营商的环境还是要测试下。
salmon5
2023-02-15 21:21:40 +08:00
专线
Dreamacro
2023-02-15 22:16:47 +08:00
目前发现比较好的形式是 fly.io 的方案,本地 ctl 通过 wg 映射端口到本地,既可以鉴权又很方便。
piku
2023-02-16 08:36:25 +08:00
tram 的方法是正确的,只要有网络连接,无所谓是从内网连到云端还是从云端连到内网。不知道你们中间究竟需要什么样的数据交互,总体上从内网起一个 tcp 连到云服务器上,然后数据走这个长连接就是了。约等于手机接收推送(比如 jipush )消息的原理。
内网穿透一般是指建立一个其他连接可以用的隧道,上面的方法只供一个连接通道用,算是内网穿透的简化吧
SoulSleep
2023-02-16 08:52:52 +08:00
@luomao #2 +1 我们也是拉了专线,相当于私有云的指定服务器和阿里云在一个内网
sunnysab
2023-02-16 10:38:09 +08:00
干过类似事情,不过协议是私有的,代码自己写的,比较好改 😂

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/916208

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX