Назад | Перейти на главную страницу

Получить IP-адрес клиента из баланса нагрузки сети Google

Я не могу использовать баланс нагрузки HTTP Google, потому что он не поддерживает веб-сокет.

Итак, мой NGINX работает в Google Container Engine за балансировкой сетевой нагрузки Google.

Когда запрос приходит NGINX в контейнер докеров, он получает IP-адрес NODE вместо IP-адреса клиента.

2016/04/07 10:53:47 [ошибка] 94 # 0: * 73 доступ запрещен правилом, клиент: 10.132.0.9

Как решить эту проблему?

Получение IP-адреса клиента при использовании балансировщика сетевой нагрузки с Kubernetes - известное ограничение. Вы можете сослаться на это ошибка выпуска для обновлений и обходных путей.

Вы получаете IP «балансировщика сетевой нагрузки gce» в логах nginx?

поскольку ваш вопрос не совсем ясен, я предполагаю, что ваша проблема в конфигурации nginx. попробуйте добавить параметр x-forwarded-for в nginx.conf более понятно: real_ip_header X-Forwarded-For;

проверьте официальный пост Google https://cloud.google.com/solutions/https-load-balancing-nginx