Einen nicht registrierten Server betreiben
Es ist dringend empfohlen den Server zu testen, indem du ihn zuerst an einem der integrierten Verzeichnisse registrierst. So kannst du allgemeine Probleme beheben, bevor du den unregistrierten Modus nutzt.
Einrichten eines Servers hinter einem Heimrouter
Wenn du deinen Server zu Hause einrichtest, musst du wahrscheinlich einige Einstellungen in deinem Router/Firewall ändern:
Portweiterleitung
Normalerweise können Personen, die sich außerhalb deines Heimnetzwerks befinden, nichts innerhalb deines Netzwerks sehen. Damit sich externe Jamulus Clients mit deinem Server verbinden können, musst du in den Einstellungen deines Routers eine Portweiterleitung einrichten. Die genaue Einrichtung ist bei jedem Router anders. Hilfe findest du in der Dokumentation deines Routers oder unter portforward.com.
Hinweis: Der Standardport für Jamulus ist UDP (nicht TCP) Port 22124. In der Regel musst du den Port 22124 von außerhalb deines Netzwerks an den Port 22124 des Computers weiterleiten, auf dem der Server läuft.
Abrufen der öffentlichen IP
Damit andere sich mit deinem Server über das Internet verbinden können, gib ihnen deine öffentliche IP-Adresse. Du kannst deine aktuelle IP-Adresse mit Google ermitteln. Du selbst solltest dich über die lokale Netzwerkadresse des Computers verbinden, auf dem der Server läuft. Wenn du einen Client auf demselben Computer wie den Server betreibst, lautet die Adresse localhost
oder 127.0.0.1
.
Dynamisches DNS und warum du es wahrscheinlich brauchst
Wenn dir dein Internetanbieter keine statische IP-Adresse anbietet, kann sich deine IP immer wieder ändern. Deshalb ist ein “dynamisches DNS” sinnvoll, damit du eine Adresse, die du weitergeben kannst, erhält. Ein Anbieter für “dynamisches DNS” kann dir eine Domain zur Verfügung stellen. Du musst deine dynamische IP-Adresse bei dem Anbieter immer wieder aktualisieren. Möglicherweise unterstützt dein Router bestimmte Anbieter. Wenn das nicht der Fall ist, findest du bei deinem Provider Anweisungen zur Einrichtung eines dynamischen DNS-Clients.
Unterstützung von DNS SRV-Records
Jamulus-Clients unterstützen DNS SRV-Einträge (“Service”-Einträge). Wenn ein Client einen SRV-Eintrag findet, der mit dem im Fenster “Verbinden” angegebenen Domänennamen verknüpft ist, versucht er, eine Verbindung zu dem im SRV-Eintrag aufgeführten Host und Port herzustellen. Dieser Vorgang ähnelt der HTTP-Weiterleitung in einem Webbrowser, nur dass er zwischen Jamulus Clients und dem DNS-Server stattfindet. Der Jamulus Server ist an dieser Interaktion nicht beteiligt. Jamulus-Server warten lediglich auf Verbindungen an dem im SRV-Eintrag angegebenen Port.
Warum ist das hilfreich?
Ein Jamulus-Client kann sich mit einem Server zu einem nicht standardmäßigen Port verbinden, indem er den Port als Teil der Serveradresse angibt. Ein Server-Administrator möchte den Benutzern vielleicht eine einfache Adresse ohne die Port-Details geben, Jamulus aber trotzdem an einem nicht standardmäßigen Port bereitstellen. In diesem Fall können die Portinformationen aus einem SRV-Eintrag entnommen werden.
Eine Adresse, die in das Verbindungsfenster eingegeben wird, könnte so aussehen: jamulus.example.com
. Wenn ein SRV-Eintrag für diese DNS-Domain gefunden wird, versucht der Jamulus-Client, sich mit dem Server über den im SRV-Eintrag angegebenen Host:Port zu verbinden, z. B. jamulus.example.com:12345
.
Wenn auf dem DNS-Server keine SRV-Einträge gefunden werden, versucht der Client die Verbindung wie im Verbindungsfenster angegeben aufzubauen.
SRV-Einträge erstellen
SRV-Einträge werden vom Administrator der Domain erstellt, die für den Jamulus-Server genutzt wird. SRV-Einträge werden über das Verwaltungsportal (oder die API, falls verfügbar) des DNS-Hosters der Domain hinzugefügt. Das Format des SRV-Eintrags kann je nach DNS-Hosting-Dienst variieren, sieht aber in der Regel wie folgt aus.
_service._proto.name. ttl IN SRV Priorität Gewicht Port Ziel
# oder, ganauer
_jamulus._udp.example.com. 60 IN SRV 0 5 12345 jamulus.example.com
Hinweis: Du kannst mehrere Jamulus-Server auf verschiedenen Ports auf einem Server hosten, indem du jedem einen eigenen SRV-Eintrag gibst.
Anweisungen zum Erstellen eines SRV-Eintrags findest du in der Dokumentation deines DNS-Hosters.
Beispielanwendungsfall mit SRV-Einträgen
In diesem Beispiel wird davon ausgegangen, dass das DNS einen A- oder CNAME-Eintrag enthält, der zu server1.example.com
aufgelöst wird, auf dem drei Jamulus Server-Instanzen laufen, die jeweils auf einem der drei unten aufgeführten Ports lauschen.
Alternativ kann es sich bei server1.example.com
um einen Router, ein NAT-Gateway oder einen Load-Balancer handeln, der jeden der Ports an einen (oder mehrere) Jamulus-Backend-Server weiterleitet.
JAMULUS CLIENT | DNS SRV RECORD | JAMULUS SERVER |
---|---|---|
rock.example.com | _jamulus._udp.rock.example.com 300 IN SRV 0 5 22124 server1.example.com | server1.example.com:22124 |
jazz.example.com | _jamulus._udp.jazz.example.com 300 IN SRV 0 5 22125 server1.example.com | server1.example.com:22125 |
blues.example.com | _jamulus._udp.blues.example.com 300 IN SRV 0 5 22126 server1.example.com | server1.example.com:22126 |
Beachte, dass DNS keine Verbindungen weiterleitet. Es teilt dem Jamulus-Client lediglich mit, mit welchem öffentlichen Host:Port er sich verbinden soll.