Skip to content

Network Compatibility Update

Choose a tag to compare

@FlaxiGG FlaxiGG released this 17 Jun 07:21

MinePanel v1.2.0 — Network Compatibility Update

This release focuses on improving MinePanel compatibility with VPS, local machines, Docker-based hosting, shared Minecraft hosting, Pterodactyl-style environments, NAT port mapping, and reverse proxy setups.

Highlights

  • Added safer host binding behavior

  • Added public IP detection and automatic fallback

  • Added host: auto support

  • Added fallback-to-any option

  • Improved compatibility with shared hosting providers

  • Improved reverse proxy support

  • Improved network error logging

  • Prevented plugin startup failure caused by invalid public IP binding


Network Binding Improvements

MinePanel now handles more hosting environments safely.

Supported host values:

web:
  host: 0.0.0.0
  port: 8080
  fallback-to-any: true

Supported examples:

  • 0.0.0.0 — listen on all interfaces

  • 127.0.0.1 — local only

  • localhost — normalized to 127.0.0.1

  • 192.168.x.x — local LAN IP

  • auto — auto-detects the best available LAN host

  • Public IPs — now detected and safely redirected to 0.0.0.0


Public IP Binding Fix

Fixed an issue where users could not start MinePanel when using a public IP address in config.yml.

Before

Using:

web:
  host: 131.196.x.x

could cause MinePanel to fail because public IP addresses are usually not available as local network interfaces inside Docker, shared hosting, or NAT-based hosting environments.

Now

MinePanel detects public IP addresses and automatically falls back to:

web:
  host: 0.0.0.0

This prevents startup failure and improves compatibility with hosting providers that generate or map public ports.


Safe Bind Fallback

Added a new option:

web:
  fallback-to-any: true

If MinePanel cannot bind to the configured host, it will automatically try:

0.0.0.0

If fallback is disabled, MinePanel will stop the web server startup safely and print a clear error message instead of crashing the plugin.


Improved Error Logging

Network errors are now easier to understand.

MinePanel now explains possible causes such as:

  • Docker container environment

  • Shared Minecraft hosting

  • Pterodactyl-style hosting

  • Public IP not assigned to the local machine

  • Port already in use

  • Reverse proxy or NAT port mapping setup

The log also recommends fixes such as:

  • Use host: 0.0.0.0

  • Use the port generated by your hosting provider

  • Configure port forwarding correctly

  • Use Nginx or Cloudflare Tunnel as a reverse proxy


Reverse Proxy Support

MinePanel continues to support reverse proxy environments through X-Forwarded-For detection.

This helps preserve the real client IP when running behind:

  • Nginx

  • Cloudflare Tunnel

  • Reverse proxy systems


Config Update

The config structure remains backward compatible.

Existing users do not need to recreate their config file.

New comments were added to explain:

  • When to use 0.0.0.0

  • When to use 127.0.0.1

  • Why public IPs should not be used directly

  • How fallback-to-any works


Compatibility Matrix

Config | Before | v1.2.0 -- | -- | -- host: 0.0.0.0 | Works | Works host: 127.0.0.1 | Works | Works host: localhost | Works | Works host: 192.168.x.x | Works | Works host: auto | Not supported | Supported host: public IP | Failed to bind | Warning + fallback Bind failure | Web server may fail | Safe fallback available fallback-to-any: false | Not available | Clear error, no fallback

Changed Files

  • config.yml

    • Added detailed host binding comments

    • Added fallback-to-any

    • Improved network configuration documentation

  • ServerWebAdmin.java

    • Removed old local-interface-only host validation

    • Added public IP detection

    • Added host: auto

    • Added safe bind fallback

    • Improved BindException and IOException logging


Recommended Hosting Config

For most users, especially shared hosting or Pterodactyl-style environments:

web:
  host: 0.0.0.0
  port: 8080
  fallback-to-any: true

Do not set host to your public IP address.

Use the port provided by your hosting panel or configure port forwarding through your hosting provider.


Thank you to the community members who helped test and report hosting compatibility issues.