如果我需要从防火墙将 Ably 的服务器列入白名单,我应该添加哪些端口、IP and/or 域?

If I need to whitelist Ably's servers from a firewall, which ports, IPs and/or domains should I add?

我正在使用 Ably 通过 websockets 实现 Pub/Sub。如果我需要从防火墙将 Ably 的服务器列入白名单,我应该添加哪些端口、IP and/or 域?

(免责声明:我是 Ably 的开发者倡导者,并在 Stack Overflow 上发布和自我回答 commonly asked support question 以便我们的用户可以更轻松地找到它)

端口

Ably 的所有客户端库都专门使用标准 HTTPS 端口 443 WebSockets 和通过 TLS 的 HTTP 流量。

配置为不使用 TLS 时,将使用端口 80。请注意,我们很少建议任何人使用未加密的连接,并且默认情况下在所有客户端库中禁用此功能。

如果使用我们的 Ably 协议适配器 and/or 我们的 Ably Reactor 服务,将使用以下端口:

Reactor queue over AMQP - TLS only using port 5671
Reactor queue over STOMP - TLS only using port 61614
MQTT adapter - port 8883 over TLS and port 1883 for unencrypted socket
PubNub adapter - HTTPS only using port 443
Pusher adapter - HTTPS only using port 443

IP 和域名

不幸的是,Ably 不可能为基于云的服务发布一组 IP 地址,因为我们的服务是弹性的,并且 IP 地址作为我们服务的正常部分动态重新分配。如果需要基于 IP 的限制,请与我们联系以讨论具有专用集群和固定 IP 集的企业帐户。

默认情况下,Ably 的客户端库使用以下域连接到 Ably:

REST requests - rest.ably.io
Realtime (WebSocket) connections - realtime.ably.io
Fallback hosts - a.ably-realtime.com, b.ably-realtime.com, c.ably-realtime.com, d.ably-realtime.com, e.ably-realtime.com. Please see the documentation on why we provide a fallback host feature.

请注意,使用自定义 CNAME 的客户将拥有一组不同的主要 REST 和实时域,并且可能还拥有一组不同的备用主机域。请联系我们以了解有关您的域的更多信息。

如果使用我们的 Ably 协议适配器 and/or 我们的 Ably Reactor 服务,则使用以下域:

Reactor Queue US East 1 - us-east-1-a-queue.ably.io
Reactor Queue other regions - get in touch
MQTT adapter - mqtt.ably.io
PubNub adapter - pubnub-rest.ably.io
Pusher adapter - pusher-rest.ably.io and pusher-realtime.ably.io

ably.io