From fa1e27994dd1284f6fefbe08c47a5c4145ccf00d Mon Sep 17 00:00:00 2001 From: Patric Stout Date: Wed, 5 May 2021 10:47:01 +0200 Subject: Feature: allow the use of TURN to connect client and server together TURN is a last resort, used only if all other methods failed. TURN is a relay approach to connect client and server together, where openttd.org (by default) is the middleman. It is very unlikely either the client or server cannot connect to the STUN server, as they are both already connected to the Game Coordinator. But in the odd case it does fail, estabilishing the connection fails without any further possibility to recover. --- docs/game_coordinator.md | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'docs/game_coordinator.md') diff --git a/docs/game_coordinator.md b/docs/game_coordinator.md index e8260f2e1..8bf07d802 100644 --- a/docs/game_coordinator.md +++ b/docs/game_coordinator.md @@ -62,3 +62,22 @@ server can continue to talk to each other. Some NAT gateways do not allow this method; for those this attempt will fail, and this also means that it is not possible to create a connection between the client and server. + +## 3) Via TURN + +As a last resort, the Game Coordinator can decide to connect the client and +server together via TURN. TURN is a relay service, relaying the messages +between client and server. + +As the client and server can already connect to the Game Coordinator, it is +very likely this is successful. + +It is important to note that a relay service has full view of the traffic +send between client and server, and as such it is important that you trust +the relay service used. +For official binaries, this relay service is hosted by openttd.org. The relay +service as hosted by openttd.org only validates it is relaying valid OpenTTD +packets and does no further inspection of the payload itself. +Although in our experience most patch-packs also use the services as offered +by openttd.org, it is possible they use different services. Please be mindful +about this. -- cgit v1.2.3-70-g09d2