首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将通信量从主机转发到主机的容器

将通信量从主机转发到主机的容器
EN

Server Fault用户
提问于 2018-10-14 06:11:59
回答 1查看 76关注 0票数 0

网络192.168.0.0/24中有两台主机:

  • 宿主A 192.168.0.15
  • 宿主B 192.168.0.13

还有一个从BA的远程ssh隧道:

代码语言:javascript
复制
ssh -R 192.168.0.13:8080:192.168.0.15:8002 192.168.0.13 -N

而且那条隧道也能用。

主机A运行在端口80上运行nginx的容器nginx。我想将流量从192.168.0.15:8002转发到nginx服务器。该怎么做呢?

所以,

如果有人用GET request发送curl 192.168.0.13:8080,他将从运行在容器中的192.168.0.15上的nginx获得响应。流动应是:

代码语言:javascript
复制
192.168.0.14 (for example) ---GET--> 192.168.0.13:8080
192.168.0.13 --(SSH TUNNEL)--> 192.168.0.15:8002 
192.168.0.15:8002 -----------> 172.17.0.2:80 (nginx container)
172.17.0.2      ------------> 192.168.0.15
192.168.0.15    ------------> 192.168.0.13
192.168.0.13    ------------> 192.168.0.14

我必须使用iptables我不能改变现有的隧道。

EN

回答 1

Server Fault用户

回答已采纳

发布于 2018-10-14 08:23:04

您可以通过重定向扩展来实现这一点。

可以在主机A上使用以下命令将所有TCP连接的目的地从端口8002更改为端口80:

代码语言:javascript
复制
iptables -t nat -I PREROUTING -p tcp --dport 8002 -j REDIRECT --to-port 80

如果希望重定向也适用于本地主机的连接,请添加

代码语言:javascript
复制
iptables -t nat -I OUTPUT -p tcp --dport 8002 -j REDIRECT --to-port 80
票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/935435

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档