Héberger son propre serveur Planet




A. Conditions pour ouvrir un serveur Planet

Dans quels cas pouvez-vous héberger votre propre serveur planet ?

1. vous souhaitez une planète privée pour y construire seul

Dans ce cas, installez le serveur planet sur votre PC. Vous pouvez y construire seul, même sans connexion internet. Vous pouvez apporter vos constructions plus tard via votre inventaire sur les planètes publiques. Connectez-vous avec planet://127.0.0.1/#ma_planete et au groupe avec http://127.0.0.1

2. vous souhaitez créer une planète publique

2.1 Vous n'aurez pas de contrôle

Il faut savoir que les planètes sont à accès public, c'est-à-dire qu'il ne vous est pas possible de contrôler qui vient construire sur votre serveur en particulier. Avoir votre propre planète ne vous protégera pas d'avoir des voisins indésirables à côté de votre terrain.

Ce choix a été fait afin que Planet offre aux joueurs un grand univers neutre et uniforme où ils peuvent construire, et non pas une liste de planètes avec chacune leur propres règles dictées par leurs administrateurs.

Nous souhaitons que le joueur ne doive pas trop se soucier sur quel serveur il est. Tous les terrains publics de tous les serveurs apparaissent mélangés dans la liste de recherche sans indiquer sur quel serveur ils sont.

2.2 d'abord constituer un groupe d'amis, pas après

Nous souhaitons vous mettre en garde sur le fait qu'il est très possible que votre serveur n'ait pas de visiteurs, même si vous construisez vous-même un superbe décor.

Si vous êtes seul, de grâce, ne vous lancez pas dans votre propre planète. Les serveurs sont conçus pour héberger jusqu'à 1000 personnes, si vous êtes seul c'est beaucoup trop grand pour vous.

N'espérez pas attirer des gens sur votre terrain en ayant votre propre planète, c'est l'inverse qui se passera : vous allez avoir encore moins de monde qu'en restant sur l'une des autres planètes qui a déjà ses habitués. Ce qu'il faut faire c'est d'abord vous constituer un groupe d'amis qui construisent depuis plusieurs semaines sur les autres serveurs planet et qui sont d'accord pour vous suivre pour un projet en commun.

2.3 En ligne 24h/24 7J/7 pour plusieurs mois

Nous souhaitons que les planètes publiques restent en ligne 24h/24, pour une longue durée (plusieurs mois), afin d'offrir aux joueurs des terrains où ils peuvent construire sans crainte de perdre leur travail si le serveur ferme.

Par conséquent pour ouvrir une planète publique vous devez louer un serveur dédié chez un fournisseur internet. Chaque serveur dispose de statistiques de fiabilité que les joueurs peuvent consulter.

2.4 les sauvegardes

La gestion du serveur apporte une corvée, celle de prendre régulièrement (chaque jour ou au minimum chaque semaine) une sauvegarde de la base de donnée, afin qu'en cas de panne de votre machine vous puissiez repartir d'une installation neuve et de votre dernière sauvegarde, cela afin d'éviter les pertes de créations et les utilisateurs fâchés.

Il est très souhaitable d'installer un job automatique qui prend des sauvegardes journalières de la base de donnée vers un autre serveur dans un autre batiment. Si vous n'avez pas les connaissances en informatique pour garantir une fiabilité à ce niveau, de grâce, ne vous lancez pas dans votre propre planète publique.

2.5 indépendance de votre serveur

Votre serveur est totalement indépendant et contient tout ce qu'il faut pour faire fonctionner votre planète. Si le site Planet Samuro fermait un jour votre serveur continuera à fonctionner.

2.6 créez un site web

Pour faire venir des visiteurs sur votre planète nous vous conseillons de créer votre propre site web avec plein de belles photos.


B. Louer un serveur dédié

Vous devez louer un serveur dédié chez un fournisseur internet.

Voici la configuration minimale requise : processeur i3, 8 GB RAM, disque dur SSD de 240 GB, accès réseau internet à 100 Mb/s.

