Two Ways to Do It (Self-Host vs Free Hosting)
Before anything else, decide which approach suits you:
Self-hosting means running the server on a computer you already own, whether that is a gaming PC, an old laptop, or a Raspberry Pi. The hardware is free since you already have it. The trade-offs are that the server only runs when the computer is on, your home internet connection is shared between you and the server, and you expose your home IP address to every player who connects.
Free hosting means using a service that runs the server on their hardware at no cost to you. The server stays online around the clock regardless of whether your PC is on. Players connect to the hosting provider's IP, not yours. The trade-offs are that you depend on another service, and truly free options sometimes have limitations on uptime or resources.
For playing casually with friends where you all schedule sessions in advance, self-hosting is perfectly reasonable. For a server that players expect to be able to join at any time, free hosting is the better path.
Self-Hosting: What You Need
To self-host a Minecraft server you need:
- A computer to run the server on - a dedicated machine is ideal so you are not competing with your own game client for RAM. An old desktop with 4+ GB RAM works well. If you play on the same machine, you need more: at least 8 GB total with 4 GB allocated to the server.
- Java - Minecraft Java Edition servers require Java 21 or later. Download it from adoptium.net if you do not already have it.
- The server JAR file - downloaded from minecraft.net (vanilla) or papermc.io (Paper, which is faster and more stable).
- A router you can configure - you will need to forward port 25565 to let players connect from outside your network.
- A static IP or dynamic DNS - your home IP address can change. Services like no-ip.com or DuckDNS let you point a hostname at your changing IP automatically.
Self-Hosting: Port Forwarding and Java Setup
Setting up Java is straightforward: download the installer from adoptium.net, run it, and follow the steps. Confirm the install worked by opening a terminal and running java -version. You should see something like openjdk 21.0.3.
Port forwarding requires accessing your router's admin panel. The exact steps vary by router model, but the general process is:
- Open a browser and go to your router's admin IP (usually
192.168.1.1or192.168.0.1). - Log in with your router's admin credentials (often printed on the router itself).
- Find the Port Forwarding section (sometimes under Advanced or NAT).
- Create a new rule: External port 25565, Internal IP (your computer's local IP), Internal port 25565, Protocol TCP.
Your computer's local IP is shown in your network settings. To find it on Windows: open a terminal and run ipconfig, then look for the IPv4 address of your network adapter. Assign your computer a static local IP in your router's DHCP settings so this address does not change.
Free Hosting: The Easier Path
If the port forwarding and Java setup above sounds like more work than you want to do, free hosting is your solution. Several platforms offer free Minecraft server hosting, each with different trade-offs:
- Aternos - free but queue-based. When no players are on, the server is offline. Your friends must wait in a queue to start it. Not suitable for a server that should always be available.
- Minehut - free tier with limited player slots and server RAM. The server sleeps when idle and takes time to wake up.
- NetSkyway - free slots on real hardware with no artificial sleep timers or player queues. The server runs continuously. Slots are requested via Discord.
The key differentiator is whether the server stays online when no players are on. Queue-based hosts make your friends wait; NetSkyway's hibernation system wakes the server sub-second when a player connects, rather than requiring a queue.
Getting a NetSkyway Server Step by Step
- Join the Discord server at discord.gg/QXKNwaWVJ2.
- Find the server request channel and request a Minecraft server slot. Mention the version you want (e.g. Paper 1.21.4) and approximately how many players will be on at once.
- Once your request is approved, you receive credentials for the NetSkyway panel at panel.netskyway.net.
- Log in and you will see your server. Press Start to boot it for the first time. The server generates a new world and starts up in about 30 seconds.
- The server address is shown in the panel. Share it with your friends and they can connect immediately.
You have full file access via SFTP and a browser-based console. Install plugins, upload a world, edit server.properties, or change the server version all from the panel. No command line experience needed for basic setup.
What to Configure Before Inviting Friends
Before you share the address, spend a few minutes on these basics:
- Set the MOTD in
server.propertiesvia the panel file editor. This is the description shown in the Minecraft server list. - Set max players with the
max-playersfield. Default is 20; set it to something that makes sense for your group. - Whitelist if you want to restrict who can join. Run
/whitelist onin the console, then add players with/whitelist add PlayerName. - Op yourself so you have admin controls. Run
/op YourUsernamein the console. - Set the difficulty with
/difficulty normalor whatever you prefer. Default is Easy.
Once those are done, your server is ready. Share the address with friends, have them add it to their Minecraft server list, and connect. With NetSkyway's hardware behind it, even a modded server will run smoothly.