问题标签 [wan]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
997 浏览

c# - c#客户端/服务器通过互联网同步通信

所以我创建了一个在局域网中工作的“简单聊天应用程序”,但是当我尝试走出局域网时它不起作用。我一直在网上寻找解决方案,遇到了很多东西,比如 NAT 遍历、端口转发等等……我发现没有一个有用。我的问题是:如何让我的应用程序在 WAN 上运行?我知道我想要两台 PC 通过 Internet 相互通信(一台是客户端,另一台是模拟服务器),并且这些 PC 隐藏在使用 NAT 的路由器后面。但我不知道如何让我的应用程序工作。

服务器:

客户:

我知道这乍一看会像复制品一样,但我看到的帖子都没有解决相同的问题,要么他们希望 A 和 B 通过服务器进行通信,要么是其他东西。我想要 A 和 B 聊天,其中 A 是服务器,B 是客户端,反之亦然。我想要的第一件事是让它能够在互联网上工作,稍后我将解决异步问题。

编辑: Lemme 只是澄清“不工作”的事情......它抛出了我捕捉并通过(“无法连接!”)部分代码的异常。

0 投票
0 回答
844 浏览

docker - Docker 广域网模拟器

我有一个程序在一个 docker 容器中运行,它们相互通信。因为容器主要在一台机器上运行,所以我想为这些容器模拟一个 WAN 来模拟丢包、延迟、延迟等。是否有一个轻量级的解决方案?

我已经查找了 WANem,但似乎我需要将它放在一个额外的虚拟机中,并将它放在 docker 容器的通信之间。理想的情况是在每个 docker 容器中运行一个模拟延迟、丢包等的程序。

0 投票
1 回答
67 浏览

networking - 在全球网络中编写客户端-服务器应用程序

我知道,如何编写一个通过本地网络工作的 C# 应用程序。

我的意思是我知道,如何让我的客户端应用程序在单个本地网络中访问我的服务器端应用程序。

但我想知道:Skype、TeamViewer 和许多其他应用程序如何通过全球网络连接?

我很抱歉,如果这个问题很简单或很明显,但我找不到关于这些东西的任何信息。

请帮助我,我将不胜感激。任何信息都被接受——文章、普通信息、书籍
等等……

0 投票
1 回答
1220 浏览

linux - 国家和外部 IP Bash 脚本

我根据我在 INTERNET 上找到的内容和一些 bash 教程创建了一个脚本,它将显示我的外部 IP 和它所在的国家/地区。

#

脚本如下所示:

#

输出如下所示:国家:荷兰 183.64.132.80

#

问题是我不想使用文件来执行此操作,因为文件结构显然会因系统而异。我怎样才能以一种优雅的方式进行检查,以便进行检查并将其存储到变量中,然后直接显示到 shell 中?

约翰康纳

0 投票
2 回答
1595 浏览

replication - Apache Ignite 是否支持 WAN 复制?

我一直在用 Apache Ignite 做一些实验,并开始研究 WAN 复制。我的意思是有 2 个(或更多)数据中心,每个数据中心都运行一个 Ignite 集群。我希望在两个数据中心之间保持一些缓存同步。

Apache Ignite 支持这个吗?如果是这样,这是如何配置的,因为我在文档中找不到任何提及。

0 投票
2 回答
1303 浏览

java - RMI 服务器(似乎)忽略 WAN 上的连接

乍一看,这似乎是一个基本的网络问题——但我认为情况并非如此。似乎 Java 本身“忽略”了 RMI 连接。

Windows 10 PC 上的所有 Java 8u101。

我们有一个相当成熟和健壮的分布式 Java 应用程序,它通过 LAN 上的 RMI 进行通信。
对于多年来在他们的 LAN 上运行我们的应用程序的客户来说,完全没有问题。这个相同的应用程序还连接到一个共享数据库(在与 RMI 服务器相同的“服务器”PC 上)。

我们的一位客户最近在 100 米外建立了一座新建筑,他们的两个场所通过 WAN 连接。但是,远程站点的 Java 客户端无法连接到 Java RMI 服务器。

似乎所有网络本身都可以,如下所示....

  • 在 LAN 上一切正常运行
  • 非 RMI 可以:
    • 从远程位置,我们可以运行不同的数据库客户端并成功连接到数据库服务器(与 RMI 服务器在同一台 PC 上)
  • 从客户端看 RMI 端口似乎没问题
    • 在远程位置使用 telnet 客户端,我们可以建立到 RMI 端口的连接
  • RMI 端口似乎连接到服务器 PC:
    • 在运行 Java RMI 服务器本身的 PC 上,我们可以通过“netstat -an”见证连接,它显示已建立的连接来自适当的 WAN IP 地址。

