playit-cloud / playit-agent

The playit program
BSD 2-Clause "Simplified" License
236 stars 20 forks source link

feature request: PROXY protocol support #93

Open slingamn opened 2 weeks ago

slingamn commented 2 weeks ago

HAProxy's PROXY protocol is a de facto standard for passing client IP information through a reverse proxy. From a support thread, playit.gg users seem interested in using it with SpigotMC/BungeeCord, a popular Minecraft implementation that supports it. I maintain an ircd implementation and got some interest in it as well: https://github.com/ergochat/ergo/issues/2188

I looked a little at playit-agent to see how this might be implemented. It sounds like the per-tunnel configuration lives on the server side? So it seems like the natural implementation might be purely server-side: the user gets a checkbox to select whether to enable the PROXY protocol, and then the server simply sends the PROXY header as the initial data on the proxied TCP connection.

Thanks very much for your time.

loriopatrick commented 2 weeks ago

@slingamn do you know what’s up with all the spam comments? Looks really sus. I’m going to delete them.

loriopatrick commented 2 weeks ago

This is something I would like to add, I have an early branch started locally and someone from our Discord has also been tackling an early implementation.

slingamn commented 2 weeks ago

Very cool! (Yeah, no clue about the spam comments, I assume these are bots trying to trick people into installing malware.)