Definition

Was ist ein STUN-Server?

| Autor / Redakteur: Stefan Luber / Andreas Donner

Die wichtigsten IT-Fachbegriffe verständlich erklärt.
Die wichtigsten IT-Fachbegriffe verständlich erklärt. (Bild: © aga7ta - stock.adobe.com)

Ein STUN-Server ermöglicht es Clients, deren IP-Adressen per Network Address Translation übersetzt wurden, über NAT-Grenzen hinweg Verbindungen aufzubauen. Server und Client nutzen hierfür das standardisierte Simple Traversal of User Datagram Protocol Through Network Address Translators (STUN). Typischer Anwendungsbereich eines STUN-Servers ist die VoIP-Telefonie.

Die Abkürzung STUN im Begriff STUN-Server steht für das ursprünglich im RFC 3489 standardisierte Simple Traversal of User Datagram Protocol Through Network Address Translators. STUN wurde im RFC 5389 überarbeitet und in Session Traversal Utilities for Network Address Translation umbenannt.

Aufgabe eines STUN-Servers ist es, Clients, deren IP-Adressen per Network Address Translation (NAT) übersetzt bzw. maskiert wurden, Verbindungen über die Übersetzungsgrenzen hinweg und außerhalb des lokalen Netzwerks zu ermöglichen. Dies ist beispielsweise für die IP-Telefonie in einem Netzwerk unerlässlich.

Der STUN-Server empfängt Anfragen von Clients auf dem UDP-Port 3478 und liefert den Clients, die ihre eigene öffentliche IP-Adresse aufgrund der Adressübersetzung nicht kennen, Informationen über die genutzten öffentliche IP-Adresse und den Port. Zudem ermittelt der STUN-Server, welche Art von Network Address Translation verwendet wird und wie sich Verbindungen zu einem Client von außen initiieren lassen.

Einer der wichtigsten Einsatzbereiche des STUN-Servers ist die VoIP-Telefonie. Mithilfe des STUN-Servers und den ermittelten öffentlichen IP-Adressen und Ports der VoIP-Telefone lassen über SIP (Session Initiation Protocol) trotz Network Address Translation direkte Kommunikationsverbindungen zwischen Teilnehmern herstellen. SIP ist für die Aushandlung der Sitzungsdetails und die Signalisierung verantwortlich. Der Audiostream wird direkt per Real-Time Transport Protocol (RTP) und per Transportprotokoll UDP zwischen den VoIP-Endgeräten ausgetauscht.

Weitere Einsatzbereiche der STUN-Server sind das Online-Gaming oder die Videotelefonie. Da in IPv6-Netzen die Endgeräte jeweils eigene öffentliche IPv6-Adressen erhalten und Network Address Translation nicht mehr notwendig ist, werden hier auch keine STUN-Server benötigt.

Die Problematik von Datenverkehr über NAT-Netzwerkgrenzen hinweg

Ein Hauptgrund für die Nutzung von Network Address Translation in IPv4-Netzen ist die Adressknappheit. Provider teilen einem Kunden meist nur eine einzige öffentliche, im Internet routbare IP-Adresse zu, die sich alle Endgeräte im Netzwerk des Kunden teilen müssen. Realisiert wird die Umsetzung der im lokalen Netzwerk genutzten privaten Adressen in öffentliche Adressen mit Network Address Translation im Internetzugangsrouter. Dieser weist jedem Endgerät und dem jeweils genutzten Port eine Kombination aus öffentlicher IPv4-Adresse und Port zu, die für die Kommunikation im Internet nutzbar ist.

Die Zuordnung von privater IP-Adresse und Port zur öffentlichen Adresse und Port speichert der Router in einer Übersetzungstabelle. Das Endgerät kennt in der Regel nur seine eigene private Adresse und nicht die Adresse, mit der es im Internet unterwegs ist.

Network Address Translation bricht das Ende-zu-Ende Prinzip der IP-Kommunikation auf und kann zu Problemen mit bestimmten Anwendungen und Protokollen führen. Problematisch ist Network Address Translation beispielsweise für Voice over IP und SIP sowie für Verschlüsselungsprotokolle wie IPsec, die die IP-Adressen der Endstellen innerhalb des Protokolls zur Integritätsprüfung nutzen.

Je nach verwendetem Typ der Network Address Translation treten spezifische Probleme beim Überschreiten der Übersetzungsgrenzen auf. Typische verwendete Arten der Network Address Translation sind symmetrisches NAT oder (Full) Cone NAT, die jeweils spezifische Probleme verursachen.

Um zwischen zwei Endgeräten über NAT-Grenzen hinweg Verbindungen aufzubauen, werden Hilfskonstruktionen wie beispielsweise STUN und STUN-Server benötigt. Leider erhöhen sie die Komplexität und Fehleranfälligkeit der Kommunikation zusätzlich. Deutlich wird das Grundproblem der Kommunikation über NAT-Grenzen hinweg an folgendem stark vereinfachten Beispiel:

Im Prinzip ist ein Client hinter einem NAT-Router vergleichbar mit einem Telefonnutzer, der seine eigene Telefonnummer nicht kennt. Er kann sie daher anderen, die ihn anrufen möchten, nicht mitteilen. Lösen kann der dieses Problem beispielsweise, indem er eine Gegenstelle anruft, die seine Nummer erkennt und sie ihm nennt. Von nun an kann er jedem, der ihn anrufen möchte, diese Nummer mitteilen und ist für andere unter der genannten Nummer erreichbar.

