Справедливо делить скорость безлимитчиков

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС.

Модераторы: SLEDopit, Модераторы разделов

Oleg_Rus
Сообщения: 3

Справедливо делить скорость безлимитчиков

Сообщение Oleg_Rus »

Здравствуйте, все!
Картина такая --
есть 2 канала связи - лимит и безлимит. С лимитом все в полном порядке, а вот с безлимитом - полный бардак...  :-\
Упущу подробное описание сети - перейду к делу

За всей сетью "следит" самописный биллинг, который при переключении режима тарификации управляет "списком безлимитчиков".
Сеть разделена на 4 подсети --

Код: Выделить всё

10.52.0.1/24
10.52.2.1/24
10.52.4.1/24
10.52.6.1/24


Все локальные хосты на одном интерфейсе роутера - eth2
На eth0 висит лимитный канал
На eth1 - "служебная" связть роутера и сервера (для биллинга)
eth3 - резервный интерфейс
eth4 - безлимитный канал

Т.е. пользователь, зайдя в личный кабинет выбирает себе тарифный план - Базовый (Лимитный) или Безлимит на n-дней.
На сервере создан каталог, который при загруске всей системы монтируется на роутер (nfs) и исходя из "данных" этого каталога работает с клиентами.
Там же есть файл - tclist  (сделано на будующее и знал, что это надо будет делать), в который заносятся данные о пользователе и его выбранной скорости.
Данные храняться в таком виде --

Код: Выделить всё

ats-router:~# tail -10 /remote/tclist
10.52.4.18:256
10.52.4.2:256
10.52.4.3:256
10.52.4.6:256
10.52.4.9:256
10.52.6.2:256
10.52.6.3:256
10.52.6.4:256
10.52.6.5:256


Т.е. первое - это адрес локального (конечного) хоста, через ":" - скорость в Кбитах
В данном примере скорость приведена, как пример, т.к. в данное время я еще не "обучил" свой роутер работать с этими данными. В моем случае скорость пока упущена.


Так же есть такое дело --

Код: Выделить всё

ats-router:~# cat /remote/tclist.filter
10.52.0.17:unlimited_256_30
10.52.0.18:unlimited_256_60
10.52.0.20:unlimited_256_60
10.52.0.22:unlimited_256_30
10.52.0.24:unlimited_256_30
10.52.0.26:unlimited_256_30
10.52.0.27:unlimited_256_30
.............
10.52.4.18:unlimited_256_15
10.52.4.2:unlimited_256_60
10.52.4.3:unlimited_256_30
10.52.4.6:unlimited_256_30
10.52.4.9:unlimited_256_60
10.52.6.2:unlimited_256_30
10.52.6.3:unlimited_256_60
10.52.6.4:unlimited_256_30
10.52.6.5:unlimited_256_30
10.52.6.6:unlimited_256_60


Исходя из поля после ":" сервер устанавливает и следит за безлимитом n-дней, указанных в tclist.filter
По окончанию периода - переводит безлимитчика на лимит. Но все это - лирика


На роутере, соответсвенно, поднят NAT
Роутер работает по следующей цепочке --
-- хост просит запрос в "Мир" -- роутер проверяет, нет ли информации об этом хосте в tclist -- если его нет, пропускает через лимитный канал;
-- хост просит запрос в "Мир" -- роутер проверяет, нет ли информации об этом хосте в tclist -- если он находит о нем информацию -- ставит метку на трафик этого хоста и пропускает его через iptables по следующему правилу --

Код: Выделить всё

GW_UNLIM=***.***.132.162

iptables -t mangle -N unlimit
for x in $MYNETS
do
  iptables -t mangle -A unlimit -d $x -j RETURN
done
iptables -t mangle -A unlimit -j MARK --set-mark 0x48

ip rule ls | sed -n -e 's/all/0\/0/' -e 's/^48:/ip rule del/p' | sh
ip route del table 48
ip rule add fwmark 0x48 pref 48 table 48
ip route add table 48 default via $GW_UNLIM

TCLIST="/remote/tclist"
if [ -f $TCLIST ]; then
    for x in `cat $TCLIST`; do
        IPADDR=`echo $x|cut -d: -f1`
        iptables -t mangle -I PREROUTING -s $IPADDR -j unlimit
    done
fi

true


Воспрос: как можно "привязать" гарантируемую скорость к адресам, которые роутер находит в tclist?

