Нашел такой себе маленький косячок в работе данного скрипта ...
Маленький, но времени то сколько на него убил!! ((((
Ситуация:Скрипт используется, как, наверное, и у большинства, для автосоздания конфига ДХЦП.
Так как используем схему влан-на-юзера, то вместо полей ИП
<ip> и МАК
<dopdata-_mac> нам нужно использовать поля
<ip> и
<dopdata-_vlan>.
Соответствующие поля созданы в Допданных и заполнены на странице "Доппараметры" у клиента.
Для выдачи адреса по новым параметрам, само собой, подредактировал копию СТАРОГО конфига ДХЦП.
В нем ненужные строки закомментировал, новые - добавил.
И вот смотрю я на сгенереный конфиг и удивляюсь - поля в комментариях скрипт старательно заполнил, а в нужных строках просто вписал название поля
<dopdata-_vlan>, как будто оно в базе не заполнено .. Путем ковыряния расширеных логов выяснилось, что скрипт постоянно находит только ПЕРВОЕ ДОПОЛНИТЕЛЬНОЕ ПОЛЕ (в данном случае у меня в комментах стояло
<dopdata-_mac>) и на этом попытки пропарсить конфиг на наличие ДРУГИХ полей НЕ ДЕЛАЕТ ...
Напрашивается вывод - а если пользователю биллинга нужно будет использовать для генерации конфига не ОДНО, а НЕСКОЛЬКО доп полей ??
Прошу подправить данный скрипт для более корректной работы ...
п.с. если бы я владел Перлом (хотя бы на уровне "Хело, Ворлд"
), то подправил бы сам и выложил, а так остается только кричать "хелп!" на форуме ..
п.п.с. Чето я уже не первый раз на ровном месте грабли нахожу ... Никто не использует этот скрипт больше, чем с одним доп. полем ??
А если используют, то странно, что не поделились исправленым вариантом (((
Вот кусок конфига:
... поскипано
<filtr net:192.168.30.0/24>
# host <lat_login> {
# hardware ethernet <dopdata-_mac>;
# fixed-address <ip>;
# }
class "vlan-<dopdata-_vlan>" {
... поскипано