Die prinzipielle Funktionsweise eines STUN-Servers

Simple Traversal of User Datagram Protocol Through Network Address Translators ist ein Client-Server-Protokoll, das auf UDP basiert. Der STUN-Server wird von einem Client angesprochen und ermittelt, ob die IP-Adresse des Clients übersetzt wurde, welche öffentliche IP-Adresse der Client bekommen hat und welche Art von Network Address Translation stattgefunden hat. Auf eine STUN-Anfrage eines Clients antwortet der STUN-Server mit einem Antwort-Paket, das die öffentliche IP-Adresse und den Port des Clients beinhaltet, die der Server als Absender sieht.

Verwendet ein Client beispielsweise die private Adresse 192.168.1.100 und Port 8850 sendet er eine STUN-Paket mit dieser Absenderadresse an den STUN-Server. Der Internetaccess-Router übersetzt diese Adresse in eine öffentliche Adresse, beispielsweise die Adresse 145.100.10.200 und einen unter Umständen abweichenden Port 8890. Der STUN-Server sieht die Anfrage des Clients unter der Adresse 145.100.10.200:8890 und teilt diese dem Client als Information innerhalb des STUN-Antwortpakets mit.

Der Client kennt nun seine Kombination aus öffentlicher IP-Adresse und Port, unter der er im Internet erreichbar ist. Er kann diese Kombination über SIP anderen mitteilen. Aufgrund der vorhergehenden Kommunikation mit dem STUN-Server ist ein PORT im Router geöffnet, über den ankommende Datenpakete an den Client weitergeleitet werden. Welcher externe Kommunikationspartner den Port nutzen darf, hängt unter anderem von der verwendeten Art der Network Address Translation ab. Auch diese kann der STUN-Server ermitteln.

Die Bedeutung des STUN-Servers für die VoIP-Telefonie

Moderne VoIP-Telefonie basiert meist auf SIP und RTP. SIP setzt voraus, dass die Kommunikationspartner über öffentliche IP-Adressen erreichbar sind. Der eigentliche Audiostream wird direkt Ende-zu-Ende zwischen den Clients per RTP übertragen.

Befinden sich die SIP-Telefone hinter einer NAT-Grenze, sind sie von außen nur über ihre öffentlichen Adressen erreichbar, wenn der entsprechende Port am Router geöffnet ist und zuvor eine ausgehende Verbindung bestand. Die Verwendung dynamischer Ports kann zu zusätzlichen Problemen und zur Blockierung der Verbindung führen. SIP-Provider betreiben daher einen STUN-Server, der die öffentlichen IP-Adressen und genutzten Ports sowie das verwendete Network-Address-Translation-Verfahren ermittelt.

Der STUN-Server wird dabei von einem IP-Telefon kontaktiert, noch bevor sich das IP-Telefon bei einem Signalisierungsserver registriert. Erst wenn das IP-Telefon weiß, ob es sich hinter einem NAT-Gerät befindet, welches seine externe Adresse ist und wie eingehende UDP-Verbindungen durch die verwendete Art der Network Address Translation blockiert werden, findet die Registrierung per SIP-Nachricht statt. Nach der Registrierung ist das IP-Telefon für den direkten Verbindungsaufbau und die Übertragung des Medienstroms unter der mitgeteilten Kombination aus IP-Adresse und Port von anderen IP-Telefonen über das Internet erreichbar.

Kommentare werden geladen....

Kommentar zu diesem Artikel

Der Kommentar wird durch einen Redakteur geprüft und in Kürze freigeschaltet.

Anonym mitdiskutieren oder einloggen Anmelden

Avatar
Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
  1. Avatar
    Avatar
    Bearbeitet von am
    Bearbeitet von am
    1. Avatar
      Avatar
      Bearbeitet von am
      Bearbeitet von am

Kommentare werden geladen....

Kommentar melden

Melden Sie diesen Kommentar, wenn dieser nicht den Richtlinien entspricht.

Kommentar Freigeben

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Freigabe entfernen

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Aktuelle Beiträge zu diesem Thema

VR- und Datenbrillen als Herausforderung für die IT

Wearable Computing im Unternehmen

VR- und Datenbrillen als Herausforderung für die IT

Angesichts des wachsenden Einsatzes von VR- und Datenbrillen in Unternehmen unterschiedlichster Größe, stellt sich den Unternehmen immer häufiger die Frage, welche Herausforderungen der Einsatz der Geräteklasse „Wearables“ an die IT-Abteilung und die IT-Infrastruktur stellt und wie diesen begegnet werden kann. lesen

Achtung! Der virtuelle Cisco-Switch hat Löcher!

Ist das Netzwerk-Design mangelhaft, droht Manipulation

Achtung! Der virtuelle Cisco-Switch hat Löcher!

Firmen, die den virtuellen Switch „Cisco Nexus 1000V“ einsetzen, sollten wachsam sein! Denn dieser hat viele Sicherheitslücken, durch die Angriffe auf das Netzwerk möglich sind. Die Bugs betreffen vor allem Enterprise-Kunden, aber auch den Mittelstand. Für sie gilt: Schnell das Netzwerk-Design überprüfen! lesen

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Kontaktieren Sie uns über: support.vogel.de/ (ID: 46334679 / Definitionen)