LINUX.ORG.RU

Автоматическое переключение сетевых интерфейсов в Squid

 ,


0

1

Добрый! Есть прокси сервер Squid построенный на Debian 6. Машина виртуальная, хост крутится на xen. Есть два провайдера. Нужно сделать так, чтобы если провайдер перестает работать (не важно по какой причине, не важно на какой срок) машинка со сквидом ловко бы перепрыгивала на другой инет канал. Пока вижу это так в прокси добавляется еще один сетевой интерфейс с настройками другого провайдера. Он до поры до времени выключен. Что-то в это время постоянно отслеживает работу основного интернет канала(например пинг шлюза, или какого-то ресурса который доступен в 99% случаев) как только основной канал падает, поднимается резервный, сквид перезагружается и работа продолжается на резервном канале. Обратное переключение можно выполнить руками. Вопрос как все это лучше сделать. Писать что-то самому или есть готовые решения?

tcp_outgoing_address <здесь ip eth0:1> <здесь acl (в acl ip адреса машин кому надо на другой канал>

затем если надо перевести юзера на другой канал вместе с доступом через сквид - удаляешь ip из списка, который в acl обозначен (например список в файле), squid reload и ip rule del from <ip юзера> table <провайдер 1> (или как самому нужно)

uspen ★★★★★ ()

Вопрос как все это лучше сделать.

А что не так? Мониторинг можно сделать по cron+скрипт с ping или (что более изощренно) если в iptables отслеживать соответствующие ICMP пакеты (например, 3 типа, в котором «узел недостижим» и т. п.). По событию - опускаешь/поднимаешь интерфейсы и перезапускаешь squid (а лучше squid -k reconfigure ).

Kroz ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.