Du multi Minecraft sans prise de tête avec ngrok

Du multi Minecraft sans prise de tête avec ngrok

Nous n'avons pas tous un serveur dédié Minecraft. Alors, lorsque l'on veut jouer en petit comité, se retrouver sur une map peut s'avérer assez prise de tête. Et si ça ne te concerne pas, car tu configures ton routeur en deux clicks, ce n'est pas forcement le cas de tes amis. Alors je vais te montrer comment simplifier tout ça à travers ce petit tuto.

Occasionnellement, l'installation d'Hamachi de LogMeIn peut dépanner pour rejoindre ses amis (ce n'est pas vraiment prévu pour ça, mais ça fait le travail), cependant installer un outil sur un OS propre ça peut en irriter plus d'un.

Je me suis alors mis en quête d'une solution plus simple et surtout plus propre, qui impliquerait seulement l'hébergeur de la partie.

Ngrok ? Un petit service pour creuser ton tunnel

Pour faire simple, cet outil gratuit va servir à faire des tunnels ou "tunneling" : pour faire simple, le "tunnel" va relier l'Internet à l'un des ports réseau de ton ordinateur. L'avantage c'est qu'il passera au travers de ton firewall, ton routeur, ta plage d'adressage de port et même Chuck Norris ! Bref, c'est totalement transparent. 

ngrok-principe

Ne t'inquiète pas, il ne va pas transformer ton ordinateur en gruyère en laissant tes ports ouverts partout (pas besoin de gommage !). En fermant l'invite de commande ou via le raccourci (Ctrl + C), Ngrok se fermera ainsi que le tunnel, sans laisser de trace. C'est donc une solution éphémère, propre (un fichier seulement), sans aucune autre configuration.

Pour nos amis les développeurs, Ngrok permet, entre autres, de partager le dossier www ou un virtualhost de ton WAMP.

Note que Ngrok n'est pas destiné à Minecraft. Il y a plein d'autres usages possibles. Des services similaires existent, tels que PageKite, permettent de faire plus ou moins la même chose. Cependant Ngrok me semble plus rapide et plus simple à déployer.

Voyons maintenant comment creuser notre petit tunnel !

Comment faire du multi Minecraft avec Ngrok ?

#1 Télécharger Ngrok

Évidemment, pour l'utiliser il faut déjà l'avoir. Tu peux le télécharger directement sur le site officiel de Ngork en choisissant une version compatible avec ton système. Il est d'ailleurs disponible pour la plupart des plateformes (Linux, Mac, Windows, FreeBSD, en 32 et 64 bits).

#2 S'inscrire au service Ngrok

Le service est gratuit, mais certaines commandes demandent la présence d'un "Tunnel Authtoken". Celui-ci te sera fourni une fois enregistré sur le site. Une fois récupéré, garde le au chaud pour la prochaine étape.

#3 L'invite de commande

Décompresse l'archive à la racine de ton système d'exploitation pour y accéder plus facilement. Ensuite, il faut mettre les mains dans l'invite de commande, mais rien de compliqué :

On déplace le répertoire courant de l'invite de commande sur le dossier contenant ngrok.exe (dans notre cas, sur c:\ngrok,).

cd c:\ngrok

On enregistre le Authtoken personnel, fourni à l'inscription (à ne lancer que la première fois pour enregistrer le token).

ngrok authtoken <VOTRE_AUTHTOKEN>

Enfin on exécute Ngrok avec deux paramètres : le protocole à utiliser (ici tcp) et le port.

ngrok tcp 25565

Bien entendu, si le serveur Minecraft utilise un autre port que celui par défaut (le port 25565), il faut adapter la commande en fonction !

Le résultat dans l'invite de commande :

ngrok-online

Au bout de la ligne Forwarding, Ngrok nous indique l'adresse et le port du tunnel. Ici 0.tcp.ngrok.io sur le port 19744. Ces deux informations permettront à tes amis de se connecter à ton serveur Minecraft (multijoueur -> direct connect -> puis taper 0.tcp.ngrok.io:19744 et valider).

Je n'ai pas testé sur une partie de plus de 3 joueurs, mais jusque là, je n'ai ressenti aucun lags significatif. Le seul petit inconvénient, c'est que l'adresse Ngrok change à chaque fois. En fouillant un peu la doc de Ngrok, ça se révèle tout de même possible, mais pas gratuitement.

Bon, comme la 1.9 de Minecraft est disponible je te laisse sur ces mots... j'ai un besoin pressant de cubisme ;)

À vos marques, craftez !

minecraft-avec-ngrok