NAT 后面的 HTTP 服务器

2024-02-13

我正在尝试在多层 NAT 后面创建一个(apache)服务器,以便可以从 Internet 访问。

限制:

  1. 避免中继。有一个公共服务器(我们称他为OldMan)用于登录/眩晕,但其带宽太差,无法承载中继数据。
  2. 我无权手动配置 NAT。 3.用户无需更改浏览器或设备。(即适用于android、ios和任何PC)

I tried UPnP,但它只适用于1层NAT.

我尝试搜索NAT历经几个月的解决方案,却无果而终。

I study STUN/TURN/ICE,并尝试了pjsip(icedemo.exe + numb),但是,它的stun无法穿透2层NAT。

我尝试过 Mist、Pwnat,但没有成功。 据我所知,libjingle 听起来像是一个用于制作 Gtalk 扩展的 API...(?)

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

有什么办法可以解决这个问题吗?多层 NAT 后面的 HTTP 服务器。

顺便说一句,如果 STUN/TURN/ICE 有效,我的想法如下,可能吗?

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

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

我可以参考任何可用资源来实现此目的吗?

感谢您的耐心等待


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

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

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

另一种方法是在公共互联网上可访问的任何其他服务器上设置 sshd(或任何其他隧道产品)。从您的服务器初始化与它的连接,并使用该连接将流量从该公共服务器上的端口 80 转发到您的服务器。

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

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

