【发布时间】:2012-04-18 20:27:31
【问题描述】:
我正在寻找一种工具(在 linux 下),它允许我设置一个端到端代理,该代理在一个端口上同时接受多个客户端,通过一个 单个端口将数据转发到另一端 连接然后“扩展”另一端的连接以连接回接受多个连接的服务。为了澄清,这是我想要实现的图表:
http://i.stack.imgur.com/rgTMd.png
(显然我需要超过 10 个代表才能将图像嵌入此页面)
如果您有兴趣,我尝试这样做的原因是因为我想构建一个系统,该系统可以更轻松地通过任意协议进行隧道传输,只要协议支持某种方式从一端到另一端。在上图中,我会将系统放在代理端 A 和代理端 B 之间。
这是我希望它如何工作的示例:
首先我将运行以下命令
mkfifo backpipe
nc -l 7778 0<backpipe | tee f1 | nc localhost 7777 | tee f2 >backpipe
“服务器代理”将在端口 7777 上运行。
应用程序将连接到的“客户端代理”将在端口 8080 上运行
客户端代理将连接到端口 7778
求解“服务器代理”和“客户端代理”
【问题讨论】:
-
您可以在两个代理服务器之间使用 GRE/VPN/L2TP 隧道,并通过它们路由数据。
-
@EdwardH 哦,我不知道 VPN 协议以这种方式运行。在四处寻找之后,用 openvpn 建立一个 vpn 隧道并拦截通信似乎非常适合我想做的事情。我会进行更多调查。感谢您的帮助。
-
我在实施 vpn 解决方案时遇到问题。如果我可以让它工作,这将是最优雅的解决方案,但我也会继续寻找其他地方以获得解决方案。
标签: linux sockets networking proxy vpn