breusovok Опубликовано 7 октября, 2009 · Жалоба Мы тоже доработали скрипт dhcp2radius, вместо pgsql стоит perl+mysql. Так как намного гибче. Авторизует как по свитч+порт, так и просто по мак. Все легко настраивается, работает с netup. Механизм такой:-при запросе ищем абонента по порту и свитчу либо по маку. Абонента нет - абоненту выдаем временные настройки с fake-dns, который на любой запрос выдает ip сервера авторизации компа. Там абонент вводит Логин/пароль- и его мак или свитч/порт автоматом к его учетке привязываются. После перезагрузки компа ему уже выдаются его настройки. Блин, как раз занимаюсь тем, что надо поднять DHCP в сети. Сейчас пробую сабж, но есть сложности: биллинг на mysql, хотелось бы оставить базу DHCP тоже на мускуле, а то городить pgsql-скрипт-mysql совсем не хочется. Не поделителсь ли модифицированной версией скрипта, либо ее частью, которая связывает radius и mysql? Заранее благодарен! P.S. ответ либо суда, либо на мыло breusovok(собака)mail(точка)ru Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Negator1983 Опубликовано 7 октября, 2009 · Жалоба Вопрос такой есть готовый Dhcp(MysqlPgsql) кто сколько готов заплатить ??? (смешные цифры не называть ... написав это решение я убил кучу времени поэтому хочу за это денег вроде бы все как должно было бы быть ) решение без костылей готовый сервер тестился на боевой сети 8000 абонентов. 30 - 50 запросов\с предел был 170/c и не надо бесплатно канючить ... бесплатно юзать можно только грабли которых кучя =) а решать вам. Сколько хотите денег ? Какое оборудование должно стоять в сети ? Как мы его привяжем к нашей базе абонентов которая ведётся пока в MS Access ? Поможете ? Решение я оценил в 150 $ полностью рабочее естественно с зашыфрованым исходным кодом ... Во первых помочь в чём именно ? связать сервер с MS Access ??? за дополнительные деньги можно и в космос полететь. а что у вас щас стоит ? MS Access и все ???? Помочь в реализации Есть база абонентов(MYSQL), каждому надо выдавать адрес прописанный в базе исходя из номера свича и порта(прописаны в базе). Соответсвенно все свичи релеят запросы с opt82 на сервер. Ничего больше не надо. Собственно надо будет связаться с нашим админом, обяьснить как все работает, осуществить первичную настройку. Пока делаем стандартным способом - скриптом из данных базы генерим конфиг dhcp сервера на основе opt 82 и дергаем dhcpd но столкнулист с проблемой выдачи одного адреса в пуле, когда абонент вытащив провод не может снова получить адрес. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Saper Опубликовано 7 октября, 2009 · Жалоба Помочь в реализацииЕсть база абонентов(MYSQL), каждому надо выдавать адрес прописанный в базе исходя из номера свича и порта(прописаны в базе). Соответсвенно все свичи релеят запросы с opt82 на сервер. Ничего больше не надо. Собственно надо будет связаться с нашим админом, обяьснить как все работает, осуществить первичную настройку. Пока делаем стандартным способом - скриптом из данных базы генерим конфиг dhcp сервера на основе opt 82 и дергаем dhcpd но столкнулист с проблемой выдачи одного адреса в пуле, когда абонент вытащив провод не может снова получить адрес. А сколько вы готовы за это заплатить ? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Negator1983 Опубликовано 7 октября, 2009 · Жалоба Данных из этого топика достаточно чтобы сделать все самим. Таким образом если цена окажется дешевле чем собственные разработки - то мы готовы заплатить Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
ibis Опубликовано 8 октября, 2009 · Жалоба Столкнулся с багом в этом патче. Если в конфигурации isc-dhcpd указать любое значение для radius-cache-ttl, то dhcpd не поднимается с криком PATCH ERROR: invalid 'cache ttl' length: 4 must be: 8 подозреваю, что это из-за платформы FreebSD amd64. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
~nix~ Опубликовано 9 октября, 2009 · Жалоба 2~nix~ Если не трудно расскажите подробнее о своей разработке. Можно ли использовать opt82? Можно ли использовать произвольные option? как в isc-dhcpd? Структура БД фиксированная или можно гибко адаптировать к своей? Извеняюсь что долго не отвечал был занят переписывал dummynet + em есле кому интересно пропустил довольно интересное количества трафика ))) 78 Мб\с юзеров 3500 на 1 сервере вертиться нат + шейпинг. ( соглашаюсь с jab ng_car кака... ) ( немного не по теме не пинать ... )option82 легко изначально и был написан под него а потом добавилось все остальное щас все как в isc-dhcp. структура запросов + таблиц хранится в конфиге поетому с адаптацыей под свою базу быть не должно. сейчас занимаюсь подробным документированием так как моим dhcp сервером заинтересовались иностранцы. З.Ы. я немного crazy админ+программер ... потому люблю создавать и ковырять все что написано не так как надо мне и другим ))) Вопрос такой есть готовый Dhcp(MysqlPgsql) кто сколько готов заплатить ??? (смешные цифры не называть ... написав это решение я убил кучу времени поэтому хочу за это денег вроде бы все как должно было бы быть ) решение без костылей готовый сервер тестился на боевой сети 8000 абонентов. 30 - 50 запросов\с предел был 170/c и не надо бесплатно канючить ... бесплатно юзать можно только грабли которых кучя =) а решать вам. Сколько хотите денег ? Какое оборудование должно стоять в сети ? Как мы его привяжем к нашей базе абонентов которая ведётся пока в MS Access ? Поможете ? Решение я оценил в 150 $ полностью рабочее естественно с зашыфрованым исходным кодом ... Во первых помочь в чём именно ? связать сервер с MS Access ??? за дополнительные деньги можно и в космос полететь. а что у вас щас стоит ? MS Access и все ???? Помочь в реализации Есть база абонентов(MYSQL), каждому надо выдавать адрес прописанный в базе исходя из номера свича и порта(прописаны в базе). Соответсвенно все свичи релеят запросы с opt82 на сервер. Ничего больше не надо. Собственно надо будет связаться с нашим админом, обяьснить как все работает, осуществить первичную настройку. Пока делаем стандартным способом - скриптом из данных базы генерим конфиг dhcp сервера на основе opt 82 и дергаем dhcpd но столкнулист с проблемой выдачи одного адреса в пуле, когда абонент вытащив провод не может снова получить адрес. не вопрос вам дока по серверу нужна ? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
nicol@s Опубликовано 14 октября, 2009 (изменено) · Жалоба Ребят, подскажите куда копнуть...3й день пытаюсь запустить данную схему... Поставил PostgreSQL Server 8.3, Client 8.3, Freeradius 2.1.7...делаю все мо мануалу..в логах radius вижу Wed Oct 14 16:39:59 2009 : Info: rlm_sql (sql): Driver rlm_sql_postgresql (module rlm_sql_postgresql) loaded and linked Wed Oct 14 16:39:59 2009 : Info: rlm_sql (sql): Attempting to connect to postgres@127.0.0.1:/dhcp Wed Oct 14 16:39:59 2009 : Info: Ready to process requests. Wed Oct 14 16:44:11 2009 : Error: rlm_sql_getvpdata: database query error Wed Oct 14 16:44:11 2009 : Error: [sql] SQL query error; rejecting user В логах dhcpd.log: Oct 14 16:44:11 testbilling dhcpd: Convert DHCPDISCOVER 00:1a:4b:74:dd:a6/10.1.10.253 to RADIUS and forwarded to 127.0.0.1 Oct 14 16:44:38 testbilling last message repeated 3 times Oct 14 16:45:41 testbilling last message repeated 4 times Oct 14 16:51:19 testbilling last message repeated 4 times Список пользователей PSQL: dhcp=# select * from pg_shadow; usename | usesysid | usecreatedb | usesuper | usecatupd | passwd | valuntil | useconfig ----------+----------+-------------+----------+-----------+--------+----------+----------- postgres | 10 | t | t | t | | | radius | 16386 | f | f | f | | | Список баз: List of databases Name | Owner | Encoding -----------+----------+----------- dhcp | postgres | SQL_ASCII postgres | postgres | SQL_ASCII template0 | postgres | SQL_ASCII template1 | postgres | SQL_ASCII test | postgres | SQL_ASCII (5 rows) Из sql.conf: sql { <------># <------># Set the database to one of: <------># <------>#<----->mysql, mssql, oracle, postgresql <------># <------>database = "postgresql" <------># <------># Which FreeRADIUS driver to use. <------># <------>driver = "rlm_sql_${database}" <------># Connection info: <------>server = "127.0.0.1" <------>#port = 3306 <------>login ="postgres" <------>password ="1234" Конфиг dhcpd.conf: ddns-update-style interim; use-dhcp2radius true; radius-servers localhost; radius-secret dhcpdsecret; radius-password 1234; #radius-server-restore 1000; #radius-port 1812; #radius-client-freq 4; #radius-freq-summ 10; #radius-cache-ttl 86400; #radius-update-arp false; #radius-cache-maxlen 3000; #radius-allow-cache true; #radius-allow-dynamic-cache false; #radius-use-mac-delimiter false; radius-send-opts-to-srv 82; Изменено 14 октября, 2009 пользователем nicol@s Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
breusovok Опубликовано 30 октября, 2009 · Жалоба Хм, по-моему у меня такая же проблема. Конфиги все из примера, Ubuntu server 9.04, Freeradius 2.1.7, PostgreSQL Server 8.3, Client 8.3. в выводе радиуса вижу rad_recv: Access-Request packet from host 127.0.0.1 port 67, id=232, length=68 User-Name = "001c10591424" User-Password = "radius" NAS-Port = 3232299731 DHCP-Message-Type = 0x01 +- entering group authorize {...} expand: %{User-Name} -> 001c10591424 [sql] sql_set_user escaped user --> '001c10591424' rlm_sql (sql): Reserving sql socket id: 3 expand: SELECT id, UserName, Attribute, Value, ':=' AS Op FROM dhcpcheck WHERE id = (SELECT get_id('%{SQL-User-Name}', %{NAS-Port}, btrim('%{DHCP-Message-Type}', '0x')::int2)) ORDER BY id -> SELECT id, UserName, Attribute, Value, ':=' AS Op FROM dhcpcheck WHERE id = (SELECT get_id('001c10591424', 3232299731, btrim('0x01', '0x')::int2)) ORDER BY id rlm_sql_postgresql: Status: PGRES_TUPLES_OK rlm_sql_postgresql: query affected rows = 1 , fields = 5 [sql] User found in radcheck table expand: SELECT id, client_hw_addr, Attribute, Value, ':=' AS Op FROM dhcp_reply WHERE client_hw_addr = '%{SQL-User-Name}' AND server_addr = %{NAS-Port} UNION SELECT id, NULL AS client_hw_addr, Attribute, Value, ':=' AS Op FROM interfaces WHERE client_subnet = ( SELECT client_subnet FROM dhcp_reply WHERE client_hw_addr = '%{SQL-User-Name}' AND server_addr = %{NAS-Port} AND attribute = 'DHCP-Your-IP-Address' LIMIT 1 ) ORDER BY id -> SELECT id, client_hw_addr, Attribute, Value, ':=' AS Op FROM dhcp_reply WHERE client_hw_addr = '001c10591424' AND server_addr = 3232299731 UNION SELECT id, NULL AS client_hw_addr, Attribute, Value, ':=' AS Op FROM interfaces WHERE client_subnet = ( SELECT client_subnet FROM dhcp_reply WHERE client_hw_addr = '001c10591424' AND server_addr = 3232299731 AND attribute = 'DHCP-Your-IP-Address' LIMIT 1 ) ORDER BY id rlm_sql_postgresql: Status: PGRES_TUPLES_OK rlm_sql_postgresql: query affected rows = 2 , fields = 5 rlm_sql (sql): Released sql socket id: 3 ++[sql] returns ok !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!! Replacing User-Password in config items with Cleartext-Password. !!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!! Please update your configuration so that the "known good" !!! !!! clear text password is in Cleartext-Password, and not in User-Password. !!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! WARNING: Please update your configuration, and remove 'Auth-Type = Local' WARNING: Use the PAP or CHAP modules instead. User-Password in the request does NOT match "known good" password. Failed to authenticate the user. Login incorrect: [001c10591424/radius] (from client localhost port 3232299731) Using Post-Auth-Type Reject +- entering group REJECT {...} expand: %{User-Name} -> 001c10591424 attr_filter: Matched entry DEFAULT at line 11 ++[attr_filter.access_reject] returns updated Delaying reject of request 1 for 1 seconds Going to the next request Waking up in 0.9 seconds. Sending delayed reject for request 1 Sending Access-Reject of id 232 to 127.0.0.1 port 67 Waking up in 0.9 seconds. Cleaning up request 0 ID 34 with timestamp +14 Waking up in 3.9 seconds. В чем грабли? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Dyr Опубликовано 30 октября, 2009 · Жалоба естественно с зашыфрованым исходным кодом ...А слова GPL вам что-нибудь говорят, кстати? По теме - у нас тоже написан самописный DHCP-сервер с 82 и хранением БД в MySQL, только выборка всё же идёт оттуда только при изменениях. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
breusovok Опубликовано 1 ноября, 2009 · Жалоба Хм, после модификации секции post_auth{} радиус - сервер стал сообщать ДХЦП нужные атрибуты, но со статусом REJECT. Соответственно DHCP говорит, REJECT - значит ничего нет для данного клиента. Как заставить радиус сказать ACCEPT и передать атрибуты? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Saper Опубликовано 22 февраля, 2010 · Жалоба Вобщем понятно что у нескольких уже есть свои dhcp-сервера с Opt82 и SQL, разных реализаций под разные платформы с разной тормознутостью. В том числе и у нас есть :-) Но все жмутся выложить это ценное ПО, потому что оно даст другим, возможно конкурентам преимущество или убьёт своё преимущество, а ещё оно стоит денег и им заинтересовались даже иностранцы :-) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
vitalyb Опубликовано 22 февраля, 2010 · Жалоба Saper Кроме этого нужно написать развернутую инструкцию по внедрению, по использованию и по программированию. А потом заниматься поддержкой как и разного рода "внедренцев", так и всевозможного чудесатого оборудования. Это если специфика совпадает, а если все привыкли работать по-разному и сервер больше заточен "под себя" - вообще финиш. :) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Saper Опубликовано 22 февраля, 2010 · Жалоба DHCP это стандарт, Opt 82 тоже стандарт. Как бы не была организована работа, всё "внедрение" сводится к получению единственной таблицы вида "айпишник, параметры Opt 82". Честно говоря, если данные есть, на это у меня ушло бы не больше получаса независимо от сервера БД, структуры и прочего, после чего трогать ничего не нужно вообще. Вот много денег бы кто дал (иностранцы например :-)) за такую охренительно полезную вещь, я как все - бесплатно не работаю :-) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
vitalyb Опубликовано 22 февраля, 2010 · Жалоба DHCP это стандарт, Opt 82 тоже стандарт.Ага, я тоже так думал сначала 8) А потом узнал много новых его вариантов чтения, понимания "само-собой разумеющихся" частей и особенностей реализации. Даже draft-ietf-dhc-implementation - не последняя инстанция, у некоторых всеравно свое видение. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Saper Опубликовано 23 февраля, 2010 (изменено) · Жалоба Вы хотя бы намекните про что вы. У меня всё совпало вот с этим - http://tools.ietf.org/html/rfc2131 и этим http://tools.ietf.org/html/rfc2132 Изменено 23 февраля, 2010 пользователем Saper Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
vitalyb Опубликовано 23 февраля, 2010 · Жалоба Saper http://tools.ietf.org/html/draft-ietf-dhc-implementation-02 - это набор официальных уточнений к реализации RFC2131. Кроме того, некоторым клиентам важен порядок опций (message type - первая, opt82 - последняя); есть два разных стиля leasequery (rfc и draft); некоторые железки частично забивают на lease time в leasequery (и клиент отваливается раньше времени); запросы после релея идут с 68 порта, а не с 67; релей выставляет giaddr, но пакет идет в общем вилане, а не в менеджменте (соответственно отвечать надо не юникастом на giaddr, а как обычно, как будто релея и нет); и т.д. вплоть до "формат opt82 зависит от версии прошивки". Я потом появляется MS RRAS, который если не отфильтровать тоже кровушки попьет. Собственно, каждая железка (Cisco uBR/CASA/Zyxel/"китай c opt82") даже небольшой, но свой прибабах имеет. Думаю от разношерстных IPTV STB/PacketCable CPE тоже можно ожидать набора маленьких граблей :) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Saper Опубликовано 23 февраля, 2010 · Жалоба Обалдеть, где ж вы такой зоопарк собрали. Вообще существуют сети которые используют как коммутатор доступа Cisco/CASA/Zyxel/"китай c opt82" ? А что за модели ? В качестве клиента я думаю будет правдой сказать что Windows, домашние роутеры и приставка AminoNet это 99% всего, у нас без проблем получают и те и другие, всем отсылается одно и тоже. Мне кажется вы преувеличиваете, я вообще с описанными вами проблемами не столкнулся. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
vitalyb Опубликовано 23 февраля, 2010 (изменено) · Жалоба Saper У нас разные технологии, и "голого" ethernet'а сейчас вообще нет, а список выше - на чем проводились испытания/допиливания. Реально живут сейчас доксис и hpna. Сервер же "один", точнее база одна общая, а серверов-"пользователей базы" несколько. А с клиентами да, проблем обычно нет. Собственно, я только хотел обратить ваше внимание, что есть нюансы и поддерживать постоянно прийдется, а то иностранцы денег не дадут :) Interoperability - штука коварная... Изменено 23 февраля, 2010 пользователем vitalyb Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Saper Опубликовано 23 февраля, 2010 (изменено) · Жалоба Реально живут сейчас доксис и hpna. Собственно, я только хотел обратить ваше внимание, что есть нюансы и поддерживать постоянно прийдется, а то иностранцы денег не дадут :) Я с такими древними иностранцами работать не согласный - забирайте их себе, мне отдайте новых и богатых ethernet-иностранцев. Изменено 23 февраля, 2010 пользователем Saper Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Dyr Опубликовано 24 февраля, 2010 · Жалоба Saper, я бы выложил, но разработка не моя. Сегодня спрошу, можно ли зарелизить, в случае положительного ответа выложу наш вариант. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Gunner Опубликовано 25 февраля, 2010 · Жалоба Saper, я бы выложил, но разработка не моя. Сегодня спрошу, можно ли зарелизить, в случае положительного ответа выложу наш вариант. Былоб неплохо. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
flash.one Опубликовано 5 марта, 2010 (изменено) · Жалоба Сегодня спрошу, можно ли зарелизить, в случае положительного ответа выложу наш вариант. Что с ответом? Ждем с нетерпением. Изменено 5 марта, 2010 пользователем flash.one Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Saper Опубликовано 7 марта, 2010 · Жалоба Могу прервать ваше нетерпение, но за деньги. Приобщитесь к избранным, владеющим секретным стратегическим ПО. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
terrible Опубликовано 8 марта, 2010 · Жалоба Хм, после модификации секции post_auth{} радиус - сервер стал сообщать ДХЦП нужные атрибуты, но со статусом REJECT. Соответственно DHCP говорит, REJECT - значит ничего нет для данного клиента. Как заставить радиус сказать ACCEPT и передать атрибуты? для начала привести дебаг радиуса в эти прекрасные моменты Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
point212 Опубликовано 8 июня, 2010 · Жалоба Обращение к гражданам, имеющий свой самописный DHCP-сервер с поддержкой БД, которые желают продать разработку в пользование - как поговорить о фичах и ценах? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...