Choisir un disque dur SSD (et non HDD !) est recommandé sinon vous allez avoir des délais, par exemple une attente de 0.25 seconde ou plus lors du clic sur une chaise avant de vous asseoir. Si malgré tout vous n'avez pu avoir qu'un disque HDD, nous vous conseillons de le défragmenter au moins 1 fois par semaine, cela aide un peu.

Pour faire tourner le serveur Planet (qui est un logiciel Windows) vous avez le choix entre :

Distribution Windows

Vous pouvez vous connecter à votre serveur à l'aide du bureau à distance Windows.

Pour partager un dossier sur votre PC, utilisez la commande MS-DOS :

  net use z: \\TSCLIENT\C

Pour démarrer le gestionnaire de tâches, tapez :

  taskmgr.exe

Pour stopper le serveur planet, sélectionnez-le dans le gestionnaire de tâches et cliquez 'fin de tâche'.

Pour ouvrir les ports UDP 13000 et TCP 80, ouvrez une boite DOS en privilège administrateur et tapez :

  netsh advfirewall firewall add rule name="UDP Port 13000" dir=in action=allow protocol=UDP localport=13000
  netsh advfirewall firewall add rule name="TCP Port 80" dir=in action=allow protocol=TCP localport=80

Distribution Linux

Voici quelques infos pour les spécialistes qui veulent se risquer à installer Planet sur Linux.
Nous avons testé avec la distribution Ubuntu Server 18.04

Il faut noter que faire tourner des programmes Windows avec Wine comporte toujours des risques de problèmes de compatibilité. Nous avons testé avec la version Wine 7.0 et tout semble bien fonctionner.

Pour se connecter depuis votre PC Windows :

  ssh -o ServerAliveInterval=30  [email protected]

Créer un répertoire planet

  mkdir planet

Aller dans le répertoire planet

  cd /planet

Copier planet_server.exe depuis votre PC vers le serveur

  scp planet_server.exe [email protected]:/root/planet/planet_server.exe

Pour installer Wine 7.0,
voir les instructions sur le site https://wiki.winehq.org/Download

Démarrer le serveur planet en arrière-plan
pour info, le nohup sert à ce que linux n'arrête pas planet lorsque vous fermez votre session, le & sert à lancer en arrière-plan. Il est nécessaire de lancer planet avec les droits 'root' sinon il n'a pas accès au port TCP 80 et le site web ne fonctionne pas.

  nohup wine planet_server.exe &

Voir les processus qui tournent

  ps -e

Stopper le processus planet

  kill 4566  (remplacer 4566 par le PID du process planet)


C. le logiciel Planet Server

Le logiciel Planet Serveur tourne sous Windows. Il supporte un maximum de 1000 utilisateurs connectés et a besoin d'environ 50 GB de disque dur pour stocker les créations 3D des utilisateurs.

Au premier démarrage le logiciel crée une grande planète avec 90% d'océans et 10% de terrains vides constructibles composés d'îles de position et de taille aléatoires. Pendant qu'il fait jour d'un côté de la planète il fait nuit de l'autre côté. Il faut 20 minutes en volant pour en faire le tour.

Les utilisateurs se connectent au serveur d'une part via le port UDP 13000 avec le logiciel planet, et d'autre part via le port TCP 80 avec un navigateur pour accéder au groupe, au manuel d'aide, au forum de messages, et au mini-chat.


D. Comment installer le logiciel Planet Server

Pour obtenir le logiciel Planet Serveur, prenez une copie de planet.exe (qui se trouve normalement sur votre disque dur si vous avez installé le logiciel planet), et renommez simplement planet.exe en planet_server.exe

Créez un dossier sur le disque dur de votre serveur, déposez-y planet_server.exe et démarrez-le.

Ouvrez les ports UDP 13000 et TCP 80 pour que votre serveur soit accessible en public sur internet. Pour tester, donnez l'IP de votre serveur à un ami pour qu'il puisse s'y connecter avec le logiciel planet via un lien planet://xxx.xxx.xxx.xxx ou via un navigateur internet en donnant un lien http://xxx.xxx.xxx.xxx

Base de donnée

Le serveur va créer une base de donnée "planet_server_database.db" qui contient l'entiereté du monde 3D et des groupes. Le fichier base de donnée est toujours bloqué vu qu'il est modifié en continu. Il n'est pas possible d'en prendre une copie, c'est normal.

