Was ist ein TURN-Server?

Ein Traversal mit Relays um NAT (TURN)-Server ermöglicht zuverlässige WebRTC-Verbindungen in stark restriktiven Netzwerken.

Lernziele

Nach Lektüre dieses Artikels können Sie Folgendes:

  • Beschreiben, was ein TURN-Server macht
  • Vorteile der Verwendung eines TURN-Servers verstehen
  • TURN- und STUN-Server unterscheiden

Ähnliche Inhalte


Möchten Sie noch mehr erfahren?

Abonnieren Sie theNET, Cloudflares monatliche Zusammenfassung der beliebtesten Einblicke in das Internet!

Lesen Sie die Cloudflare Datenschutzrichtlinie, um zu erfahren, wie wir Ihre persönlichen Daten sammeln und verarbeiten.

Link zum Artikel kopieren

Was ist ein TURN-Server?

Ein „Traversal Using Relays around NAT (TURN)“-Server ist ein Webserver, der WebRTC-Verbindungen zwischen Computergeräten ermöglicht, wenn Firewalls oder die Verwendung privater IP-Adressen Echtzeit-Kommunikationsverbindungen wie Video- oder Audioanrufe unterbrechen. Wie die Abkürzung schon sagt, umgeht der TURN-Dienst die Network Address Translation (NAT), um sicherzustellen, dass die Verbindung zwischen Clients nicht mitten in einer Sitzung unterbrochen wird.

Einfach ausgedrückt: TURN-Server sorgen dafür, dass Video- und Audioanrufe auch dann gut funktionieren, wenn das Netzwerk nicht für ihre Unterstützung konfiguriert ist.

TURN-Server werden notwendig, wenn eines der Geräte in einer WebRTC-Verbindung eine private IP-Adresse verwendet. Geräte mit privaten IP-Adressen verbinden sich über NAT mit anderen Geräten. NAT verpackt Pakete neu und sendet sie an die private IP-Adresse, aber es funktioniert nicht gut mit vielen Protokollen, einschließlich WebRTC.

Stellen Sie sich vor, Alice will zu Bobs Haus fahren, aber auf der anderen Seite der Autobahn steht eine Straßensperre. Anstatt den Highway zu nehmen und auf die Straßensperre zu stoßen, nimmt Alice die Nebenstraßen, bis sie Bobs Haus auf einer alternativen Route erreicht. Ein TURN-Server bietet eine alternative Route für WebRTC-Verbindungen, bei denen NAT andernfalls ein unüberwindbares Hindernis darstellen könnte.

TURN- vs. STUN-Server

Ein STUN-Server (Session Traversal Utilities for NAT) ist ein weiterer Servertyp, der WebRTC-Verbindungen unterstützt. Damit können zwei Geräte die öffentlichen IP-Adressen des jeweils anderen ermitteln und eine direkte Verbindung herstellen. Allerdings können STUN-Server die strengen Sicherheitsmaßnahmen oft nicht umgehen. In solchen Fällen kann stattdessen ein TURN-Server verwendet werden.

Was ist WebRTC?

Web Real-Time Communications (WebRTC) ist eine Open-Source-Technologie, die den Aufbau einer direkten Peer-to-Peer (P2P)-Echtzeitkommunikation über APIs ermöglicht. Es ermöglicht Client-Geräten, Dateien untereinander zu streamen, anstatt sich auf einen zentralen Server zu verlassen (im Gegensatz zu Protokollen wie HLS oder HDS, die ein Client-Server-Modell voraussetzen). WebRTC wird auch für eine Reihe von Kommunikationsprotokollen verwendet, darunter das Voice over Internet Protokoll (VoIP), das internetbasierte Telefon- und Videoanrufe unterstützt.

Was ist Network Address Translation (NAT)?

NAT (Network Address Translation) ist eine Technik zur Zuordnung privater IP-Adressen zu öffentlichen IP-Adressen – oder, am häufigsten, zur Zuordnung mehrerer privater IP-Adressen zu einer öffentlichen IP-Adresse. (IP-Adressen sind für die Einrichtung von Verbindungen zwischen Geräten unerlässlich.)

NAT ist mit der Verwendung einer Weiterleitungsadresse in einem Postsystem vergleichbar. Korrespondenten können Post versenden, ohne die wahre Postanschrift des Empfängers zu kennen, da die Weiterleitungsadresse sie an diese Adresse weiterleitet. In ähnlicher Weise ordnet NAT eine öffentliche IP-Adresse einer privaten IP-Adresse zu und leitet Pakete an die richtigen Stellen weiter.

Eine der beliebtesten Anwendungen von NAT ist die Zuweisung von IP-Adressen innerhalb von lokalen Netzwerken (LANs), wie z. B. WLAN-Heimnetzwerken. Es gibt nicht genügend IPv4-Adressen, daher weisen Router den mit dem Netzwerk verbundenen Geräten dynamische, private IP-Adressen zu. Diese IP-Adressen werden wahrscheinlich auch von anderen Geräten im Internet verwendet. Um Verwechselungen zu vermeiden, verwendet der Router sie über NAT, um sie in eine öffentlich zugängliche IP-Adresse zu ändern, die nirgendwo anders dupliziert wird. (Der ISP kann diese öffentlich zugänglichen IP-Adressen auch dynamisch zuweisen).

NAT wird außerdem als Sicherheitsmaßnahme verwendet, um IP-Adressen geheim zu halten. Ein Gerät kann es vermeiden, seine wahre IP-Adresse außerhalb des Netzwerks – oder sogar innerhalb des Netzwerks – preiszugeben und NAT verwenden, um eine öffentliche IP-Adresse zu senden und sich mit anderen Geräten zu verbinden.

Das Problem ist, dass einige Protokolle auf der Anwendungsschicht nicht gut mit NAT funktionieren, so wie die Weiterleitungsadresse möglicherweise nicht alle Arten von Mails (z. B. große Pakete) weiterleiten kann.

Was ist der Vorteil der Verwendung eines TURN-Servers?

Ein TURN-Server hilft dabei, die Konnektivität selbst in stark eingeschränkten Netzwerkumgebungen sicherzustellen, die NAT und Firewalls zum Verbergen von IP-Adressen verwenden. Sie ermöglicht Echtzeit-Kommunikation, wenn normale Verbindungen nicht möglich sind und STUN-Server sie nicht unterstützen können. TURN-Server verbessern die Zuverlässigkeit von internetbasierten Telefondiensten oder Chat-Diensten.

Umfasst Cloudflare Calls den TURN-Dienst?

Cloudflare Calls ist ein Dienst, der es Entwicklern ermöglicht, Audio-, Video- und Datenanwendungen in Echtzeit zu erstellen. Cloudflare Calls enthält einen globalen TURN-Server, der die Erstellung von schnellen und zuverlässigen Echtzeitanwendungen erleichtert. Weitere Informationen über den TURN-Dienst von Cloudflare finden Sie in der Entwicklerdokumentation.