И при этом учесть, что в локальной сети стоит web-сервер, рассположенный на eth1, к которому ограничение скорости никак не должно относиться, хотя - это можно пока упустить. Важнее - решить проблему скорости :(

ЗЫ: сейчас безлимитный канал работает так - кто первый встал, того и тапки  :'(
Спасибо сказали:
tvremtoh
Сообщения: 29

Re: Справедливо делить скорость безлимитчиков

Сообщение tvremtoh »

www.abills.net.ua www.startgazer.dp.ua www.mikrotik.com зачем городить огород если реально это все можно получить и настроить даром , неужто ктото сможет дать лекарство для вашей проблеммы . Лично я вообще слабо понял как у вас работает эта кухня , а для обяснения наверное понадобится пост с тремя километрами описаний конфигов,систем, и топологии сети + 3 литровая банка пива и несколько пачек сигарет ....
Кратко и реально в нашем случае у нас должен быть роутер + биллинг . Роутер у вас есть , а вот с биллингов лажа , так попробуйте поюзать готовое решение на абилсе - работает с кучей роутеров , возможности по тарификации потрясающие . Старгазер тоже ниче но напильник придется брать с крупными насечками ... Микротик описан на форуме www.pcrouter.ru - удачи !
Спасибо сказали:
Oleg_Rus
Сообщения: 3

Re: Справедливо делить скорость безлимитчиков

Сообщение Oleg_Rus »

tvremtoh писал(а):
01.10.2008 15:27
www.abills.net.ua www.startgazer.dp.ua www.mikrotik.com зачем городить огород если реально это все можно получить и настроить даром , неужто ктото сможет дать лекарство для вашей проблеммы . Лично я вообще слабо понял как у вас работает эта кухня , а для обяснения наверное понадобится пост с тремя километрами описаний конфигов,систем, и топологии сети + 3 литровая банка пива и несколько пачек сигарет ....
Кратко и реально в нашем случае у нас должен быть роутер + биллинг . Роутер у вас есть , а вот с биллингов лажа , так попробуйте поюзать готовое решение на абилсе - работает с кучей роутеров , возможности по тарификации потрясающие . Старгазер тоже ниче но напильник придется брать с крупными насечками ... Микротик описан на форуме www.pcrouter.ru - удачи !

За совет - спасибо :)
Но это для меня не подходит.
Свой биллинг лучше любого другого. Возможностей гараздо больше, чем то, что вы мне предложили. Да, и устраивает он меня на все 100%

Проблема банальна. Решить ее - дело 2х дней, но (!) - проблема в том, что этих 2х дней нет :(
Вот и ищу "готовое" решение, которое позволит решить задачу -- упревление 2мя интерфейсами на одной машине.

А то, что вы предложили взять "готовое" и "чужое" - это для ленивых :rolleyes:
И не было бы все так просто, как все, на самом деле, сложно - есть абоненты и их не мало... всех переводить на новый биллинг -- дело для умалишенных :)))
Спасибо сказали:
tvremtoh
Сообщения: 29

Re: Справедливо делить скорость безлимитчиков

Сообщение tvremtoh »

Ну взял ношу неси - самописный биллинг - , по поводу -может намного больше- вы ведь сами пишете -не выставляет скорость клиентов - приведите преимущества вашего биллинга будем подумать .... Перевод пользователей на новый билинг проблемен , конечно да , но иногда приходится а что поделаешь . Я вообще за то чтобы пользователи о биллинге не знали вообще ничего толком - он должен работать незаметно для них . А позиция кто первым тапочки одел это уже анекдот , ведь клиенту необходимо гарантировать какойто определенный уровень сервиса , типа надавил на кнепочку и вуаля ты в нете , иначе беда - будут болеть ноги и голова .
Спасибо сказали:
Oleg_Rus
Сообщения: 3

Re: Справедливо делить скорость безлимитчиков

Сообщение Oleg_Rus »

tvremtoh писал(а):
01.10.2008 17:15
приведите преимущества вашего биллинга будем подумать ....

Что именно Вас интересует? Что именно описать?
tvremtoh писал(а):
01.10.2008 17:15
Я вообще за то чтобы пользователи о биллинге не знали вообще ничего толком - он должен работать незаметно для них .

Так и есть. Только пользователи могут там управлять своими услугами и отслеживать состояние ЛС (лицевого счета)
tvremtoh писал(а):
01.10.2008 17:15
А позиция кто первым тапочки одел это уже анекдот , ведь клиенту необходимо гарантировать какойто определенный уровень сервиса , типа надавил на кнепочку и вуаля ты в нете , иначе беда - будут болеть ноги и голова .

Дело в том, что безлимит был запущен в "открытом тестировании". Как все будет отстроено - будем предоставлять "гарантированный" сервис.
Спасибо сказали: