The first few bytes on a new TLS connection will be the record layer bytes
denoting a handshake and the TLS version field, so 0x160301 or 0x160303.
ASCII-based proxy protocol v1 will start out 0x5052 etc, and binary-based proxy
protocol v2 has its own initial 12 byte signature of 0x0D0A0D0A etc.
Dear Gophers,
I would like to bring to your attention.
There is an “issue” with the Go standard implementation when handling HTTP
requests that are extended by the proxy protocol v1 or v2.
While the simple HTTP server works fine with regular requests, it fails
when a proxy protocol is added.