Jump to content
Калькуляторы

PPTP NAS Balancing

Кто как балансирует(резервирует) нагрузку между НАСами. Нашел CLUSTERIP, правило для iptables, вроде все понятно, но есть один момент, как оно будет распределять пары tcp 1723 и gre на каждый НАС. Т.е. может получиться ситуация, когда gre уйдет на один НАС,а 1723 на другой, как результат абонент на заработает. Подскажите плз, кто-то как делает.

Share this post


Link to post
Share on other sites
Alexandr Ovcharenko, это если хомячковое железо умеет работать с именем хоста а не с IP адресом, есть железки которым подавай только IP адрес VPN сервера.

Share this post


Link to post
Share on other sites
Alexandr Ovcharenko, это если хомячковое железо умеет работать с именем хоста а не с IP адресом, есть железки которым подавай только IP адрес VPN сервера.
Это проблема глюченых железок.

А если вам уж так надо совсем-совсем - берите Cisco и делайте SLB.

Share this post


Link to post
Share on other sites

железку которая умеет балансить по сорс ип или писюк который это будет делать.

 

поищите на форуме, уже обсуждалось не раз.

Share this post


Link to post
Share on other sites

DNS Round robin хорош по-своему(в плане реализации), но у него есть недостатки: dns кеш на машине абонента; dns сервер будет выдавать IP вне зависимости от того работает НАС или нет. Так что с точки зрения отказоустойчивости и резервирования не совсем гладкий вариант, но быстрый.

Share this post


Link to post
Share on other sites
DNS Round robin хорош по-своему(в плане реализации), но у него есть недостатки: dns кеш на машине абонента; dns сервер будет выдавать IP вне зависимости от того работает НАС или нет. Так что с точки зрения отказоустойчивости и резервирования не совсем гладкий вариант, но быстрый.
Что мешает ставить время жизни записи 5 секунд?

Что мешает написать на перле/си/... то что будет отдавать адреса только живых серверов?

Share this post


Link to post
Share on other sites
Что мешает ставить время жизни записи 5 секунд?
Это действительно ответ.
Что мешает написать на перле/си/... то что будет отдавать адреса только живых серверов?
А вот это как-то криво будет смотреться.

 

В общем, не красиво оно как-то выходит.

Share this post


Link to post
Share on other sites
А вот это как-то криво будет смотреться.

В общем, не красиво оно как-то выходит.

Чем криво-то? Обычный, вполне жизнеспособный, небольших размеров костыль. Если у вас проблема с написанием костылей - да, это действительно проблема.

А как вы ещё представляете работу системы, которая ДОЛЖНА УЧИТЫВАТЬ ЖИЗНЕСПОСОБНОСТЬ СЕРВЕРОВ? Робота-телепата?

Share this post


Link to post
Share on other sites
А вот это как-то криво будет смотреться.
Пишите на асме, раз си и перл плохо :)

Насчёт костылей - пптп сам костыль тот ещё, применительно к ISP.

 

Серьёзно, если написать хорошо, то балансеру не важно будет что балансить пптп/л2тп/хттп или что ещё.

И никакой это будет не костыль, а вполне себе технологичное решение.

 

На самом деле там всё не так уж сложно, особенно если под разбор/сбор днс пакетов использовать готовые фреймворки/библиотеки.

Но придётся это держать гдето, и редиректить/рекурсить без кеширования на своих днс серверах запросы на эти днс балансеры.

Если днс севера (софт) позволят то можно на этих же машинах на другом порту держать.

 

А проверка что пптп сервер жив - переодические коннекты по тсп, или пинги или что то ещё.

Хоть опрос снмп счётчиков на них - тогда можно будет балансер заставить учитывать не только жив/мёртв но и другие факторы.

Share this post


Link to post
Share on other sites

dns отдает не один адрес, а список. Просто по разному отсортированный. Сколько раз уже было - вывожу из работы vpn сервер - клиенты просто переконнекчиваются. Если в полученном от dns списке первым идет адрес выключенного сервера - винда (и впн роутер тоже) честно ломятся на следующий.

