Websocket control messages, Ping/Pong, is not forwarded #3683
Labels
area/oxy
kind/bug/confirmed
a confirmed bug (reproducible).
priority/P1
need to be fixed in next release
status/5-frozen-due-to-age
Milestone
Do you want to request a feature or report a bug?
Bug
What did you do?
When using Traefik to proxy websockets, Traefik will answer all Ping messages and drop all Pong messages instead of forwarding them to the destination and source. Mening websocket opcode 9 and opcode 10, https://tools.ietf.org/html/rfc6455#section-5.5.2
I dug around in the source and found that the underlying problem is within oxy, added a issue there along with a pull request
vulcand/oxy#150
Just applying this patch will fix issue, from my perspective, but might break backwards compatibility since some might come to rely on Traefik to handle control messages. It is conceivable to add a configuration option to allow for transparency. In my opinion transparency of the proxy should be the default behavior.
What did you expect to see?
I expected Traefik to be a transparent proxy and forward all control messages
What did you see instead?
Traefik using the default behavior of the gorilla websocket lib, making it non transparent. Mening that protocol built on top of websockets have to re-implemented general Ping/Pong behavior with opcode 1 (plain text) or opcode 2 (binary data)
Output of
traefik version
: (What version of Traefik are you using?)N/A
What is your environment & configuration (arguments, toml, provider, platform, ...)?
N/A
If applicable, please paste the log output in DEBUG level (
--logLevel=DEBUG
switch)N/A
The text was updated successfully, but these errors were encountered: