TCP 代理主要用在什么地方?

2023-03-08 10:51:01 +08:00
 lsk569937453

我用过 TCP 代理主要用于 ssh 。 我看了一下 nginx 的 tcp 代理,有的人用来代理 mysql/redis/mqtt 。 如果是 tcp 代理 mysql/redis ,主要的目的是什么呢?防止 mysql/redis 暴漏到外网?如果代理数据库的话,是不是基本用不到负载均衡?

除了上述提到的几个,TCP 代理还用在什么地方?

1907 次点击
所在节点    程序员
10 条回复
yolee599
2023-03-08 11:14:49 +08:00
一个域名对应多个应用
leeyuzhe
2023-03-08 11:26:37 +08:00
之前代理过视频流,主要是视频服务不对外映射端口,反代一下相当于内网穿透
zeonll
2023-03-08 11:35:18 +08:00
@yolee599 没太懂,什么场景要一个域名对应多个应用呢
qoo2019
2023-03-08 11:42:43 +08:00
目前我司就代理 redis/rmq 这种场景,服务基于 k8s ,然后使用 NodePort 暴露;另外一个场景专线互联地址转发
zhuifeng1017
2023-03-08 11:50:14 +08:00
一个简单的用途:绕过运维白名单。
比如对 mysql/redis/mqtt 配置了白名单时,用 nginx 的 stream mod 代理下
yolee599
2023-03-08 12:24:44 +08:00
@zeonll 就比如 mysql.xxx.com 转发到 127.0.0.1:1234 ,redis.xxx.com 转发到 127.0.0.1:1235 ,my.xxx.com 转发到 127.0.0.1:1236
salmon5
2023-03-08 12:29:10 +08:00
salmon5
2023-03-08 12:39:47 +08:00
https 的 SNI proxy 或者 websocket 的需要长连接的应用(省事用 TCP 代理)
villivateur
2023-03-08 13:09:06 +08:00
Nginx 一般部署在网关类型的服务器上。
最典型的应用场景是,我有一台内网高性能服务器跑一个 TCP 应用,然后需要对外提供服务,最好的方法就是在网关上部署 Nginx ,然后反代到这个服务器上。这么做还有个好处是负载均衡,一个 Nginx 可以设多个 upstream 。
weijancc
2023-03-08 20:16:58 +08:00
tcp 代理主要就是翻墙咯

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

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

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

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

© 2021 V2EX