Daniel's technical blog

My hobbyist technical blog

Nextcloud AIO on Unraid: Nextcloud talk rejoin/loading loop

I struggled with getting Nextcloud Talk (Spreed) to work with Nextcloud AIO on Unraid. It would become a loop where the clients in the call couldn’t connect if they were outside of the LAN.

Some forums and threads recommend deploying the ‘Stun-Turn-Server’ from the Unraid app store, but I have found it to not work at all. Nextcloud AIO already includes a STUN & TURN server called ‘nextcloud-aio-talk’.

Verify nextcloud-aio-talk is running

Ensure that the nextcloud-aio-talk container is in the running state before continuing.

Forward port 3478

Port 3478 is the port that nextcloud-aio-talk exposes for STUN/TURN services. Forward it using both TCP and UDP. These may need to be separate rules depending on your router.

You can verify that the port forwarding has worked using a website like portchecker.co. Note that this only works for TCP and not UDP.

Configure STUN server in Nextcloud

STUN is used to discover a client’s public IP and port. Configure it in Nextcloud in Administration > Talk like so:

If all is OK, its should save by itself or once you click out of the text field.

Retrieve the TURN secret

Enter into the terminal or console of the nextcloud-aio-talk container like so:

Retrieve the contents of the file /conf/eturnal.yml with a command like this:

$ cat /conf/eturnal.yml

You will get a result like this:

/conf $ cat eturnal.yml 
eturnal:
  listen:
    - ip: "::"
      port: 3478
      transport: udp
    - ip: "::"
      port: 3478
      transport: tcp
  log_dir: stdout
  log_level: warning
  secret: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" <====== Secret
  relay_ipv4_addr: "172.18.0.3"
  blacklist_peers:
  - recommended
  whitelist_peers:
  - 127.0.0.1
  - ::1
  - "172.18.0.3"
/conf $

Retrieve the secret from the secret property in the returned YAML document.

Configure TURN server in Nextcloud

Enter Administration > Talk in Nextcloud again, and find the section for TURN server.

Enter your domain name:your port into the ‘TURN Server URL’ field and the secret you just retrieved into the ‘TURN Server Secret’ field.

You can click the icon that looks like a graph to test the connection and authentication. If all is good, it should turn into a green tick.

Conclusion

If everything was configured correctly, you should hopefully now have working video conferencing in Nextcloud. Thank you for reading!

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *