чт, 23 мар. 2023 г. в 17:56, Eugene Berdnikov <b...@protva.ru>:

> On Thu, Mar 23, 2023 at 04:20:16PM +0400, Maksim Dmitrichenko wrote:
> >    чт, 23 мар. 2023 г. в 14:01, Eugene Berdnikov <[1]b...@protva.ru>:
> >       Ну, это всё незамысловато строгается через
> squid+iproute+iptables...
> >       Даёте группе свой выходной src_ip, и через ip rule его на нужный
> шлюз.
> >
> >    Таким образом нельзя программно-протокольным образом выбрать группу
> >    адресов, через которую отправится предстоящее соединение. Если я
> правильно
> >    понял предлагаемую схему.
>
>  Что значит "программно-протокольным образом"?
>

"Программно" означает, что решение о выборе группы айпишников, через
которое поедет соединение, принимается не проксёй, а программой, которое
соединение устанавливает. "Протокольно" означает, что о принятом решении
она информирует проксю через протокол. Так как речь о HTTP Proxy, то мне
кажется, что наиболее естественно это сделать через какой-нить заголовок
типа "x-ip-group-name". Но я не настаиваю конкретно на этом способе.


>  Сквид умеет задавать src_ip исходящих соединений, по заданным в конфиге
>  критериям. В эти критерии могут входить параметры соединения, выбираемые
>  на стороне клиента, конкретно dst_ip и dst_port. Как вместо одного
>  исходящего от сквида src_ip сделать пул адресов -- задача на дом.
>

Я в курсе, как работает сквид. Но мне не нужна конфигурация, когда для
выбранного host:port соединение будет выходить всегда с одной и той же
группы адресов. Задача как раз в том, что первое соединение установить с
одной группы, второе - со второй, а третье - мы вообще не указываем
желаемую группу, и прокся, например, сама решает каким-нить round-robin'ом,
какой src_ip выбрать. Поднимать несколько сквидов - по одному на каждую
группу: тоже так себе вариант

-- 
With best regards
  Maksim Dmitrichenk

Ответить