megabitik Опубликовано 10 августа, 2009 Привет! Если пул состоит из одного адреса, например subnet 192.168.0.0 netmask 255.255.255.0 { option routers 192.168.0.1; class "linksys12_49781" { match if (binary-to-ascii(16,8,":",substring(option agent.remote-id,2,6))="5a:0:3b:3:0:f" and binary-to-ascii(10,8,"",suffix(option agent.circuit-id,1))="12"); } pool { range 192.168.0.2; allow members of "linksys12_49781"; } ............ } Т.е. адреса у нас назначаются с привязкой к порту коммутатора при помощи Option 82. Возникает проблема когда адрес назначается, потом человек меняет комп на другой и не может получить адрес до истечения срока лизы. Можно ли заставить сервер игнорировать занятую лизу и выдавать адрес в любом случае? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
GateKeeper Опубликовано 10 августа, 2009 Используй поиск, Люк. Тут уже обсуждалось, примерно квартал назад. Ключевые слова: snmp trap, port state down Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
megabitik Опубликовано 10 августа, 2009 (изменено) Ничего подобного не нашел... Может, плохо искал? Ткните носом тогда. Как заставить сервер игнорировать тот факт, что IP уже выдан на определенный MAC и выдать его повторно? Изменено 10 августа, 2009 пользователем megabitik Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
dsk Опубликовано 10 августа, 2009 В моем случае подобных перетыкателей очень мало, городить ради них еще тонну костылей с снмп трапами, проверками и т.п. желания никакого не имею. В общем порядке установлено время аренды - 15 минут. Многокомповым юзерам активно предлагается установить роутер, для облегчения ихней же жизни. Особо ярые ортодоксальные перетыкатели компов, коих единицы, прописывают на нескольких своих компах одинаковый мак и живут счастливо. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
digimaster Опубликовано 10 августа, 2009 Похожая проблема, когда приходят установщики, показывают инет на ноуте, перетыкают провод клиенту и тот должен ждать окончание лизы. Говорят, клиенты сильно рады... Особенно когда винды назначают себе адрес 169.х.х.х, коммутатор это видит и кладет порт - волшебство dhcp snooping-а. Решение здесь я не нашел. Пробовал через OMAPI менять статус лизы, нифига, не работает, статус меняешь, а он - no free leases. Решение сабжа очень нужно. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
t0ly Опубликовано 10 августа, 2009 может поможет уменьшение срока лизынга? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
sid1333 Опубликовано 10 августа, 2009 Похожая проблема, когда приходят установщики, показывают инет на ноуте, перетыкают провод клиенту и тот должен ждать окончание лизы. Говорят, клиенты сильно рады... Особенно когда винды назначают себе адрес 169.х.х.х, коммутатор это видит и кладет порт - волшебство dhcp snooping-а. Решение здесь я не нашел. Пробовал через OMAPI менять статус лизы, нифига, не работает, статус меняешь, а он - no free leases. Решение сабжа очень нужно.Была такая же проблема в сети - строилась на 3526 с dhcp snooping и ip mac port binding.Также IMB некорректно отрабатывал при смене компа абонентом или ещё каких-либо действий - приходилось ждать окончания lease time. В итоге полностью отказался от IMB - для каждого коммутатора до установке генерируется набор ACL, разрешающий IP/ARP пакеты на порту и определяющий для каждого порта свой IP. DHCP snooping отключил, оставил только dhcp relay. В конечном счёте абонент может как автоматом получить нужные настройки, так и вручную вписать свой IP. Соглашусь, что решение ни разу не изящное, но тем не менее хорошо работает. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
digimaster Опубликовано 10 августа, 2009 (изменено) может поможет уменьшение срока лизынга?Боюсь что dhcp сервер грохнется, накрывшись реквестами. Хотя уменьшал до 5 минут даже, немного когда народу было еще.Это приводило к частым блокировкам портов наших суперских коммутаторов - кривизна реализации IP Source Guard. Т.к. лес смешанный, проще было увеличить время лизинга и учить людей правильно освобождать адрес. Скоро полезу в исходники dhcpd похоже, т.к. надо что-то делать. :-) Изменено 10 августа, 2009 пользователем digimaster Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
t0ly Опубликовано 10 августа, 2009 может поможет уменьшение срока лизынга?Боюсь что dhcp сервер грохнется, накрывшись реквестами. Хотя уменьшал до 5 минут даже, немного когда народу было еще.Это приводило к частым блокировкам портов наших суперских коммутаторов - кривизна реализации IP Source Guard. Т.к. лес смешанный, проще было увеличить время лизинга и учить людей правильно освобождать адрес. Скоро полезу в исходники dhcpd похоже, т.к. надо что-то делать. :-) возможно, но не факт. в крайнем случае можно попелит вланы между разными dhcp серверами Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
GateKeeper Опубликовано 10 августа, 2009 http://forum.nag.ru/forum/index.php?showtopic=49139 Для тех, кому one separate tool per function (aka UNIX-way) религиозно неприятен решения нет. Остальные пользуют патчи к дхцп из соседней ветки и ловят трапы. Либо ловят трапы и юзают фейковые dhcp release. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
hiller Опубликовано 11 августа, 2009 Вот бы свичи сами release посылали :) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
digimaster Опубликовано 11 августа, 2009 http://forum.nag.ru/forum/index.php?showtopic=49139 Для тех, кому one separate tool per function (aka UNIX-way) религиозно неприятен решения нет. Остальные пользуют патчи к дхцп из соседней ветки и ловят трапы. Либо ловят трапы и юзают фейковые dhcp release. С OMshell не проканало, изменение статуса лизы не к чему не приводит. А вот с фейковым dhcp release нада подумать.... Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
megabitik Опубликовано 12 августа, 2009 С OMshell не проканало, изменение статуса лизы не к чему не приводит.C OMshell подтверждаю, ничего не проканало. Похоже на то, что для удаления объекта через OMshell нужно сначала его через OMshell создать. Вот что написано в man omshell: "This is done by creating a new local object, setting attributes, associating the local and remote object using open, and then using the remove command." Для тех, кому one separate tool per function (aka UNIX-way) религиозно неприятен решения нет. Остальные пользуют патчи к дхцп из соседней ветки и ловят трапы. Либо ловят трапы и юзают фейковые dhcp release.Можно поподробнее? Как послать фейковый dhcp release? Можете поделиться конкретной реализацией? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
GateKeeper Опубликовано 13 августа, 2009 Вот что дала, пусть не самая первая, но ссылка в массиве, возвращаемом методом Brain::google() https://lists.isc.org/pipermail/dhcp-users/2007-August/004405.html Там по этому треду если дальше пройтись - много чего всплывает Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Negator1983 Опубликовано 6 октября, 2009 Вот и мне стало актуально. У кого нибудь есть готовое решение? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
dima-u Опубликовано 6 октября, 2009 (изменено) У нас есть готовое решение, через dhcp2radius. Написан модуль к радиусу на perl, в качестве базы - mysql. Срок лизы вообще не играет роли - если получатель такой-то свитч+порт - выдаем такой-то ip. (либо если нет инфы о свитче и порте, то выдается ip по мак-адресе+порт релея, либо просто по мак-адресу). Если на свитч+порт связке есть несколько ip адресов (то еще и по маку привязываются, чтобы комп идентифицировать кому что выдавать) Интегрировано с netup. Есть кабинет автоматической регистрации компьютера/пользователя. Т.е. если в базе не существует связки ip+порт, то автоматом клиенту выдаются специальные настройке,где введя любую web-страничку его выбрасывает на страницу авторизации (при помощи fake-dns), где после ввода логина/пароля по договору, автоматом создается связка свитч+порт+ip. И после перезагрузки компа - вуаля, можно работать. Все работает на 1-м сервере. (dhcp+radius+mysql+apache/php для регистрации абонента в сети) ИМХО в общем случае для таких целей лучше использовать базу в качестве хранилища данных, и перегружать ничего не надо, и интерфейс для менеджмента легко написать. Изменено 6 октября, 2009 пользователем dima-u Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Alex780 Опубликовано 7 октября, 2009 приводит. А вот Там патч идет же комплекте, примените его и все привязки удаляются без проблем Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Negator1983 Опубликовано 7 октября, 2009 У нас есть готовое решение, через dhcp2radius.Написан модуль к радиусу на perl, в качестве базы - mysql. Срок лизы вообще не играет роли - если получатель такой-то свитч+порт - выдаем такой-то ip. (либо если нет инфы о свитче и порте, то выдается ip по мак-адресе+порт релея, либо просто по мак-адресу). Если на свитч+порт связке есть несколько ip адресов (то еще и по маку привязываются, чтобы комп идентифицировать кому что выдавать) Интегрировано с netup. Есть кабинет автоматической регистрации компьютера/пользователя. Т.е. если в базе не существует связки ip+порт, то автоматом клиенту выдаются специальные настройке,где введя любую web-страничку его выбрасывает на страницу авторизации (при помощи fake-dns), где после ввода логина/пароля по договору, автоматом создается связка свитч+порт+ip. И после перезагрузки компа - вуаля, можно работать. Все работает на 1-м сервере. (dhcp+radius+mysql+apache/php для регистрации абонента в сети) ИМХО в общем случае для таких использовать базу в качестве хранилища данных, и перегружать ничего не надо, и интерфейс для менеджмента легко написать. не не не, ничего такого не надо. Уже написали скрипт создания конфига dhcp, интегрировали с самописным биллингом и т.п. надо только решение вышеописанной проблемы Я так понял что через dhcp2radius это можно решить? ткните носом куда нибудь. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
kapa Опубликовано 7 октября, 2009 не не не, ничего такого не надо. Уже написали скрипт создания конфига dhcp, интегрировали с самописным биллингом и т.п.надо только решение вышеописанной проблемы Я так понял что через dhcp2radius это можно решить? ткните носом куда нибудь. при передергивании дхцп очищайте файл с лизами Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Negator1983 Опубликовано 7 октября, 2009 У нас передергивание dhcp только при изменении конфига. А конфиг меняется когда добавляем/меняем юзу свич и порт Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
dead_moroz Опубликовано 15 мая, 2010 проблема до сих пор не решена? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
godlike Опубликовано 16 мая, 2010 Знакомые написали под это дело свой дхцп сервер. буду тоже что-то думать... Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
MagMike Опубликовано 19 мая, 2010 можно утилитой dhcdrop посылать фейковый RELEASE Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
tux-tm Опубликовано 25 мая, 2010 (изменено) Используйте freeradius, в нём есть функционал DHCP-сервера, для обработки запросов - rlm_perl У меня работает на ура! Изменено 25 мая, 2010 пользователем tux-tm Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Wingman Опубликовано 27 мая, 2010 (изменено) Используйте freeradius, в нём есть функционал DHCP-сервера, для обработки запросов - rlm_perlУ меня работает на ура! tux-tm, а на какой платформе и какая версия, если не секрет? У меня на x86_64 freeradius 2.1.9 почему-то rlm_perl хоть убей заводится не хочет ;( правка: таки завел ;) Изменено 27 мая, 2010 пользователем Wingman Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...