首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NAT背后的HTTP服务器

NAT背后的HTTP服务器
EN

Stack Overflow用户
提问于 2012-07-26 08:59:42
回答 2查看 2.7K关注 0票数 7

我正在努力使多层NAT背后的(apache)服务器能够从Internet上访问。

限制:

  1. 避免继电器。有一个用于登录/ stun的公共服务器(我们称它为OldMan),但是它的带宽太差,无法传输中继数据。
  2. 我没有权利手动配置NAT。3.用户不必改变浏览器或设备。(也就是说,可以在android、ios和任何PC上工作)

我试过UPnP,但它只适用于1层NAT

我尝试搜索了几个月的NAT遍历解决方案,但没有成功。

我学习STUN/TURN/ICE,并尝试了pjsip (icedemo.exe + numb),但是它的眩晕无法穿透2层NAT。

我试过Mist,普纳特,但没有运气。而且libjingle听起来就像我所知道的Gtalk扩展的API .(?)

我还尝试使用make /n2N来解决这个问题,但这将给公共服务器带来沉重的负担。任何VPN客户端都需要服务器( OldMan服务器)将所有数据包转发给另一个服务器,不是吗?

有解决这个问题的办法吗?多层NAT背后的HTTP服务器。

顺便说一句,如果眩晕/转弯/ICE有效的话,我的想法是这样的,有可能吗?

  1. 用户安装了应用程序(ex:stun_browser_agent.exe)
  2. 用户在Chrome上键入以下地址: 127.0.0.1:9999
  3. 连接到stun_browser_agent.exe守护进程的Chrome
  4. 使用Stun协议连接HTTP服务器的守护进程
  5. Http (ex: stun_apache_agent.exe)上的守护进程接收所有消息并将其中继到Apache守护进程。
  6. Apache回复所有http信息传递-->stun_apache_agent.exe-->stun_browser_agent.exe-->chrome

这样我们就不用修改浏览器和Apache了。

我可以参考任何可用的资源来实现这一点吗?

感谢您的耐心

EN

回答 2

Stack Overflow用户

发布于 2012-07-26 09:08:02

您是否控制此服务器与“外部世界”之间的所有NAT设备?

一种方法是在internet网关路由器和服务器之间设置SSH隧道。

SSH隧道将从您的服务器启动,并连接到在您的internet网关路由器上运行的sshd。使用SSH的端口转发功能将internet网关上的端口80转发回服务器上运行的任何端口Apache。

另一种方法是在公共互联网上访问的任何其他服务器上安装sshd (或任何其他隧道产品)。从服务器启动到它的连接,并使用该连接将通信量从该公共服务器上的端口80转发到您的服务器。

方法基本相同:您需要从服务器启动隧道设置,并使用该连接将通信量从公共服务器转发回您的服务器。

票数 0
EN

Stack Overflow用户

发布于 2012-07-26 09:02:07

配置每个NAT设备,从具有Internet连接的NAT设备开始,将最内部NAT转发到服务器的NAT设备转发到下一个NAT设备。

更新:“2.我无权手动配置NAT。我不明白如何才能在这些NAT设备后面运行服务器,但却无权在这些设备中配置端口转发。当然,运行服务器的权利包括做运行服务器所必需的事情的权利。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11665793

复制
相关文章

相似问题

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