I use Crafty Controller for Minecraft. I have a server running at 192.168.50.16:25540. I want it to resolve to minecraft.example.com. I have Nginx Proxy Manager setup for my domain and can access it from inside my network, but it’d be nice to be able to use a domain instead.

NPM only has options for http and https, so is this even possible using NPM?

EDIT: this is for only internal access I have external access via tailscale.

  • Possibly linux
    link
    fedilink
    English
    1221 days ago

    No

    Reverse proxies like you are talking about are only for http connections. For more information look at the OSI model. (The proxy is operating on the application layer while Minecraft is on the transport layer)

    Instead use DNS to resolve the domain name to an IP. Better yet, just set a static IP.

    • @[email protected]
      link
      fedilink
      English
      621 days ago

      There are minecraft reverse proxies, so, yes, a http proxy will not work, but the general idea is still viable and doable with very little effort.

      Set up a few domains all resolving to one IP. Run itzg/minecraft-router and use that to proxy the traffic to different servers based on the domain.

      Also, they don’t even need a reverse proxy, but just resolve the domain name to the IP (in the simple case of one domain name per I0). That can be accomplished by hosting their own dns server, editing the hosts file or just pointing a public dns record at the private ip address, which will only work in their network,l.

      • @Dust0741OP
        link
        English
        221 days ago

        Thanks for the help. This is enough to get me started

        • @[email protected]
          link
          fedilink
          English
          118 days ago

          You could also use nginx if you wanted; it’ll do arbitrary tcp data with the stream plugin.