Как определить диапазоны IP-адресов, используемые балансировщиками нагрузки GCP
Я управляю несколькими экземплярами виртуальных машин на Google Cloud Platform (GCP). Они находятся за балансировщиком нагрузки HTTP (S).
Чтобы ограничить доступ на основе исходного IP-адреса, я настроил Nginx для каждого экземпляра виртуальной машины следующим образом:
server {
listen 80;
listen [::]:80;
server_name www.example.com;
real_ip_header X-Forwarded-For;
real_ip_recursive on;
set_real_ip_from 130.211.0.0/22; # GCP load balancers
set_real_ip_from 35.191.0.0/16; # GCP load balancers
...
}
Я нашел диапазоны IP-адресов 130.211.0.0/22
и 35.191.0.0/16
в разделе Правила брандмауэра на странице документа "Концепции балансировки нагрузки HTTP (S)".
Но при реальной работе я заметил, что доступ может происходить из другого диапазона IP-адресов 35.190.0.0/17
.
Итак, я ознакомился с разделом FAQ по Google Compute Engine и узнал, что могу получить список всех общедоступных IP-диапазонов GCP.
Этот список очень длинный и, кажется, включает диапазоны IP-адресов, которые не используются балансировщиками нагрузки.
У меня два вопроса:
- Как определить диапазоны IP-адресов, используемые балансировщиками нагрузки GCP?
- Как я могу обновить конфигурацию Nginx при изменении диапазонов IP-адресов?