NAT 后面的 HTTP 服务器 的相关文章

  • VMware虚拟机NAT无法联网的几大原因

    1 宿主机电脑网络链接 适配器中 xff0c VMnet8网卡可能未启用 xff0c 请禁用后再启用 2 右键我的虚拟机 gt 设置 gt 网络适配器 xff0c 选择NAT或者自定义 gt VMnet8 3 VMware gt 编辑 gt
  • 代理服务器与NAT技术

    1 1 简介 1 1 1 名词解释 公有IP地址 xff1a 也叫全局地址 xff0c 是指合法的IP地址 xff0c 它是由NIC xff08 网络信息中心 xff09 或者ISP 网络服务提供商 分配的地址 xff0c 对外代表一个或多
  • KVM NAT 模型

    目录 NAT原理 virbr0与virbr0 nic virbr0 nic作用 关于kvm中的网桥和virbr0 nic网卡需注意以下几点 xff1a NAT原理 virbr0与virbr0 nic zyq 64 zyq ip a 6 vi
  • 2008虚拟机创建nat服务器,Windows Server2008 R2 设置NAT 让Hyper-V连接Internet

    mybatis配置log4j显示sql语句 log4j properties文件下 log4j rootLogger 61 DEBUG Console Console log4j appender Console 61 org apache
  • 使用VMware创建CentOS7虚拟机并设置网络环境(桥接、NAT、内网)

    使用VMware创建CentOS7虚拟机并设置网络环境 xff08 桥接 NAT 内网 xff09 演示目标演示环境创建虚拟机设置外网NAT模式桥接模式 设置内网 演示目标 使用VMware Workstation创建三台CentOS7虚拟
  • WEBRTC之测试STUN/TURN服务器是否可用

    可以通过这个地址进行测试 xff1a https webrtc github io samples src content peerconnection trickle ice 如果测试的是一个STUN服务器 xff0c 在连接有效时应该可
  • NAT穿透的工作原理

    一 引言 1 1 背景 IPv4地址短缺 引入NAT 全球IPv4地址早已不够用 因此人们发明了NAT 网络地址转换 来缓解这个问题 简单来说 大部分机器都使用私有IP地址 如果它们需要访问公网服务 那么 出向流量 需要经过一台NAT设备
  • linux虚拟机中和主机三种网络连接方式的区别

    在介绍网络模式之前 关于网络的几个简单命令的使用 ifup eth0 启动网卡eth0 ifdown eth0 关闭网卡eth0 etc network interfaces 网络配置文件 etc init d networking 网络服
  • 【网络工程师实战教学】华为ENSP模拟器——NAT配置实验详解_必看干货!

    NAT Network Address Translation 网络地址转换 是将IP数据报文中的IP地址转换为另一个IP地址的过程 当内部IP想要访问外网时 NAT主要实现内部网络和外部网络之间IP的转换 这种通过使用少量的公网IP地址代
  • 虚拟机配置NAT网络

    如果你的网络ip资源紧缺 但是你又希望你的虚拟机能够联网 这时候NAT模式是最好的选择 NAT模式借助虚拟NAT设备和虚拟DHCP服务器 使得虚拟机可以联网 其网络结构如下图所示 这个地方一定要将 主机网卡和虚拟网卡VMnet8地址设置成不
  • 使用Java进行NAT穿越

    我想连接到计算机 每台计算机都位于 NAT 路由器后面 我读到 STUN 仅适用于 NAT 路由器后面的一台计算机 真的吗 如果是这样 我该如何解决双 NAT 问题 谢谢 托马斯 UDP打洞 and TCP打孔
  • Spring:无法从防火墙后面使用 RMI 连接到 JMX 服务器

    我的 Spring 应用程序正在 NAT 防火墙 pfSense 后面的计算机上运行 机器的内部IP是a b c d NAT IP 为w x y z Spring配置的serviceUrl设置为我的内部IP a b c d 在港口1100
  • 我应该使用 Java 和哪些 Stun 库?

    Java 我试图编写自己的 STUN 客户端 但似乎我犯了错误 因此 大多数时候它都会被冻结 所以我想知道哪些 STUN 客户端库可用于 Java 以便开始使用 跟进 同时尝试跟进 仍然没有涉及NAT 防火墙后面的解决方案 第1步 击晕等级
  • 防火墙后面的 WCF 服务 – 如何设置端口转发?

    我刚刚开始接触 WCF 编程 我在我的工作计算机上设置了一个自托管测试 Web 服务 该计算机位于防火墙后面 它在http localhost 8000 MyTestService 我可以通过浏览器访问服务页面 一切正常 现在我想从位于不同
  • 为公共 GKE 集群设置 Cloud NAT

    我想设置一个 NAT 网关 使用云NAT https cloud google com nat docs overview 以便公共 GKE 集群中的 VM Pod 使用静态 IP 地址 我面临的问题是 NAT 网关似乎只能在虚拟机没有其他
  • Amazon AWS NAT 网关不工作,EC2 未在 ECS 集群中注册

    我确信我的 EC2 实例和集群配置正确 并且由于网络配置 它们不会注册 我正在从自动扩展组构建 EC2 实例 他们will如果我创建 关联弹性 IP 到它们 则注册 但我无法将它们连接到 NAT 因为它们将自动缩放 我需要它们使用 NAT
  • 有没有开源的跨平台NAT穿透?

    有没有开源的跨平台NAT穿透 我还没见过 但您会在这里找到比您需要的更多信息 http www enchantedage com node 8 http www enchantedage com node 8 实施起来并不难 只需要做一些工
  • NAT 后面的 HTTP 服务器

    我正在尝试在多层 NAT 后面创建一个 apache 服务器 以便可以从 Internet 访问 限制 避免中继 有一个公共服务器 我们称他为OldMan 用于登录 眩晕 但其带宽太差 无法承载中继数据 我无权手动配置 NAT 3 用户无需
  • 什么是 STUN?它是否需要端口转发服务器?

    我对没有基础服务器的 p2p 通信进行了一些研究 并通过了 STUN 据我所知 STUN 是 NAT 打孔 的一种方式 不需要对等方进行端口转发即可连接 这是正确的吗 打孔到底是什么意思 这一切看起来都很脆弱 因为如果不需要端口转发 它就会
  • 未在虚拟机内分配外部 IP

    我正在尝试设置几个 Centos 6 虚拟机 我为它们分配了静态 IP 但运行 ifconfig 时 我看不到外部 IP 只看到内部 IP Google 不允许这种功能吗 除了Anderson所说的之外 这是从实例本身查询外部IP的命令 c

随机推荐

  • del 语句与调用 __delitem__ 总是 100% 相同吗?

    a something iterable object in python del a 1 Is del a 1 总是一样a delitem 1 是Python吗del语句定义为调用 delitem method The del陈述 htt
  • 向上按钮调用父 Activity 的 OnDestroy

    首先 我想澄清一些事情 我正在努力使用的按钮不是back按钮 我指的是up home应用程序顶部的 ActionBar Toolbar 中的按钮 而不是底部的 Android 按钮 有几个posts https stackoverflow
  • 将特定 TensorFlow 变量恢复到特定层(按名称恢复)

    假设我训练了一个 TensorFlow 模型并保存了它 现在有一个不同的模型 并且我想将保存的模型中的一些权重用于模型中的某些层 它们具有相同的形状 现在 我能够找到如何从模型中保存特定变量 具有特定名称 但我无法找到任何按名称恢复这些变量
  • 如何将挂起函数作为显式参数传递给协程构建器?

    我正在调查launch协程构建器将协程代码作为block suspend CoroutineScope gt Unit 我们通常将代码作为 lambda 传递 但是 我想知道如何将此函数作为显式参数传递给启动函数 coroutineScop
  • 如何使用gson处理动态响应数据? (json 到 java 对象)

    这是 Json 用户列表 response result users name ABC age 20 gender F name cbd age 23 gender M 有时会像这样返回 response result
  • 使用 Tornado 广播消息

    我有一个发送消息的应用程序 该消息应该广播到每个当前连接的客户端 假设客户数量可能达到数千 如何在不阻塞的情况下实现这个广播逻辑 我认为会阻止的示例代码 clients class Broadcaster tornado websocket
  • Arm Cortex A9交叉编译奇怪的浮点行为

    我正在尝试将更大的应用程序从 x86 移植到 arm cortex a9 但在交叉编译应用程序时 我遇到了像 modf 这样的浮点函数的奇怪分段错误 其他 libc 函数似乎处理浮点数错误 但不会崩溃 见下文 所以我尝试了这个小测试程序 它
  • android.content.UriMatcher 的含义

    Uri Matcher 是什么android content UriMatcher 如何使用它 有人可以解释一下以下三行代码的含义吗 uriMatcher new UriMatcher UriMatcher NO MATCH uriMatc
  • C# 中的 Directory.GetFiles() 模式匹配

    我在用着Directory GetFiles 根据给定模式列出文件 这对于我正在寻找的大多数模式 例如 zip rar sfv 都适用 这就是我准备清单的方式 或多或少 问题在于我想列出的数字 0 001 到 0 999 的模式 alArr
  • 如何更改选定文本的颜色?

    请左键单击并拖动此文本 标记它 您看到的颜色是蓝色 我想使用 Javascript 或 HTML CSS 将该颜色更改为深绿色 浏览器支持有限 selection background ffb7b7 Safari moz selection
  • 了解 ldd 输出

    如何ldd知道这取决于libc so 6 not libc so 5 or libc so 7 libc so 6 gt lib64 libc so 6 0x00000034f4000000 lib64 ld linux x86 64 so
  • 无法从 WP8 上 SD 卡上的 SQLite DB 检索数据

    我在控制台应用程序中使用 System Data SQLite 创建了 SQLite DB 然后我将其移至 Windows Phone 的 SD 卡 我按照以下说明将 SQLite 支持添加到我的 WP8 应用程序 https github
  • 你能在 matplotlib 中绘制实时数据吗?

    我正在一个线程中从套接字读取数据 并希望在新数据到达时绘制和更新绘图 我编写了一个小原型来模拟事物 但它不起作用 import pylab import time import threading import random data Th
  • pymc3 具有来自核密度估计的自定义似然函数

    我正在尝试将 pymc3 与从一些观察数据派生的似然函数一起使用 这些观察到的数据不符合任何好的标准分布 所以我想根据这些观察来定义我自己的数据 一种方法是对观测值使用核密度估计 这在 pymc2 中是可能的 但与 pymc3 中的 The
  • 来电时无振铃事件

    我不知道哪里出了问题 听者听不懂onRinging事件 这样我就可以决定接受还是拒绝来电 清单中是这样的
  • JPA 枚举继承

    我有一个名为 类别 的接口和 4 个实现该接口的枚举 这些枚举是按类别决定的 并且有不同的类型 例子 Interface interface BillCategory Enum 1 public enum GroceryPurchase i
  • 嵌入式 ember-cli 项目与 RequireJS 冲突

    我正在尝试将 EmberJS 应用程序嵌入到广泛使用 RequireJS 库的大型门户应用程序中 我正在使用 ember cli 来构建项目 构建的应用程序由两个文件组成 dist assets vendor js and dist ass
  • Spring-JPA EntityManager 如何处理“断开的”连接?

    我有一个使用 Spring EntityManager JPA 的应用程序 我想知道如果数据库在上述应用程序的生命周期内不可用 会发生什么情况 我预计在这种情况下它会在第一次对数据库执行任何操作时抛出异常 对吗 但是 假设我等待 10 分钟
  • 如何使用 AJAX Control Toolkit HTML 编辑器通过 javascript 获取/设置内容?

    我正在使用 AJAX Control 工具包 HTML 编辑器 并希望有一个简单的问题 正如问题标题所说 如何通过 javascript 获取 设置 HTML 编辑器的内容 我访问服务器端内容属性没有问题 但如何在客户端执行此操作 非常感谢
  • NAT 后面的 HTTP 服务器

    我正在尝试在多层 NAT 后面创建一个 apache 服务器 以便可以从 Internet 访问 限制 避免中继 有一个公共服务器 我们称他为OldMan 用于登录 眩晕 但其带宽太差 无法承载中继数据 我无权手动配置 NAT 3 用户无需