这表明(对我而言)连接正在到达正确的位置,并且没有被错误配置或防火墙或任何东西阻止。它似乎“进入”了 RMI 服务器 PC,但随后没有进入 RMI 服务器本身。

我的第一个猜测是尝试使用“Java 控制面板”之类的东西,也许可以调整可能限制 RMI 流量的安全设置 - 但我无法识别任何此类开关。

任何人都可以提供任何线索吗?

  • 有什么方法可以验证连接是否到达 Java?
  • 在它传递到 RMI 服务器之前,它可能是一个阻止它的 Java 安全性吗?

任何建议或指导将不胜感激。

(编辑,添加更多细节......)

更多信息如下...

  • 在 LAN 中,服务器 PC 被称为 192.168.0.110
  • 从远程位置(通过 WAN),服务器 PC 被称为 110.142.83.167
  • 远程客户端似乎获得了 RMI 服务器对象
  • 堆栈跟踪(详情如下)有“连接拒绝主机:192.168.0.110;”
  • 所以似乎对它是哪个IP地址感到困惑。客户端请求110.142.83.167,但服务器认为是192.168.0.110

堆栈跟踪如下...

遵循代码的超级精简版本(无样板等)......

在 RMI 服务器...

服务器RMI对象...

在每个 RMI 客户端...

0 投票
0 回答
110 浏览

rabbitmq - 我可以使用 rabbitmq 在 WAN 上实现一致性和分区容错吗

RabbitMQ 为分布式系统提供了两种选择——Federation 和/或 shovel,它们有利于可用性(AP)而不是一致性(CP)(以及在 WAN 上工作);集群支持一致性 (CP) 而不是可用性 (AP)(但不适用于 WAN)。

有什么方法可以设置 RabbitMQ 和插件以支持 CP 并允许通过 WAN 进行镜像?

0 投票
1 回答
442 浏览

powershell - 通过 WAN 链接传输文件会导致损坏

我遇到了 PDF 文件在从一个 WAN 位置复制到下一个位置时损坏的问题。

我有一个 PowerShell 脚本(下面的代码),它每晚运行以通过 Windows 任务计划程序(有时是两个)从佛罗里达州的卫星办公室复制 PDF 文件到我们在俄勒冈州的公司网络。这些文件通常约为 35 Megs,但已被视为大至 65 Megs。这些文件在卫星位置生成良好,但在晚上运行复制脚本后,文件损坏并且无法打开。

我可以在脚本中做些什么来包含某种类型的错误更正以确保文件不会损坏?有没有更好的工具可以确保文件传输并保持完整性。

只要我可以自动化该过程并且只复制当天生成的文件,我就不会接受任何解决方案。

谢谢您的帮助。大卫

PowerShell 脚本



不要嘲笑我的代码。这不是我的强项。

0 投票
2 回答
97 浏览

asterisk - 星号 WAN 问题

在 WAN 上尝试呼叫时,我的 Asterisk 服务器出现问题。

当我连接到运行 SIP 服务器的 LAN 时,呼叫分机没有问题,但是当我使用同一部电话但尝试使用其移动数据进行呼叫时,只要我在 LAN 上拿起电话就会得到保留音乐。

我已将我的防火墙设置为 DNAT UDP 5060 和 UDP 10000-20000 到星号服务器,并将服务器上的防火墙配置为所有相同的端口。

0 投票
1 回答
741 浏览

rabbitmq - Rabbitmq WAN 上的主动/被动 HA

我正在尝试在两个数据中心之间为 RabbitMQ 提供灾难恢复。辅助数据中心是被动的,直到主 DC 关闭。
队列联合是不合适的,因为在辅助 DC 中的消费者激活之前它不会移动消息。这不应该发生,除非主 DC 不可用,此时这些消息无法访问。我考虑在主 DC 中创建一个额外的队列,该队列将接收每条消息的副本,然后使用 Federation 或 Shovel 将这些消息复制到辅助 DC。然后,当处理主 DC 中的“原始”消息时,问题就变成了从辅助 DC 中删除重复消息。
将队列镜像到辅助 DC 中的节点是可行的,但 RabbitMQ 由于延迟不会在 WAN 上集群。有没有其他人遇到过这种情况?谢谢。