Настроил все через iptables. Все работает без nginx, но есть три вопроса вопроса.
1) Как сделать чтобы Iptables поддерживал fqdn? Удаленный сервис может находится в облаке.
2) Как логировать POSTROUTING в отдельный файл для траблшутинга и мониторинга
3) Можно ли эту конфигурацию добавить в docker и docker-composer.yml для сервисов работающих в докере? По умолчанию докер не видит ip адреса хост машины и не понятно, как их привязать к докеру.
Александр Карабанов, спасибо за внимание и поддержку! Я тоже продолжаю эксперименты и набираюсь опыта. Очень хочется сделать не просто чтобы работало, а чтобы работало правильно и решение было оптимальным для данной задачи и было понимание почему именно оно лучшее.
Можно попросить вас показать промежуточный конфиг? Не совсем понятны последние комментарии.
Я хочу чтобы в nginx работало как вы описали для iptables (первое решение). К сожалению не смог настроить iptables log чтобы все работает корректно :(. По описанию первое решение мне больше нравится и если его можно будет использовать в докер и докер компоузере то было бы отличным решением
Спасибо за ответы. Я только начал разбираться с nginx.
В server_name необходимо прописать api.site1.com ?
И можете подсказать почему запрос все время отправляется с default ip 45.148.28.67? даже в том случае когда явно обращаешься к кокретному прокси на другом айпи
Промежуточные прокси прописаны в приведенной конфигурации. Только не работают правильно.
Основноый прокси по задумке
127.0.0.1:3128 (upstream -> dynamic)
Промежуточные прокси
45.148.31.170:3129
45.148.31.172:3130
45.148.28.67:3131
При использовании curl опцией -x и указании любого из списка адреса и порта прокси - запросы отправляются с default IP сервера 45.148.28.67. Вопрос почему и как это исправить?
proxy_bind не работает. Даже при явном обращении к прокси с привязнаным не дефолтным айпи, запрос идет все равно с дефолтного айпи. Ниже привел конфиг.
firewall-cmd --direct --add-rule ipv4 nat POSTROUTING -p tcp -d ident.me --dport 443 -m statistic --mode nth --every 3 --packet 0 -j SNAT --to 151.23.54.101
firewall-cmd --direct --add-rule ipv4 nat POSTROUTING -p tcp -d ident.me --dport 443 -m statistic --mode nth --every 2 --packet 0 -j SNAT --to 151.23.54.102
firewall-cmd --direct --add-rule ipv4 nat POSTROUTING -p tcp -d ident.me --dport 443 -m statistic --mode nth --every 1 --packet 0 -j SNAT --to 151.23.54.101