Nginx ingress use-proxy-protocol broken headers

I have my cluster set up on Digital Ocean and they recently added support for PROXY Protocol on the load balancer.

So I updated my ingress-nginx config to use use-proxy-protocol: “true” and enabled Proxy Protocol on the Load Balancer but I then get a load of errors in the nginx logs such as

���Zك7�g̮["\�/�+�0�,��'g�(k��̨̩̪������������������$j�#@�

�98" while reading PROXY protocol, client: 10.244.35.0, server: [0.0.0.0:443](http://0.0.0.0:443/)

2019/04/11 13:02:57 [error] 265#265: *4443 broken header: "����p�����ўL��k+

                                                                           rbO-

/�Ç���y�8\�/�+�0�,��'g�(k��̨̩̪������������������$j�#@�

�98" while reading PROXY protocol, client: 10.244.41.0, server: [0.0.0.0:443](http://0.0.0.0:443/)

2019/04/11 13:02:57 [error] 265#265: *4444 broken header: "���5*�Kk��4  ��b�pxLJw�]��G�V���     �

\�/�+�0�,��'g�(k��̨̩̪������������������$j�#@�

�98" while reading PROXY protocol, client: 10.244.41.0, server: [0.0.0.0:443](http://0.0.0.0:443/)

Can’t work out if I’m doing something wrong, or if there is any issue with either ingress-nginx or digital ocean

Been suffering with a very similar issue but can’t seem to find the issue. Did you ever work it out?

The best I can work out is that the pod is routing the traffic internally rather than VIA the edge / external load balancer. As a result it skips proxy protocol and so it fails to decode at the ingress and you get this.

edit:

I reinstalled my cluster, and the only thing I changed was not adding a searchDomain to the dns config and its working… so IDK. Maybe Ill make the mistake again later and see if I can fix another way, it feels like a CNI config thing tbh.