007 событие "изменение связки IP"
007 событие "изменение связки IP"
В 006 был признан устаревшим функционал LDAP, вместо него введены события удаления и добавления связки IP. В 007 было введено событие "изменение связки IP", но в качестве параметров передаётся только те параметры, которые останутся в этой сервисной связке...
А как же удалить старые записи из того же LDAP? Нетап советует либо в несколько тысяч связок добавить логин, который обязатальным не является, дабы каждый раз удалять все IP-адреса связаные с этим логином, либо советуют создать ещё одну таблицу(зачем? она уже есть ip_groups называется), в которой будет содержаться IP-MAC-login и костылём выбирать из неё ip ссылающиеся на переданный костылю логин.
Собственно вот... Вдруг кто столкнётся, а у него хотлайна нет. Есть у меня хотлайн, только толку от него нет....
А как же удалить старые записи из того же LDAP? Нетап советует либо в несколько тысяч связок добавить логин, который обязатальным не является, дабы каждый раз удалять все IP-адреса связаные с этим логином, либо советуют создать ещё одну таблицу(зачем? она уже есть ip_groups называется), в которой будет содержаться IP-MAC-login и костылём выбирать из неё ip ссылающиеся на переданный костылю логин.
Собственно вот... Вдруг кто столкнётся, а у него хотлайна нет. Есть у меня хотлайн, только толку от него нет....
вот так вот добавляетсяgravis писал(а):обновленная (новая запись) будет находиться dhcp сервером перед старой, да старая остается висеть, но проблем никаких не доставляет
Код: Выделить всё
/usr/local/bin/ldapdelete -x -D "cn=Manager,dc=dom,dc=ru" -w open -v <<EOF
cn=$IP, cn=DHCP Config, dc=dom,dc=ru
EOF
/usr/local/bin/ldapadd -x -D "cn=Manager,dc=dom,dc=ru" -w open <<EOF
dn: cn=$IP, cn=DHCP Config, dc=dom,dc=ru
dhcpHWAddress: ethernet $MAC
dhcpStatements: fixed-address $IP
objectClass: top
objectClass: dhcpHost
objectClass: dhcpOptions
cn: $IP
EOF
да уперлось оно... главное чтобы DHCP клиенту отдал правильный IP, этого можно добиться удалив существующие записи с текущим MAC-адресом, а то что в LDAP будет висеть старый мак с каким-то IP, дык это пофиг вообще, если вдруг этот старый MAC где-то заюзается, то эта запись так же удалиться этим же скриптом, только уже в свое время
я не против того, что он устарелgravis писал(а):да уж лучше так, чем маппить библиотеки LDAP, потому что ядро скомпилено не с той версией LDAP'а, которую хотелось бы использовать в работе

- Lex
- NetUP Team
- Сообщения: 623
- Зарегистрирован: Ср мар 09, 2005 12:12
- Откуда: НетАП
- Контактная информация:
В этом событии заменяется переменная, отвечающая за идентификатор сервисной связки. Для сервисной связки идентификатор неизменен. Используйте этот параметр для идентификации записи.Pulse писал(а):я не против того, что он устареля против события "изменение"... потому что для корректной его работы в этом событии должны передаваться старые параметры...
Если бы про это ещё кто-то предупреждал... типа "в будущем формат записей мы поменяем, пишите туда идентификатор сервисной связки".Lex писал(а):Зачем? Пишем в LDAP идентификатор сервисной связки, затем по нему ищем и меняем.gravis писал(а):типа поищите в базе что там в ip_groups с is_deleted=1
ну так еще веселее!
Это мне сейчас нужно для нескольких тысяч записей дописать ID сервисной связки в базу LDAP. Вот спасибо!