Toutes les nuits à 5h du matin, le serveur crée un fichier "planet_server_database.db.BACKUP" qui est une copie de la base de donnée. La copie précédente est renomée en "planet_server_database.db.OLD-BACKUP". Vous avez donc à tout moment 3 fichiers :

planet_server_database.db            : la database active (bloquée)
planet_server_database.db.BACKUP     : la copie du jour précédent
planet_server_database.db.OLD-BACKUP : la copie d'il y a 2 jours.

Il est de votre responsabilité de prendre régulièrement une copie des fichiers de backup. Suite à une réinstallation, renommez simplement le fichier backup le plus récent en "planet_server_database.db" pour qu'il redevienne la base de donnée active.

Il est possible, via un fichier planet_server.ini, de spécifier un dossier où le serveur dépose les fichiers de backup :

  # planet_server.ini
  [settings]
  backup_folder = e:/backup/         # le chemin soit se terminer par un /

Defragmentation

Il est possible qu'au démarrage du serveur, vous ne puissiez pas vous y connecter tout de suite. Si vous voyez un fichier "planet_server_database.db.DFRG" cela signifie que le serveur est en train de défragmenter la base de donnée. Il faut alors patienter entre 5 et 15 minutes.

Double Démarrage

Si vous démarrez planet_server.exe alors qu'il tourne déjà, le deuxième planet_server.exe ne va pas se lancer.

Que faire en cas d'erreur

Si le serveur s'arrête avec une fenêtre d'erreur, vous pouvez essayer de le relancer. L'erreur est enregistrée dans un fichier CRASH-REPORT.TXT que vous devriez envoyer à [email protected] pour correction.

Administration

Le ou les gestionnaires du serveur peuvent entrer leur nom d'avatar dans le fichier planet_server.ini, comme ceci :

  # planet_server.ini
  [settings]

  # administrateurs qui peuvent changer les couleurs et bannir un domaine
  admin   = Samuro
  admin_2 = Ingrid
  admin_3 = Ursula

Ils obtiennent alors accès, dans domaine info, à un bouton pour choisir les couleurs standard de Planet, ainsi qu'à un autre bouton pour bannir un domaine (dans le cas très rare où le domaine ou son groupe comporterait du contenu illégal).

Backup Manuel

Une ou plusieurs personnes de confiance peuvent être autorisées à prendre manuellement une copie de la base de donnée serveur, cela afin de permettre un partage des responsabilités et une continuation du serveur en cas de maladie ou de décès.

Pour cela, entrer les noms d'avatars dans le fichier planet_server.ini, comme ceci :

  # planet_server.ini
  [settings]

  # avatars pouvant prendre une copie de la database manuellement avec la touche F10
  backup_op   = Samuro
  backup_op_2 = Ingrid
  backup_op_3 = Ursula

Pour prendre une copie de la base de donnée serveur, il faut se logger avec son avatar sur le bon serveur et appuyer sur la touche F10. Un fichier est alors copié sur le disque dur dans le répertoire de Planet.

Ce n'est pas une bonne idée d'ouvrir en même temps plusieurs copies de la même planète : la téléportation va alors vous envoyer sur l'un des serveurs au hasard.

Récapitulation des options du fichier planet_server.ini

  # planet_server.ini
  [settings]

  # administrateurs qui peuvent changer les couleurs et bannir un domaine
  admin   = Samuro                 
  admin_2 = Ingrid
  admin_3 = Ursula

  # chemin sur le serveur où les copies de la database sont déplacés
  backup_folder = e:/backup/         # le chemin soit se terminer par un /

  # avatars pouvant prendre une copie de la database manuellement avec la touche F10
  backup_op   = Samuro
  backup_op_2 = Ingrid
  backup_op_3 = Ursula


Annexe: apprendre l'IPv6 sous Windows

Dans le menu Démarrer de Windows, choisissez "Windows PowerShell(admin)" et cliquez Oui.

Tapez la commande suivante :

netsh interface ipv6 show addresses

Une liste telle que celle-ci apparait :

    Interface 20 : Ethernet 2

    Addr Type  État DAD    Vie valide Pers. Fav.   Adresse
    ---------  ----------- ---------- ----------   ------------------------
    Dhcp       Préféré            55s        25s   2a02:2788:764:ac9:213:3bff:fefb:63ff
    Temporaire Préféré        4d3h37m 4d3h35m32s   2a02:2788:764:ac9:d94c:d1b5:7c35:f84
    Public     Préféré    13d23h59m43s 6d23h59m43s 2a02:2788:764:ac9:e591:aa85:3fea:4081
    Autre      Préféré       infinite   infinite   fe80::a829:560b:6cb8:4944%20

La première chose à repérer c'est le numéro de l'interface, ici 20. Ce numéro représente la carte réseau qui sert à aller sur internet, il peut y en avoir plusieurs.

Ensuite, vous voyez qu'il y a 4 adresses IPv6. Chaque adresse est composée de 8 groupes de chiffres séparés par un double-point. Celle commençant par fe80 ne nous intéresse pas car elle est valide uniquement sur le LAN local, elle ne peut pas traverser votre routeur.

Les 3 autres adresses ont une durée de vie limitée : souvent entre 1 minute et 24 heures. C'est-à-dire que Windows les change souvent. Si vous surfez sur internet, Windows va utiliser l'IPv6 temporaire.

Si vous souhaitez installer un serveur sur votre PC, aucune de ces adresses ne convient, il vous faut en créer une nouvelle qui ne change pas.

Vous n'êtes pas totalement libre de choisir l'IPv6 que vous voulez. Votre fournisseur internet vous fournit toujours les 4 premiers groupes de chiffres, donc ici

2a02:2788:764:ac9:

Vous voyez que ce préfixe est commun aux 3 adresses ci-dessus.

Certains routeurs (ex: sfr) fixent automatiquement les 7 premiers groupes de chiffres. La marche à suivre exacte peut donc varier et est à vérifier dans votre routeur.

Ici nous allons vous montrer comment ajouter une Ipv6 simplement. Vous prenez le préfixe et vous ajoutez un suffixe 1, cela donne :

2a02:2788:764:ac9::1

Le ::1 est une abbréviation pour :0:0:0:1

Pour créer cette adresse, tapez :

netsh interface ipv6 add address 20 2a02:2788:764:ac9::1

Remarquez que le 20 est le numéro de l'interface.

Si vous retapez

netsh interface ipv6 show addresses

Vous allez voir cette adresse ajoutée avec une durée de vie infinie :

    Addr Type  État DAD    Vie valide Pers. Fav.   Adresse
    ---------  ----------- ---------- ----------   ------------------------
    Manuel     Préféré       infinite   infinite   2a02:2788:764:ac9::1
    Dhcp       Préféré            58s        28s   2a02:2788:764:ac9:213:3bff:fefb:63ff
    Temporaire Préféré     4d3h35m33s  4d3h34m5s   2a02:2788:764:ac9:d94c:d1b5:7c35:f84
    Public     Préféré    13d23h59m46s 6d23h59m46s 2a02:2788:764:ac9:e591:aa85:3fea:4081
    Autre      Préféré       infinite   infinite   fe80::a829:560b:6cb8:4944%20

Si vous vous êtes trompé, vous pouvez effacer la ligne en retapant la commande ci-dessus mais en remplaçant add par delete.

Pour se connecter à planet, utilisez alors le lien :

planet://[2a02:2788:764:ac9::1]

Si cela ne fonctionne pas, il faut également ouvrir le parefeu IPv6 sur votre routeur, ou bien sur certains routeurs, rediriger les appels entrants des ports UDP 13000 et TCP 80 vers l'IPv6 de votre PC.

N'utilisez pas les autres IPv6 à durée de vie temporaire comme lien Planet. Cela fonctionne au début et ces IPv6 vont alors être enregistrées dans le système Planet. Mais quand la durée de vie de ces adresses aura expiré vos utilisateurs vont se plaindre que votre serveur n'est plus joignable par téléportation, et ces adresses expirées vont rester dans le système Planet jusqu'à une semaine.