Aus METROPOLIS
Eine bestehende SIM an das Metropolis-GRID anschließen
Bevor du deine Anpassungsarbeiten zum Anschluss deiner SIM an Metropolis beginnst, solltest du sicherstellen, dass du die neueste freigegebene OpenSim-Version (Link weiter unten) installiert hast. Dies ist zwingend notwendig, weil ansonsten das HyperGrid und die Inventory-Verwaltung nicht richtig funktionieren.
Download aktuelles OpenSim-Release / Metropolis-Edition
Schritt 1:Konnektierbarkeit überprüfen
Der Anschluss deiner SIM an ein GRID setzt eine bidirektionale Kommunikation voraus. Das heißt, dass dein Rechner von den Metropolis-Servern erreichbar sein muss. Dies ist nicht unbedingt Standard, sodass wir hier evtl. noch Hand anlegen müssen.
Zunächst müssen wir überprüfen, ob deinem Router von deinem Internet-Provider eine dedizierte IP-Adresse zugewiesen wurde. Falls dies der Fall ist, müssen wir keine weiteren Anpassungen vornehmen.
Um eine dedizierte IP-Adresse festzustellen, gehen wir folgendermassen vor:
- Klicke hier auf das Tool zur Ermittlung der externen IP-Adresse
- notiere dir die angezeigte IP-Adresse
- nun schalte deinen Router am Netzschalter aus, warte einige Sekunden und schalte ihn wieder ein
- nun starte das Tool zur Ermittlung der externen IP-Adresse nochmals
Wenn die zuerst angezeigte IP-Adresse mit der zweiten IP-Adresse übereinstimmt, wurde von deinem Provider eine feste IP-Adresse zugewiesen. In diesem Fall kannst du bei NAT-Umleitung fortfahren.
Falls keine feste IP-Adresse zugewiesen wurde, müssen wir zu einem anderen Werkzeug greifen: Der Verwendung von dynamischen IP-Adressen auch . Hierzu wird bei einem DNS-Provider (z.b. DynDNS) eine kostenlose Domain für die Zuweisung dynamischer IP-Adressen registriert. Anschließend musst du auf deinem Rechner ein kleines Dienstprogramm installieren (welches du ebenfalls dort bekommst), damit dein Rechner den dynDNS-Services bekanntgemacht werden kann. Dein Rechner bekommt dann automatisch eine dynamische IP-Adresse (also ständig wechselnd) zugewiesen. Der Clou besteht darin, dass der von dir registrierte Domain-Name immer gleich bleibt, und nur die IP-Adresse wechselt. Wenn wir nun statt der IP-Adresse den Domain-Namen verwenden, ist dein Rechner immer über das Internet identifizierbar und erreichbar. Damit ist die Connectierbarkeit zu den Metropolis-Servern hergestellt.
Schritt 2: NAT-Umleitung / Port-Umleitung am Router
Nun kommen (entweder über feste oder dynamische IP-Adresse) die Anfragen bei deinem Router an, aber dein SIM-Rechner weiss noch nichts davon. Deswegen müssen wir den Router so einstellen, dass Anfragen aus dem Web an die interne IP-Adresse (normalerweise 192.168.nnn.nnn) deines SIM-Rechners weitergeleitet werden.
Fast alle Router verfügen über eine Setup-Funktion, welche über einen Browser aufgerufen werden kann. Schaue bitte in dein Router-Handbuch, wie du dieses Setup aufrufen kannst. Die sicherste Methode zur Übertragung der GRID-Anfragen an deinen SIM-Rechner ist das Port-Forwarding oder auch Port-Umleitung genannt.
Gehe hierzu in das Setup-Programm des Routers und trage zu den folgenden Ports deine interne IP-Adresse ein:
- UDP + TCP : 9000 (erste Region)
- UDP + TCP : 9001 (zweite Region)
- UDP + TCO : 900x (jede weitere Region)
Falls die Port-Umleitung nicht funktionieren sollte, so kannst du auch ALLE ANFRAGEN aus dem Internet an deinen SIM-Rechner weiterleiten lassen. Stelle hierzu das NAT auf deine interne IP-Adresse um und aktiviere diesen Dienst.
Weitere Informationen zu dem Thema Connectivität (speziell für Linux-User) finden sich auf der OpenSim-Homepage.
Schritt 3: Einen freien Platz im Metropolis-GRID suchen
Die Regionen einer SIM sind bestimmten X/Y-Koordinaten zugeordnet. Hier sind in deinen Regions-XML-Dateien bereits Koordinaten hinterlegt. Diese Koordinaten müssen nun an das Metropolis-GRID angepasst werden. Die Koordinaten, welche du deinen Regionen gibst, dürfen nicht bereits belegt worden sein. Anderenfalls kannst du deine Regionen nicht am GRID anmelden.
Zur Überprüfung der freien Koordinaten öffne das Koordinaten-Raster. Dies ist eine grafische Karte des Metropolis-GRIDs. Die bereits belegten Koordinaten sind mit einem roten Quadrat gekennzeichnet und die freien Koordinaten sind in Grün dargestellt. Nähere Informationen zu diesen Koordinaten erhältst du, wenn du den Mauszeiger über den jeweiligen Quadranten bewegst. Bei bereits vergebenen Regionskoordinaten kann das Kästchen auch angeklickt werden. Es öffnet sich dann ein weiteres Fenster mit näheren Informationen zu den Regionen.
Suche dir nun eine SIM-Koordinate (X- und Y-Achse) heraus. Wir brauchen sie später noch.
Eine tabellarische Aufstellung der bereits vergebenen Koordinaten findest du hier.
Koordinaten nahe an CenterWorld (7000:7000) sollten nur mit Regionen belegt werden, die permanent verfügbar sind. Dies verfolgt den Zweck, dass Neuankömmlinge ein geschlossenes Bild von Metropolis erhalten und nicht gleich bei den ersten Regionen auf nicht konnektierten Content stoßen.
Schritt 4: Avatar registrieren
Falls du noch keinen Avatar auf Metropolis registriert hast, so kannst du dich hier registrieren. Die Daten des Avatars benötigen wir später noch bei der Erstellung der Regions-XML.
Weiterhin werden die Metropolis-Einstellungen für deinen Viewer erläutert.
Schritt 5: OpenSim.ini anpassen
Damit deine SIM die Verbindung mit den Metropolis-Servern herstellen kann, müssen in der Datei OpenSim.ini (welche sich in der bin-Directory befindet), folgende Änderungen vorgenommen werden.
In der Rubrik [Startup]
gridmode = true hypergrid = true asset_database = "grid" ServiceConnectors = "OpenSim.Server.Handlers.dll:AssetServiceConnector"
In der Rubrik [Communications]
InterregionComms = "RESTComms"
In der Rubrik [Network]
port = 8003 grid_server_url = "http://www.hypergrid.org:8003/" grid_send_key = "null" grid_recv_key = "null" user_server_url = "http://www.hypergrid.org:8002/" user_send_key = "null" user_recv_key = "null" asset_server_url = "http://www.hypergrid.org:8003/" inventory_server_url = "http://www.hypergrid.org:8003/" messaging_server_url = "http://www.hypergrid.org:8006/" ;shard = "OpenSim" user_agent = "OpenSim LSL (Mozilla Compatible)"
In der Rubrik [Groups]
Enabled = true Module = XmlRpcGroups XmlRpcServiceURL = http://metropolis.hypergrid.org/groups/xmlrpc.php ;XmlRpcServiceReadKey = "1234" ;XmlRpcServiceWriteKey = "1234" XmlRpcMessagingEnabled = true XmlRpcNoticesEnabled = true XmlRpcDebugEnabled = true ; XmlRpcDisableKeepAlive = false
In der Rubrik [Architecture]
;Include-Standalone = "config-include/Standalone.ini" ;Include-HGStandalone = "config-include/StandaloneHypergrid.ini" ;Include-Grid = "config-include/Grid.ini" Include-HGGrid = "config-include/GridHypergrid.ini"
Schritt 6: Änderungen an der GridCommon.ini
Die Datei GridCommon.ini befindet sich in der Directory ./bin/config-include und sollte wie folgt geändert werden:
[AssetService] AssetServerURI = "http://www.hypergrid.org:8003" [InventoryService] InventoryServerURI = "http://www.hypergrid.org:8003" [GridService] GridServerURI = "http://www.hypergrid.org:8003"
Falls die Datei nicht vorhanden ist, bitte die Datei GridCommon.ini.example auf GridCommon.ini kopieren und die obigen Einstellungen vornehmen.
Schritt 7: Änderungen an den Regions-Dateien
Die Regionsdateien befinden sich in der Directory ./bin/Regions und sind im XML-Format hinterlegt. Nachfolgend der Inhalt einer typischen Regions-XML-Datei:
<Root> <Config sim_UUID="4dcd390f-b3ed-42bf-a3f0-f2a90fb689e9" sim_name="RegionsName" sim_location_x="7000" sim_location_y="7000" internal_ip_address="0.0.0.0" internal_ip_port="9000" allow_alternate_ports="false" external_host_name="HostName" master_avatar_first="FirstName" master_avatar_last="LastName" master_avatar_pass="Password" master_avatar_uuid="00000000-0000-0000-0000-000000000000" estate_covanant_uuid="00000000-0000-0000-0000-000000000000" lastmap_uuid="015b4104-1f4f-4c97-b98d-786434da0fce" lastmap_refresh="1247990744" nonphysical_prim_max="0" physical_prim_max="0" clamp_prim_size="false" object_capacity="0" scope_id="00000000-0000-0000-0000-000000000000" /> </Root>
Folgende Änderungen müssen an jeder Regionsdatei vorgenommen werden:
- sim_name = der von dir gewünschte Regionsname im Metropolis-GRID
- sim_location_x = die X-Koordinate des von dir gewünschten freien Platzes im Metropolis-GRID
- sim_location_y = die Y-Koordinate des von dir gewünschten freien Platzes im Metropolis-GRID
- internal_ip_port = dieser Port muss mit einem am Router weitergeleiteten Ports übereinstimmen
- external_host_name = hier ist der dynDNS-Domainname (ohne http://) oder die IP-Nummer einzutragen
- master_avatar_first = hier den Vornamen deines registrierten Metropolis-Avatars eintragen
- master_avatar_last = hier den Nachnamen deines registrierten Metropolis-Avatars eintragen
- master_avatar_pass = hier das Passwort deines registrierten Metropolis-Avatars eintragen
Schritt 8: Starten des Simulators
Nun sollten wir in der Lage sein, unseren Simulator zu starten.
Windows
Einfach auf das OpenSim-Icon klicken. Es öffnet sich ein Console-Fenster. Zunächst werden alle Komponenten des OpenSim geladen und hochgefahren. Dieses Fenster nicht schließen, solange deine Regionen im GRID verfügbar sein sollen. ACHTUNG: nach dem Schließen des OpenSim-Fensters sind die Regionen nicht mehr erreichbar!
!!! ACHTUNG bei 64-bit Windows-Versionen (z.B. Windows 7) !!! Bei 64-bit Windows-Systemen muss anstatt der OpenSim.exe die Datei OpenSim.32BitLaunch.exe gestartet werden!
Linux
Unter Linux gibt es eine elegante Variante, um den Simulator ständig zu überprüfen und nach einem Crash automatisch wieder zu starten. Hierzu wird das Tool screen eingesetzt. Falls es noch nicht auf deinem Rechner verfügbar ist, kannst du es über YaST oder zypper nach-installieren.
#!/bin/sh
while :
do
cd /{pfad zu deiner bin-Directory, z.B. /opt/opensim/bin}
running=`ps ax|grep OpenSim.exe|grep -v grep`
if [ -z "$running" ]; then
# The Log Entry
TIME="OpenSim Down, Restarting: `date +"%A, %B %d - %r"`"
echo $TIME >>/{pfad zu deiner bin-Directory}/os.log
cd /{pfad zu deiner bin-Directory, z.B. /opt/opensim/bin}
screen -fa -S OS -d -U -m mono OpenSim.exe -gui=true -noverbose=true
fi
sleep 120
done
Das vorstehende Script kopieren und in einer Datei z.B. '/usr/bin/opensim.sh' speichern. Nachfolgend dieses Script mit 'chmod 777 opensim.sh' ausführbar machen. Das Shell-Script wird dann durch den Aufruf 'opensim.sh' gestartet.
Der Simulator wird mit diesem Script in einer virtuellen Session geladen. Diese Session läuft permanent im Hintergrund. Um diese Session wieder auf den Bildschirm zu holen, wird 'screen -r OS' eingegeben. Um diese Session wieder in den Hintergrund zu schicken, halte die CTRL-Taste gedrückt und drücke nacheinander "a" und "d". Dann "verschwindet" die Session wieder im Hintergrund.
Der Simulator wird alle 2 Minuten überprüft und ggf. neu gestartet. Zu den Crashs gibt es eine Logdatei 'os.log', welche sich in der bin-Directory befindet.
Probleme?
Bei Problemen mit deiner SIM-Anbindung an Metropolis schaue im Forum nach oder kontaktiere den Webmaster.
