dadv: (Default)
[personal profile] dadv

ВНЕЗАПНО осознал, что в протоколе RADIUS идентификатор запроса/ответа - 8-битное поле. Поэтому идея транслировать DHCP-запросы в RADIUS-запросы для крупных сетей порочна изначально - более чем 256 одновременных запросов от одного DHCP-сервера к одному RADIUS-серверу независимо от мощностей оборудования делать нельзя без какого-нибудь хитрого мультиплексирования (типа тысячи IP-алиасов на DHCP-сервере), что тоже криво само по себе.

Интересно, насколько хорошо работает FreeRADIUS в роли транслятора между DHCP-протоколом и базой MS SQL. И бывают ли другие трансляторы такого сорта.

Date: 2011-11-30 09:12 (UTC)
From: [identity profile] fuflolog.livejournal.com
Что-то не пойму, что ты пытаешься соорудить и с какой целью. Выдачу IP адресов для некоей крупной подсети через RADIUS? А зачем?

Date: 2011-11-30 09:59 (UTC)
From: [identity profile] dadv.livejournal.com
Мне нужно решение такой задачи: на циску в роли DHCP-релея приходит куча DHCP-запросов с option 82, нужен софт, который слазит с этими данным в MS SQL, запустит там хранимую процедуру и в зависимости от результата выдаст адрес или нет.

Первая попытка была "свести задачу к уже решенной" путем конверсии DHCP-запросов в RADIUS-запросы и ответы обратно. Не масштабируемо оказалось.

Date: 2011-11-30 11:29 (UTC)
From: [identity profile] fuflolog.livejournal.com
А просто тупо перенаправлять все эти запросы на DHCP сервер нельзя?

Date: 2011-11-30 11:33 (UTC)
From: [identity profile] dadv.livejournal.com
Можно. Вся проблема в том, чтобы найти DHCP-сервер, умеющий ходить в MS SQL.

Date: 2011-11-30 11:44 (UTC)
From: [identity profile] fuflolog.livejournal.com
Как часто обновляется база MS SQL?

Date: 2011-11-30 11:49 (UTC)
From: [identity profile] dadv.livejournal.com
Часто. Платеж может прийти в любую минуту и часто таки и приходит.

Date: 2011-11-30 15:16 (UTC)
From: [identity profile] fuflolog.livejournal.com
То есть вручную заданный IP адрес позволяет с платежами на заморачиваться? Мне нравится эта идея.

Теоретически, DHCP сервер с управлением из командной строки и скрипт, лазающий в MS SQL могут выдать приличный результат. Но могут и неприличный.

Date: 2011-11-30 16:13 (UTC)
From: [identity profile] dadv.livejournal.com
> То есть вручную заданный IP адрес позволяет с платежами на заморачиваться?

Если это намёк про работу нахаляву, то ничего не выйдет - циска прописывает маршрут /32 для выданного IP-адреса в vlan юзера только после собственно выдачи адреса.

Date: 2011-11-30 21:54 (UTC)
From: [identity profile] fuflolog.livejournal.com
Каким образом она это делает? Если обычным способом - один VLAN на юзера, и когда в VLAN появляется трафик, int Vlan поднимается и подсеть через redistribute connected попадает в таблицу адресов - то покатит и вручную прописанный адрес.

Date: 2011-12-01 04:57 (UTC)
From: [identity profile] dadv.livejournal.com
Нет, не так. Это фича циски: если на int Vlan стоит ip unnumbered Loopback0 и на Loopback0 стоит адрес /32 и через DHCP в этот vlan выдаётся адрес/маска/шлюз, соответствующие этому цискиному адресу, то циска создаёт _static_ route /32 в этот vlan. И сама потом удаляет.

Date: 2011-12-01 08:23 (UTC)
From: [identity profile] fuflolog.livejournal.com
Понятно, спасибо.

А насчет остального: мышки, станьте ежиками diameter поддерживает 32-битные поля и реализован все в том же free radius.

Date: 2011-12-01 08:30 (UTC)
From: [identity profile] dadv.livejournal.com
Тогда нужен DHCP-сервер с поддержкой diameter.

Date: 2011-12-01 08:41 (UTC)
From: [identity profile] fuflolog.livejournal.com
Ты ж вроде как-то скрестил free radius с dhcp?

Date: 2011-12-01 10:12 (UTC)
From: [identity profile] dadv.livejournal.com
Я использовал левый (и кривой, как оказалось в процессе тестирования) патч на isc-dhcpd древней версии. Для diameter такого патча я не знаю. Да уже и не хочется этим путем идти, хочется напрямую DHCP-запросы конвертировать в SQL.

Date: 2011-12-01 13:21 (UTC)
From: [identity profile] fuflolog.livejournal.com
Видишь, как оно бывает: соберешь джунипер, так предложат собрать биллинг. Соберешь биллинг - попросят обзвонить клиентов. А в конце концов тебя выгонят и на твое место посадят сынка директора.

Date: 2011-12-01 13:26 (UTC)
From: [identity profile] dadv.livejournal.com
В данном случае биллинг собираю не я, а другой соседний отдел. Я их лишь консультирую. На моё место сынка директора не посадят, потому что у всех есть осознание, что мало кто справится. Но даже если окажется, что он квалификацией реально не ниже меня, я быстро найду себе другое место, спецов мало.

Я недавно вдруг осознал, что общаюсь по поводу проблем с BGP аплинка с тем же инженером, с которым общался 5 лет назад по поводу BGP, когда и я работал в другом месте, и он тоже в другом. В своём архиве почты (у меня с 1999-го всё хранится) нашел переписку с ним за те годы.

Profile

dadv: (Default)
Choose your future

July 2024

M T W T F S S
12 34567
891011121314
15161718192021
22232425262728
293031    

Tags

Style Credit

Powered by Dreamwidth Studios