Моя ТП на жалобу "у меня vpn роутер не умеет dns имя вписать" честно рекомендует купить более нормальный...

Share this post


Link to post
Share on other sites

Зачем костыли? PowerDNS вполне себе умеет использовать скрипты в качестве backend-а.

Или даже ещё лучше: из SQL. А скриптом раз в минуту пинговать сервера и ставить в базе поле "рабочий" в 1 или 0.

Edited by Abram

Share this post


Link to post
Share on other sites
Зачем костыли? PowerDNS вполне себе умеет использовать скрипты в качестве backend-а.

Или даже ещё лучше: из SQL. А скриптом раз в минуту пинговать сервера и ставить в базе поле "рабочий" в 1 или 0.

Те же, тока вид сбоку.

Share this post


Link to post
Share on other sites

Как уже отвечали выше, даже на живость сервер проверять не надо, винда сама переконекчивается на следующий.

Share this post


Link to post
Share on other sites

За DNS спасибо, сегодня попробую. Вчера тестировал варианты на тему VRRP,heartbeat (в плане резервирования),работает. Также проверил iptables CLUSTERIP, адрес подымает, но балансировка и резервирование также не работает, ложишь один сервак падает все, и ошибками сыпет что раненый, типа не знает оно, что такое gre. Вот такие вот дела.

Share this post


Link to post
Share on other sites
dns отдает не один адрес, а список. Просто по разному отсортированный. Сколько раз уже было - вывожу из работы vpn сервер - клиенты просто переконнекчиваются. Если в полученном от dns списке первым идет адрес выключенного сервера - винда (и впн роутер тоже) честно ломятся на следующий.

Моя ТП на жалобу "у меня vpn роутер не умеет dns имя вписать" честно рекомендует купить более нормальный...

А как себя чувствуют клиенты на Win7?

С удивлением обнаружили, что она иначе обрабатывает описанную ситуацию и не пытается молча соединиться со следующим НАСом.

Share this post


Link to post
Share on other sites
А как себя чувствуют клиенты на Win7?

С удивлением обнаружили, что она иначе обрабатывает описанную ситуацию и не пытается молча соединиться со следующим НАСом.

И?

Ставите время жизни записи 1 секунду в днс, и ротируете роундробином, клиент при следующей попытке скорее всего будет подключатся уже по другому адресу.

Share this post


Link to post
Share on other sites
А как себя чувствуют клиенты на Win7?

С удивлением обнаружили, что она иначе обрабатывает описанную ситуацию и не пытается молча соединиться со следующим НАСом.

И?

Ставите время жизни записи 1 секунду в днс, и ротируете роундробином, клиент при следующей попытке скорее всего будет подключатся уже по другому адресу.

Под Windows XP все это проходит незаметно для клиента.

Под Windows 7 - попытка подключения висит секунд 10, потом уже выдает ошибко. Не комильфо, однако.

 

Предпочитаю попытаться разобраться, возможно ли привести поведение семерки к аналогичному в ХП.

Share this post


Link to post
Share on other sites

В семерке вообще PPTP-клиент DNS юзает через жопу. Оно глючит даже если одну запись ввести (868 ошибка).

Share this post


Link to post
Share on other sites
В семерке вообще PPTP-клиент DNS юзает через жопу. Оно глючит даже если одну запись ввести (868 ошибка).

С l2tp тоже самое, да?

Share this post


Link to post
Share on other sites
В семерке вообще PPTP-клиент DNS юзает через жопу. Оно глючит даже если одну запись ввести (868 ошибка).

С l2tp тоже самое, да?

Не проверял, но теоретически - да.

И да, с PPPoE в Win 7 тоже проблема :-D. Ошибку 651 дает. Лечится заменой какой-то dll на аналогичную из свисты. Может, и 868 вылечит.

Share this post


Link to post
Share on other sites
Под Windows XP все это проходит незаметно для клиента.

Под Windows 7 - попытка подключения висит секунд 10, потом уже выдает ошибко. Не комильфо, однако.

 

Предпочитаю попытаться разобраться, возможно ли привести поведение семерки к аналогичному в ХП.

Пишите МС, пусть разбираются.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this