I’ve set up my homeserver via matrix-docker-ansible-deploy, but made the mistake of using my domain as ansible_host
variable at first. I think that is why now my Coturn server doesn’t work as intended. Calls can only be made (in Element) when I enable turn.matrix.org as an alternative in the settings.
Since the initital setup, I’ve correctly replaced the domain with the server IP in the ansible inventory file and reran just setup-all
, but I still can’t make calls via my homeserver.
- Is it likely that the mistake I made is causing this issue?
- What can I do to correct the Coturn configuration or otherwise fix this issue?
EDIT:
I’ve found this in the docs: https://github.com/spantaleev/matrix-docker-ansible-deploy/blob/master/docs/configuring-playbook-turn.md#manually-defining-your-public-ip
I’ll try this and report back.
EDIT2: This did not fix the issue.
@Lemmchen
The stun protocoll is btokering a direct p2p-connection between devices, when it’s possible in case of network.
When a direct connection is not possible (both devices are behind differen natted networks/firewalls), turn is needed (turns with ssl) and the audio/video datastream runs through the turn-server.
Are your devices in the same LAN/WLAN? Or in different?
Is one at home, the other in office-network?
If they are in different networks, (it belongs to the clients, not the server!) a stun server is needed outside the network in the free, for both reachable internet!
So both can see and reach the stun/turn server.
I think, your coturn is not not good reachable from outside in your setup, that’s why turn.matrix.org works, and yours not.
Coturn can work as turn and stun at the same time.
Maybe the standardports 5439 and 3478 (each also +1) or the highports are blocked by your firewall.
So you can try to let them listen on port 443 (turns) and 80 (stun) from outside. Most firewalls won’t block those ports…
Or describe please, how exactly do you use your matrix? Where is your homeserver, in which networks are your clients? Do you use vpn?
This is hardcore network-stuff snd not directly related to matrix.
The homeserver incl. Coturn is running on a VPS, no ports blocked.
The clients are in different networks. Everything should just work, but it doesn’t for some reason.
@Lemmchen the different client-networks csn be the problem.
Some providers block webrtc or stun/turn…
Did you try to test your coturn on
webrtc.github.io/samples/src/c…
Delete all servers there and fill in your stun and turn (turn incl. credentials) andvtest ist.
You should get relay (=turn) and srflx (=stun) marked entries
The test correctly gathers the
srflx
candidates, so STUN should be working. But I can’t get it to findrelay
candidates, so I guess TURN isn’t?