Есть потребность регулярно доставать некоторые данные из веб-интфрейса нескольких сторонних систем. (Цены показа рекламы, что бы оптимизировать прибыль с ее показа). Т.е. есть вероятность каких-то санкций со стороны этих систем за регулырные обращения, нужно использовать разного рода прокси, которые в случае чего можно было бы легко сменить. Система написана на ruby, поэтому и сами "роботы" тоже на нем. Сейчас используется гем socksify и socks-сервер с помощью обычного ssh (ssh -D 9999 -N server.domain.com). Роботы используют Net::HTTP::SOCKSProxy для работы через этот прокси.
Однако, этот способ имеет ряд проблем.
- регулярно со стороны роботов вылезает ошибка "SOCKS version is not 5". Гугление не дает вменяемых путей решения
- в какой-то момент ssh-socks перестает работать, вываливает в консоль на каждый запрос "channel 1018: open failed: administratively prohibited: open failed". Рестарт помогает, но до определенного момента.
- регулярные таймауты разного рода, но это может быть связано с проблемами собственно систем, откуда берем данные, так что проблема вторична.
Спасибо за подсказки, в какую сторону смотреть.