Перейти к содержимому
Калькуляторы

BRAS soft для Linux (шейпер, файрволл, CG-NAT) Еще один софт для нарезки скорости клиентам

Так dhcp будет с радиус-аккаунтинк? :)

---

Я тут подумал... А что по поводу дебиторщиков + whitelist для них? Чтоб те, у кого денег нет - авторизовывались, получали IP, но пользовались только ресурсами указанными в whitelist?

 

почему бы и не радиус-аккаунтинг :)

По дебиторщикам - просто другой профайл выдавайте на них и все :) вроде даже в документации примерно такой пример был для ACL

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Так dhcp будет с радиус-аккаунтинк? :)

---

Я тут подумал... А что по поводу дебиторщиков + whitelist для них? Чтоб те, у кого денег нет - авторизовывались, получали IP, но пользовались только ресурсами указанными в whitelist?

 

почему бы и не радиус-аккаунтинг :)

По дебиторщикам - просто другой профайл выдавайте на них и все :) вроде даже в документации примерно такой пример был для ACL

Яж говорю, тяжело мне буржуйский читать, но прочёл более подробно, аккаунтинг у вас уже реализован :) сорри. Осталось dhcp с радиус авторизацией.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

После вкуривания мануала насколько я могу понять, команды аналога sh run нет. Как в данном случае происходит преемственность в управление брасом? У нас к примеру 3 инженера кто следит за доступом включая барсы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

После вкуривания мануала насколько я могу понять, команды аналога sh run нет. Как в данном случае происходит преемственность в управление брасом? У нас к примеру 3 инженера кто следит за доступом включая барсы.

 

Почему же? uspe-client dump как раз и есть полный аналог sh run :)

Выделим это в отдельный раздел, чтобы искать не надо было

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Спасибо, мой косяк. Ждём результатов! Кстати, clish понравился! Обязательно продолжите свои наработки по cli

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Кстати, оказывается наши ребята уже сделали форк http://libcode.org/projects/klish

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Боже, 400 евро за что?

 

Поломать вам малину и выложить в открытый доступ то что написал для себя?

 

Там ровно половина от того что есть у вас и я за это ничего не хочу.

Но проблема всё та же - это НЕ готовое решение.

Хотя и разгребает Q-in-Q без создания сабов, само вколачивает роуты, ойпи и маки в ядро - откуда их цапает всё что надо.

