The annotation ngress.kubernetes.io/protocol
seems to have been dropped off traefik v2 without a documentation on what the behavior is for non http/https protocols. The h2c protocol is not mentioned anywhere.
Looking at some old code (https://github.com/seh/traefik/blob/e11a75847b2b693773a7fae9ec09357a1d6539e9/pkg/provider/kubernetes/crd/kubernetes.go#L273) it seems that the protocol could be h2c, however, looking at master, the protocol can only be http or https: https://github.com/seh/traefik/blob/master/pkg/provider/kubernetes/crd/kubernetes.go#L280
It seems that the protocol/scheme can be controlled with the RedirectScheme Middleware: https://docs.traefik.io/middlewares/redirectscheme/ but it's not very well specified the relationship between scheme and internal protocol
Also, does this actually return a 301/302 to the client or just translates the scheme on the fly?