Networking and Firewall Issues

Tuple needs to be able to access various resources. If you are using a VPN, or have a particularly strict firewall, Tuple may appear degraded. Please verify that Tuple has access to the following:

1. Tuple API Backend

Tuple needs to be able to access to our API for authentication and user list population. Please verify Tuple can access:

  • production.tuple.app

2. TURN Relay Servers

When it's not possible to obtain a peer-to-peer connection through local or public networks, Tuple uses Twilio to route media data through TURN servers. Please verify Tuple can access:

If you're having issues establishing a call, see Twilio's Networking Requirements docs and general information on the Network Traversal Service.

3. Signaling servers

Tuple uses signaling to facilitate the initiation of calls between peers and to provide availability (active/inactive/busy) status updates to clients. Please verify Tuple can access:

  • tuple-production.firebaseio.com
  • production.stream.tuple.app
  • securetoken.googleapis.com
  • www.googleapis.com

4. STUN servers

Tuple uses STUN to obtain a peer-to-peer connection through local or public networks. Please verify Tuple can access:

  • stun.l.google.com
  • stun1.l.google.com
  • stun2.l.google.com

5. Background updates, Logs, Analytics, and Crash reporting

When it can, Tuple tries to do background app updates. Tuple also monitors certain events and analytics data in order to constantly improve performance. Please verify Tuple can access:

6. Ports for peer-to-peer Traffic

If allowed, Tuple (using WebRTC) will create peer-to-peer connections. The connections will be UDP or TCP traffic, but the ports used are dynamic.
Here are some firewall rules that are recommended for using WebRTC service:

Minimum Requirement: TCP ports 80 and 443 are open. Some firewall rules only allow for TCP traffic over port 443, make sure that all traffic can pass over this port.
Best Experience: In addition to the minimum requirements being met, we recommend that UDP ports 1025 - 65535 be open.
Explicit Firewall rules for your IT department:
443/tcp ALLOW Anywhere
80/tcp ALLOW Anywhere
53/udp ALLOW Anywhere
443/tcp (v6) ALLOW Anywhere (v6)
80/tcp (v6) ALLOW Anywhere (v6)
53/udp (v6) ALLOW Anywhere (v6)
53/udp ALLOW OUT Anywhere
80/tcp ALLOW OUT Anywhere
443/tcp ALLOW OUT Anywhere
443/udp ALLOW OUT Anywhere
53/udp (v6) ALLOW OUT Anywhere (v6)
80/tcp (v6) ALLOW OUT Anywhere (v6)
443/tcp (v6) ALLOW OUT Anywhere (v6)
443/udp (v6) ALLOW OUT Anywhere (v6)

VPN and Firewall Related Lag

Tuple calls are peer-to-peer connections, and some VPN's can cause network traffic to be routed through the internet very inefficiently. Please ensure your VPN settings do not cause this:

  • Pick a VPN endpoint that is in a more local geographic location to the participants on the call.
  • Ensure that the VPN is allowing UDP traffic. If possible, set a VPN configuration which would avoid sending this traffic through the VPN.
  • Update your Firewall to bypass SSL decryption will prevent unnecessary added lag.
  • Allow a reasonable MTU (Maximum Transmission Unit) for streaming video.
  • Review any intelligent filtering software in use to ensure it's not affecting packet transmission.

If Tuple is stuck "Connecting..."

Tuple can get stuck connecting when you're using a VPN. If Tuple was previously working, please verify that your VPN settings have not changed.

If you have ruled out a VPN settings change as the root cause, please:

  1. Confirm that you have latest version of Tuple
  2. Confirm that Tuple has access to the Tuple API Backend (listed above).
  3. Restart your computer. This can fix issues with a system macOS service that can get into a bad state unrelated to Tuple
  4. If restarting did not fix the issue, run a process sample of Tuple while the issue is happening by opening Activity Monitor, double clicking on Tuple, and clicking "Sample" in the bottom left and send that to us at support@tuple.app.

Still need help? Contact Us Contact Us