мониторит клиентов arping`ом, авторизирует по произвольному пакету, имеет белые списки сайтов (доступных при блокировки).

Встроенный dhcp сервер. пилю балансировку/резервирование.

Вчера доделал аналог бриджа для менеджмент влана - нужyо если коммутатор агрегации не умеет selective QinQ ;(

ещё всякая чепуха по мелочи. ;)

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

 

P. S.: Да-да это всё модуль ядра. user-space прокси осталась только для связи с биллингом ;) Хотя по сути можно просто генерить текстовичок который будет перечитываться модулем. Сам иду в торону TCP сессии между модулем и биллингом.

 

Любопытно. Выкладывайте, коль можете...

Если это проект, можно отдельной темой форума.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Никогда не делал ;)

Надо подумать как лучше.

Как проект это не оформлено - немного лишнего в коде, коментарии не в utf8, что-то забито статикой ;(

tar.bz2 выкладывать как-то не очень ;(

то-ли на гитхабе регаться толи что...

Я подумаю.

 

P.S. Надо ещё как-то вырезать специфичный для биллинга костыль ;)

В принципе за недельку две - оформить можно

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

В принципе за недельку две - оформить можно

Очень хотелось бы увидеть.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Никогда не делал ;)

Надо подумать как лучше.

Как проект это не оформлено - немного лишнего в коде, коментарии не в utf8, что-то забито статикой ;(

tar.bz2 выкладывать как-то не очень ;(

то-ли на гитхабе регаться толи что...

Я подумаю.

 

P.S. Надо ещё как-то вырезать специфичный для биллинга костыль ;)

В принципе за недельку две - оформить можно

Ждем-с!

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

2 VVsina - давай выкладывай хоть в таре хоть на гитхаб, готов ради такого дела денежно тебя простимулировать )

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

2arni Ну Вы то конечно, будет что подсмотреть ;)

 

martini, bomberman, KaraVan:

 

Ну как хотите, немного почикал, но вроде даже компиляется после этого.

форум не дал выкладывать файл как есть - пришлось дописать расширение ;)

В нескольких местах ойпи и порты забиты статиком - прошу учесть, грепается по слову todo

 

Если суметь засунуть туда конфиг то заработает ;)

конфиг суётся через проксю, её придётся точить напильником под ваши нужды ;)

 

P.S. Замечания, пожелания, здоровая критика приветствуются.

term.tar.bz2.txt

Изменено пользователем VVSina

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Благодарствуем, будем есть посмотреть :)

 

Нам точно будет интересно подглядеть, как лучше DHCP разгребать и как с ARP пакетами работаете (как раз начали разрабатывать обработку ARP).

с разгребанием qinq трафика придумать что-то новое сложно (если не патчить ядро), но тоже глянем!

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

;)

хех, интересно, что тогда у вас есть на самом деле, arp это первое что надо после того как сумели принять пакет, а вы его только начали делать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Не обязательно, на статических арпах можно все сделать.

у нас тесты q-in-q сабов сейчас так и бегают :P

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

2 VVSina - еще бы пример конфига, и мало-мальски что за что отвечает )

Ну и номер кошелька или куда бабулесы засылать обещанные )

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

конфиг льётся с биллинга через проксю, она подключается по tcp и полученный ответ без разбора пересовывает в netlink сокет - поэтому я и сказал что нужен напильник

конфиг описан структурой term_session_info см. term-nms-proxy/nl.h terminator/term.h

 

но перед заливкой самих сессий, надо влить подсети - см. struct term_subnet in term-nms-proxy/nl.h

 

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

P. S. : можно сделать какой-нибудь cmd или подсмотреть vtysh у зебры. Мне принципе незачем, но если сильно надо и будет время или заинтересуете можно и по колдовать ;)

 

что за что отвечает, эм... мне начать обзорную лекцию или будут конкретные наводки?

 

да кстати, кошелёк на paypal: мой ник гав-гав гмаил ком

Изменено пользователем VVSina

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

В качестве апдейта по статусу разработки :

 

Q-in-Q терминирование - сделано

Обработка ARP-пакетов - сделано

Обработка DHCP - еще делаем (пока будет нужен релей)

 

терминацию QinQ можно делать без привязки к сессиям, так что достаточно минимальной конфигурации :

 

topology interface unnumbered eth1 double1q
ipunnumbered route eth1 10.20 10.10.20.1 00:11:22:33:44:55
ipunnumbered route eth1 10.21 10.10.21.0/29 11:22:33:44:55:66

 

команда ipunnumbered show eth1 выводит следующее:

Current IP unnumbered interfaces on eth1 :
Sub-Interface               Route               Age    ARP (pkts/drp/limit) DHCP (pkts/drp/limit)
eth1.10.20                  10.10.20.11/32      30092                8/2/0               0/0/0
eth1.10.21                  10.10.20.21/32      30092                0/0/0               0/0/0

 

маршруты выглядят так :

10.10.20.0/24 dev eth1  proto kernel  scope link  src 10.10.20.254 
10.10.20.11 dev uspe0  scope link 
10.10.20.21 dev uspe0  scope link 
10.10.20.32/29 dev uspe0  scope link 

 

Драфт опций для управления :

ipunnumbered map <ifname> <s_vlan>[.<c_vlan>] <prefix> [<mac_addr>] 		Add IP Unnumbered Vlan/QinQ mapping
ipunnumbered map remove <ifname> <s_vlan>[.<c_vlan>] 				Remove IP Unnumbered Vlan/QinQ mapping
ipunnumbered map flush <ifname> 						Remove all IP Unnumbered Vlan/QinQ mappings on interface
ipunnumbered map list [<ifname>]						Display IP Unnumbered Vlan/QinQ mappings
ipunnumbered map lookup <ifname> <ip_addr>					Lookup IP Unnumbered Vlan/QinQ entries
ipunnumbered show <ifname> [<s_vlan>[.<c_vlan>]]				Display IP Unnumbered Vlan/QinQ entries
ipunnumbered detail <ifname> <s_vlan>[.<c_vlan>]				Display IP Unnumbered Vlan/QinQ entry
ipunnumbered clear <ifname> [<s_vlan>[.<c_vlan>]]				Clear IP Unnumbered Vlan/QinQ entries
ipunnumbered route <ifname> <s_vlan>[.<c_vlan>] <prefix> [<mac_addr>]		Create or add route to ip unnumbered interface
ipunnumbered set <ifname> <flags>						Set Unnumbered interface settings
ipunnumbered dump								Dump config

 

 

комментарии :

  • делаем сейчас чтобы мак-адрес в добавлении маршрута был не нужен (будет добавляться при первом пакете от клиента)
  • маршруты добавляются/удаляются автоматом
  • обработка ARP - внутри софта, системную ARP-таблицу не меняем.
  • тестовую версию не выкладываем, т.к. не готово к использованию - определенный функционал приходится добавлять,чтобы DHCP заработал без костылей типа дополнительных скриптов
  • управление на уровне каждого сабинтерфеса будет (не сделали еще на уровне uspe-client)
  • ipunnumbered map будет использоваться для списка клиентов, чтобы не бегать лишний раз к Радиусу и не держать все сабы активными

 

Поправьте нас, если начали копать не туда :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

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

Будем делать примерно так :

 

dhcp-relay <ifname> [source <ipaddr>] remote <ip-addr:port> opt82 <drop|keep|replace>
dhcp-relay <ifname> [source <ipaddr>] remote none

 

при этом, dhcp-reply пакеты будут фильтроваться, если приходят с subscriber-интерфесов.

PS <ifname> - физический интерфейс, но на уровне сабов можно будет отключить прием DHCP-пакетов

 

дайте знать, если что-то упустили

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

а зачем <ifname> ? нужно то указать адрес дхцп сервера, и адрес от которого будет пересылка, все остальное субскрайберы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

можно будет на разные DHCP-сервера отправлять запросы с каждого интерфеса. далеко не всегда надо, но бывает полезно. Да хоть для тестов например :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

то есть его не обязательно будет указывать ? я к тому что если будет больше сотни интерфейсов..

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

больше сотни физических интерфейсов? :)

релей подключать будем на физический интерфейс и сразу для всех сабинтерфейсов. Но можно будет отключить на отдельных сабах/вланах.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Кстати, шейпер по направлениям возможен?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.