Valentin Mugg

IM22A
26.03.2023

Informatik Mitel Schule

Minecraft Server

In meiner Freizeit game ich sehr gerne. Um auf dem aktuellsten Stand der Technik zu bleiben und mein Budget zu schonen habe ich immer meinen PC selbst umgebaut.
Nach dem ich das nun seit 4 Jahren so gemacht habe sind genug Teile angefallen um damit einen zweiten PC bauen zu können. Dieser PC steht nun im Keller direkt unter dem Router und lebt als Server aus Recyclingteilen weiter.

Ausgangslage

Bei der Hardware standen mir
• ein Ryzen 3 2200G mit 4 Kernen auf 3.5GHz
• 16GB Ram
• 940GB Festplatte
• ein 2.5Gbs und ein 1Gbs RJ45 Port
zur Verfügung. Das alles auf einem B550 Mainboard.

Ziel

Das primäre Ziel war es das meine Freunde und ich nicht ständig irgendwo einen Minecraft Server mieten müssen und wir durch diesen Server eine preiswerte Alternative bekommen.
Auf technischer Ebene heisst dass, das nicht nur innerhalb meines Heim-Netzwerkes sondern auch aus dem Internet auf den Server zugegriffen werden kann ohne dass dieser als Einfallstor für Hacker dient.

Umsetzung

Zuerst habe ich Ubuntu-Server installiert da es wie der Name schon sagt für Server gemacht ist. Darauf habe ich anschliessend LibVirt, QEMU, virt-manager und Gnome( Aufgrund eines Grafiktreiber-Bugs welcher ein Desktop Interface benötigte).
Alle diese Software habe ich benötigt, um KVMs(Kernel-based Virtual Maschines) zu erstellen auf der ich wiederum Ubuntu-Server installiert habe (diesmal ohne grafischen "Schnick-Schnack"). Auf dieser VM habe ich dann Minecraft Bukkit 1.19.1 installiert. Welche zu diesem Zeitpunkt allerdings noch nicht erreichbar war.
Der folgende Schritt hat am meisten Zeit in Anspruch genommen. Bei meiner finalen Lösung habe ich die Macvtap Funktion verwendet. Bei dieser greift das simulierte KVM BIOS direkt auf den Netzwerkadapter zu ohne den Umweg über den Hypervisor zu machen. Dadurch bekommt die VM mit ihrer eigenen MAC Adresse vom DHCP-Server eine eigene IP-Adresse.
Auf den Server zugreifen kann man jetzt via URL. Dies ist ein Dienst der Swisscom mit einer anschliessenden Port-Weiterleitung des Routers.

Ergebnis

Alle Spieler können ohne Probleme auf den Server verbinden und haben bessere Verbindungen als auf den zuvor extern gemieteten Server.
Es muss zwar vermutlich noch einiges gemacht werden. Dies betrifft allerdings Minecraft und nicht den Server selbst.

Erkenntisse

Ich habe viel über Linux Netzwerktechnik, Services und KVMs gelernt.