Начата разработка модуля автоматической настройки DES-3526
Начата разработка модуля автоматической настройки DES-3526
Начата разработка модуля автоматической настройки коммутаторов D-Link DES-3526.
Модуль будет тесно интегрирован с БД биллинга, автоматическая настройка коммутаторов будет происходить почти сразу после изменений в биллинге. Оперативность, а также возможность определять не только текущие значения параметров, но и значения, предшествовавшие изменениям в БД биллинга, достигается благодаря использованию хранимых процедур и триггеров.
Планируется реализовать следующие функции:
- создание, изменение, удаление привязки IP-MAC-Port;
- создание, изменение, удаление ACL, разрешающего доступ в Интернет.
Вышеперечисленные функции будут выполняться автоматически при наступлении одного или нескольких из следующих событий:
- при изменении, добавлении, удалении IP и MAC адресов пользователя (таблица БД ip_groups);
- при изменении IP-адреса или номера порта коммутатора, к которому привязан пользователь (таблица БД users);
- при создании и удалении учётной записи пользователя, а так же услуг передачи данных (таблица БД iptraffic_service_links);
- при изменении баланса счёта пользователя (таблица БД accounts).
Управление коммутаторами будет производиться через CLI (Telnet). В качестве СУБД будет использоваться PostgreSQL-8.1, дополнительные программы будут разрабатываться на языке Perl.
Возможность поддержки СУБД MySQL - под вопросом, необходимо проводить дополнительное исследование возможностей этой СУБД.
Возможность управления коммутаторами других марок и производителей, а также по другим протоколам, например, SNMP, также требует дополнительных исследований.
Желающие обсудить или материально поддержать проект - пишите.
Модуль будет тесно интегрирован с БД биллинга, автоматическая настройка коммутаторов будет происходить почти сразу после изменений в биллинге. Оперативность, а также возможность определять не только текущие значения параметров, но и значения, предшествовавшие изменениям в БД биллинга, достигается благодаря использованию хранимых процедур и триггеров.
Планируется реализовать следующие функции:
- создание, изменение, удаление привязки IP-MAC-Port;
- создание, изменение, удаление ACL, разрешающего доступ в Интернет.
Вышеперечисленные функции будут выполняться автоматически при наступлении одного или нескольких из следующих событий:
- при изменении, добавлении, удалении IP и MAC адресов пользователя (таблица БД ip_groups);
- при изменении IP-адреса или номера порта коммутатора, к которому привязан пользователь (таблица БД users);
- при создании и удалении учётной записи пользователя, а так же услуг передачи данных (таблица БД iptraffic_service_links);
- при изменении баланса счёта пользователя (таблица БД accounts).
Управление коммутаторами будет производиться через CLI (Telnet). В качестве СУБД будет использоваться PostgreSQL-8.1, дополнительные программы будут разрабатываться на языке Perl.
Возможность поддержки СУБД MySQL - под вопросом, необходимо проводить дополнительное исследование возможностей этой СУБД.
Возможность управления коммутаторами других марок и производителей, а также по другим протоколам, например, SNMP, также требует дополнительных исследований.
Желающие обсудить или материально поддержать проект - пишите.
Re: Начата разработка модуля автоматической настройки DES-35
нахрена это все? это решается написанием rfw скрипта который пихает в нужный коммутатор нужные SNMP строки и все..JetMouse писал(а):Начата разработка модуля автоматической настройки коммутаторов D-Link DES-3526.
Модуль будет тесно интегрирован с БД биллинга, автоматическая настройка коммутаторов будет происходить почти сразу после изменений в биллинге. Оперативность, а также возможность определять не только текущие значения параметров, но и значения, предшествовавшие изменениям в БД биллинга, достигается благодаря использованию хранимых процедур и триггеров.
Планируется реализовать следующие функции:
- создание, изменение, удаление привязки IP-MAC-Port;
- создание, изменение, удаление ACL, разрешающего доступ в Интернет.
Вышеперечисленные функции будут выполняться автоматически при наступлении одного или нескольких из следующих событий:
- при изменении, добавлении, удалении IP и MAC адресов пользователя (таблица БД ip_groups);
- при изменении IP-адреса или номера порта коммутатора, к которому привязан пользователь (таблица БД users);
- при создании и удалении учётной записи пользователя, а так же услуг передачи данных (таблица БД iptraffic_service_links);
- при изменении баланса счёта пользователя (таблица БД accounts).
Управление коммутаторами будет производиться через CLI (Telnet). В качестве СУБД будет использоваться PostgreSQL-8.1, дополнительные программы будут разрабатываться на языке Perl.
Возможность поддержки СУБД MySQL - под вопросом, необходимо проводить дополнительное исследование возможностей этой СУБД.
Возможность управления коммутаторами других марок и производителей, а также по другим протоколам, например, SNMP, также требует дополнительных исследований.
Желающие обсудить или материально поддержать проект - пишите.
Re: Начата разработка модуля автоматической настройки DES-35
А у вас в сети один коммутатор, или несколько сотен? Если не один, то для каждого коммутатора вам придётся в админке прописывать свои правила firewall, либо для каждого коммутатора запускать отдельный процесс rfw.Magnum72 писал(а): нахрена это все? это решается написанием rfw скрипта который пихает в нужный коммутатор нужные SNMP строки и все..
Кроме того, rfw можно использовать для включения/выключения доступа в Интернет в зависимости от баланса счёта, но не для автоматической смены привязки IP-MAC-Port на коммутаторе в случае, например, смены MAC-адреса абонента сети.
У нас используется самописный скрипт на bash. Работает по SNMP. Прописывает правила в IP-MAC-PORT-Binding.
Логика работы такая:
1) Если клиент заблокирован админской блокировкой, или стоит системная блокировка более недели - удаляем правило с коммутатора.
2) Если клиент не заблокирован, или стоит системная блокировка менее недели - оставляем/добавляем правило на коммутаторе.
3) Списки тех, кого нужно заблокировать и кого разблокировать формируются запросами к базе биллинга каждые 15 минут.
4) Загрузка полного списка с коммутатора по SNMP занимает достаточно много времени и подгружает сам коммутатор. Поэтому в первый раз скрипт забирает полный список правил с коммутатора, а посылает на него уже только изменения относительно этого списка. Синхронизация обоих списков (локального и того, что на коммутаторе) происходит раз в сутки, либо если коммутатор перезагружался (проверяется по Uptime).
З.Ы. Были планы сделать управление в реальном времени (в последних версиях биллинга добавили реакцию на событие "Блокировка"), и сделать скрипт модульным - чтобы можно было управлять разными коммутаторами (например, есть еще DES-3828). Но все руки не доходят. Да и на bash особо не развернешся, а perl знаю очень поверхностно.
Логика работы такая:
1) Если клиент заблокирован админской блокировкой, или стоит системная блокировка более недели - удаляем правило с коммутатора.
2) Если клиент не заблокирован, или стоит системная блокировка менее недели - оставляем/добавляем правило на коммутаторе.
3) Списки тех, кого нужно заблокировать и кого разблокировать формируются запросами к базе биллинга каждые 15 минут.
4) Загрузка полного списка с коммутатора по SNMP занимает достаточно много времени и подгружает сам коммутатор. Поэтому в первый раз скрипт забирает полный список правил с коммутатора, а посылает на него уже только изменения относительно этого списка. Синхронизация обоих списков (локального и того, что на коммутаторе) происходит раз в сутки, либо если коммутатор перезагружался (проверяется по Uptime).
З.Ы. Были планы сделать управление в реальном времени (в последних версиях биллинга добавили реакцию на событие "Блокировка"), и сделать скрипт модульным - чтобы можно было управлять разными коммутаторами (например, есть еще DES-3828). Но все руки не доходят. Да и на bash особо не развернешся, а perl знаю очень поверхностно.
Re: Начата разработка модуля автоматической настройки DES-35
Маленькое дополнение.JetMouse писал(а):Начата разработка модуля автоматической настройки коммутаторов D-Link DES-3526.
Ещё будет реализована функция выгрузки конфигурации коммутатора на сервер TFTP сразу после изменения конфигурации коммутатора. А при включении и при перезагрузке коммутаторы будут автоматически загружать актуальную конфигурацию с сервера TFTP. Таким образом, производить каждый раз сохранение текущей конфигурации в NVRAM коммутатора будет необязательно, и можно существенно продлить срок службы NVRAM. Если мне не изменяет память, у DES-3526 он ограничен 100 тысячами циклов записи.
Как я понимаю, ваш скрипт управляет только IP-MAC-PORT Binding, но не доступом в Интернет, либо пользователи, для которых не включен IP-MAC-PORT Binding не имеют доступа даже в локалку?Ata-man писал(а):У нас используется самописный скрипт на bash. Работает по SNMP. Прописывает правила в IP-MAC-PORT-Binding.
Логика работы такая:
1) Если клиент заблокирован админской блокировкой, или стоит системная блокировка более недели - удаляем правило с коммутатора.
2) Если клиент не заблокирован, или стоит системная блокировка менее недели - оставляем/добавляем правило на коммутаторе.
3) Списки тех, кого нужно заблокировать и кого разблокировать формируются запросами к базе биллинга каждые 15 минут.
скоро прийдётся решать такую-же задачу....
плюс вот собираемся прикупить netup(лив СД получили, щас будем ставить разбираться)
имеем сеть с кучей 3526 (1-2 свича на дом) они на уровне пользователя, авторизация выхода в инет на сервере спомощью проги UTM5 Tray, а подключение и отключение юзеров-при минусовом счёте с помощью отключение на порту 3526 на порту привязка порт-IP, либо порт-vlan-ip с помощью АСL настройка с помощью SNMP... прописывать ip-mac-port считаю не правильным...ибо юзеру дается ип и он включен в порт... и дело самого юзера что включать в розетку.. ноут... роутер... точка доступа...РС... а для исключения конфликтов ipов есть привязка порт-ip...
вот теперь буду думать как в билинге прописывать номер коммутатора, номер порта... еще нужно сопоставить номер свича с IP свича...на данный момент делаю скрипт на перле...
Считаю на данных коммутаторах необходима только такая схема... каждому юзеру статический ип(я свчитаю такую систему более правильной но DHCP сервер тоже ок), он прописывается вручную, на коммутаторах прописывается ACL правило IP-порт...
user1---sw3526-1-1
user2---sw3526-1-2
user3---sw3526-1-3
-----------свичь ядра---роутер---
user34---sw3526-2-1
user35---sw3526-2-2
user36---sw3526-2-3
критика приветствуется... и давайте писать-выкладывать что у нас получилось...
плюс вот собираемся прикупить netup(лив СД получили, щас будем ставить разбираться)
имеем сеть с кучей 3526 (1-2 свича на дом) они на уровне пользователя, авторизация выхода в инет на сервере спомощью проги UTM5 Tray, а подключение и отключение юзеров-при минусовом счёте с помощью отключение на порту 3526 на порту привязка порт-IP, либо порт-vlan-ip с помощью АСL настройка с помощью SNMP... прописывать ip-mac-port считаю не правильным...ибо юзеру дается ип и он включен в порт... и дело самого юзера что включать в розетку.. ноут... роутер... точка доступа...РС... а для исключения конфликтов ipов есть привязка порт-ip...
вот теперь буду думать как в билинге прописывать номер коммутатора, номер порта... еще нужно сопоставить номер свича с IP свича...на данный момент делаю скрипт на перле...
Считаю на данных коммутаторах необходима только такая схема... каждому юзеру статический ип(я свчитаю такую систему более правильной но DHCP сервер тоже ок), он прописывается вручную, на коммутаторах прописывается ACL правило IP-порт...
user1---sw3526-1-1
user2---sw3526-1-2
user3---sw3526-1-3
-----------свичь ядра---роутер---
user34---sw3526-2-1
user35---sw3526-2-2
user36---sw3526-2-3
критика приветствуется... и давайте писать-выкладывать что у нас получилось...
2 JetMouse
Управление сделано только IP-MAC-Binding, но у него есть определенные ограничения - например нельзя вбить один IP-адрес с двумя разными маками. В связи с этим думаем вместо IP-MAC-Binding перейти на использование ACL.
З.Ы. Насчет сохранения конфига по TFTP - как часто оно будет происходить? Если после каждого изменения, то боюсь долго TFTP не протянет - на форуме д-линка видел проблему с частым сохранением конфигов. Было настроено сохранение конфига по TFTP каждый день в итоге после 20-30 сохранений TFTP сервис на коммутаторе подвисал. + Это лишний раз подгружает коммутатор.
Именно поэтому мы и не стали использовать эту возможность, а ограничились только локальными конфигами.
В принципе, да. На коммутаторе происходит только "полная блокировка" для абонентов, долго не плативших или попавших в администраторскую блокировку. Блокировка доступа в и-нет происходит уже на маршрутизаторе.Как я понимаю, ваш скрипт управляет только IP-MAC-PORT Binding, но не доступом в Интернет, либо пользователи, для которых не включен IP-MAC-PORT Binding не имеют доступа даже в локалку?
Управление сделано только IP-MAC-Binding, но у него есть определенные ограничения - например нельзя вбить один IP-адрес с двумя разными маками. В связи с этим думаем вместо IP-MAC-Binding перейти на использование ACL.
З.Ы. Насчет сохранения конфига по TFTP - как часто оно будет происходить? Если после каждого изменения, то боюсь долго TFTP не протянет - на форуме д-линка видел проблему с частым сохранением конфигов. Было настроено сохранение конфига по TFTP каждый день в итоге после 20-30 сохранений TFTP сервис на коммутаторе подвисал. + Это лишний раз подгружает коммутатор.
Именно поэтому мы и не стали использовать эту возможность, а ограничились только локальными конфигами.
А как в таком случае будут авторизоваться, например, IP-телефоны?AdmUser писал(а):авторизация выхода в инет на сервере спомощью проги UTM5 Tray
Иногда нет возможности выделить на каждого абонента порт на управляемом коммутаторе, приходится подключать к порту DES-3526 коммутатор попроще, а абонентов - через эту "мыльницу", в этом случае привязка с учётом MAC-адреса необходима. Хорошо, если в вашей сети нет таких трудностей.AdmUser писал(а):прописывать ip-mac-port считаю не правильным...ибо юзеру дается ип и он включен в порт... и дело самого юзера что включать в розетку.. ноут... роутер... точка доступа...РС... а для исключения конфликтов ipов есть привязка порт-ip...
В последней версии UTM5 можно привязать пользователя к заданному порту заданного коммутатора (/Пользователи и группы/Пользователи/Редактировать/Дополнительно).AdmUser писал(а):вот теперь буду думать как в билинге прописывать номер коммутатора, номер порта
Если делать блокировку доступа в Интернет на коммутаторах, можно очень сильно разгрузить маршрутизаторы. По-моему, при нескольких тысячах абонентов, это вполне оправдано.Ata-man писал(а):2 JetMouse
В принципе, да. На коммутаторе происходит только "полная блокировка" для абонентов, долго не плативших или попавших в администраторскую блокировку. Блокировка доступа в и-нет происходит уже на маршрутизаторе.Как я понимаю, ваш скрипт управляет только IP-MAC-PORT Binding, но не доступом в Интернет, либо пользователи, для которых не включен IP-MAC-PORT Binding не имеют доступа даже в локалку?
Да, хорошо, что хотя бы можно несколько разных IP привязать к одному маку.Ata-man писал(а):Управление сделано только IP-MAC-Binding, но у него есть определенные ограничения - например нельзя вбить один IP-адрес с двумя разными маками. В связи с этим думаем вместо IP-MAC-Binding перейти на использование ACL.
Не знал об этом, спасибо за информацию. Посмотрел на форуме D-Link (http://forum.dlink.ru/viewtopic.php?t=3 ... 0%B8%D1%81). Похоже, что эта проблема решена.Ata-man писал(а):З.Ы. Насчет сохранения конфига по TFTP - как часто оно будет происходить? Если после каждого изменения, то боюсь долго TFTP не протянет - на форуме д-линка видел проблему с частым сохранением конфигов. Было настроено сохранение конфига по TFTP каждый день в итоге после 20-30 сохранений TFTP сервис на коммутаторе подвисал. + Это лишний раз подгружает коммутатор.
Именно поэтому мы и не стали использовать эту возможность, а ограничились только локальными конфигами.
-
- Сообщения: 116
- Зарегистрирован: Вт май 15, 2007 12:50
У нас сейчас отрабатывает несколько скриптов для блокировки, которая осуществляется на роутерах (Dlink 3612):
1-й скрипт выдирает из базы тех, у кого не заблокирован аккаунт
2-й скрипт парсит файл с плательщиками и раскидывает их по подсетям для заливки на роутеры
Заливается всё telnet'ом, так быстрее и не так загружает роутеры... Также реализован доступ к личному кабинету и сайту компании при отрицательном балансе...
1-й скрипт выдирает из базы тех, у кого не заблокирован аккаунт
2-й скрипт парсит файл с плательщиками и раскидывает их по подсетям для заливки на роутеры
Заливается всё telnet'ом, так быстрее и не так загружает роутеры... Также реализован доступ к личному кабинету и сайту компании при отрицательном балансе...