AKS Load Balancer's IP instead of real IP used in whitelist check #5458
Labels
kind/bug
Categorizes issue or PR as related to a bug.
lifecycle/rotten
Denotes an issue or PR that has aged beyond stale and will be auto-closed.
NGINX Ingress controller version: 0.28, 0.29, 0.30, 0.31.1
Kubernetes version (use
kubectl version
): v1.15.7Environment:
uname -a
): 4.15.0-1077-azure Fix incorrect X-Forwarded-Port for TLS #82-Ubuntu SMP Thu Mar 26 03:25:09 UTC 2020 x86_64 x86_64 x86_64 GNU/LinuxWhat happened:
We are currently using NGinx ingress controller 0.25 and ip whitelisting on our ingresses - using standard nginx.ingress.kubernetes.io/whitelist-source-range labels. It works perfectly fine.
We've updated the NGinx to the newest releases and they do work mostly fine, but sometimes instead of real client IP address, Load Balancer's IP address is used for whitelist check.
The following messages are then in the NGinx logs:
Where 1.2.3.4 is an external IP of our Load Balancer.
The situation gets back to normal after a while (real IP is used as expected), but breaks after random time period again.
What you expected to happen:
Real client IP is used for whitelist validation all the time.
How to reproduce it:
Ingress controller service definition
Anything else we need to know:
The installation uses regular Basic AKS Load balancer.
Just reverting version back to 0.25 brings back fully stable operation, without 403 errors.
We are using VPN to connect to our ingresses - not sure if it makes any difference.
/kind bug
The text was updated successfully, but these errors were encountered: