Форум русскоязычного сообщества Ubuntu


Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: ip route cache и 2 провайдера  (Прочитано 647 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн danethz

  • Автор темы
  • Новичок
  • *
  • Сообщений: 13
    • Просмотр профиля
ip route cache и 2 провайдера
« : 23 Сентября 2016, 14:52:47 »
Доброго времени суток, товарищи!
Есть задача сделать шлюз на базе Ubuntu с 2-мя провайдерами. Отказоустойчивость, балансировка.
Сервер:
Цитировать
uname -a
Linux Gateway 4.2.0-27-generic #32~14.04.1-Ubuntu SMP Fri Jan 22 15:32:26 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
Для проверки работоспособности провайдера использовал скрипт https://habrahabr.ru/post/54748/
Балансирую грубо 50\50, с помощью iproute2 используя 2 шлюза по-умолчанию с одинаковым приоритетом:
Цитировать
default
        nexthop via $ISP1_GW  dev eth1 weight 1
        nexthop via $ISP2_GW  dev eth2 weight 1
10.8.0.0/23 dev tun0  proto kernel  scope link  src 10.8.0.1
$ISP1_NET dev eth1  proto kernel  scope link  src $ISP1_MY_IP
$ISP2_NET dev eth2  proto kernel  scope link  src $ISP2_MY_IP
$LOCAL_NET dev eth0  proto kernel  scope link  src $LOCAL_IP
Для балансировки http использую Squid3 acl random:
Цитировать
acl halftraf random 0.5
tcp_outgoing_address $ISP1_MY_IP halftraf
tcp_outgoing_address $ISP2_MY_IP
После экспериментов с traceroute обнаружилось, что кэш iproute2 всегда пустой. Гугл огорчил меня вот этой презентацией http://vger.kernel.org/~davem/columbia2012.pdf, рассказывающей почему из ядра выше 3.6 удалена поддержка ip route cache.
Теоретически я могу создать табличку маршрутизации для банк-клиентов, куда запихаю все IP банков и буду менять её в случае падения одного из провайдеров, но хотелось бы более красивого решения.
Возможно есть какие-либо альтернативы?
Заранее благодарен всем ответившим.

Оффлайн danethz

  • Автор темы
  • Новичок
  • *
  • Сообщений: 13
    • Просмотр профиля
Re: ip route cache и 2 провайдера
« Ответ #1 : 26 Сентября 2016, 10:59:41 »
Господа-товарищи!
Если кто-либо поднимал на Ubuntu 14 и выше шлюз с:
1) 2 и более провайдеров.
2) Отказоустойчивость - автоматическая проверка работоспособности каждого из провайдеров. Не пинг шлюза провайдера, а что-либо за ним.
3) Балансировка нагрузки по соединениям.
4) Проброс портов внутрь сети с маркировкой пакетов по принципу от какого провайдера пришел пакет. (Опционально, если это будет камнем преткновения - откажусь)
Буду очень благодарен за направление, в какую сторону гуглить.
Заранее благодарен  :)
« Последнее редактирование: 26 Сентября 2016, 11:14:34 от danethz »

 

Страница сгенерирована за 0.016 секунд. Запросов: 22.