Биллинговая система Nodeny

Главная категория => Nodeny 50 => Тема начата: inf от 26 Апреля 2011, 14:38:07



Название: dhcpd.conf + nomake.pl
Отправлено: inf от 26 Апреля 2011, 14:38:07
Приветствую,

Нужна консультация.
1. имеем сеть 10.10.10.0/24, в дополнительном поле у кастомера задается mac, если поле пустое, то конфиг dhcpd.conf имеет такие вот конструкции:

Код:
 
        host test1 {
        hardware ethernet <dopdata-_mac>;
        fixed-address 10.10.10.11;
    }
 
        host test2 {
        hardware ethernet <dopdata-_mac>;
        fixed-address 10.10.10.12;
    }

Соотв он генерится, но при рестарте изменения не вступают в силу в связи с наличием ошибок.
Как сделать так, что если в доп. поле кастомера пусто, не генерить данные строки, а просто перебирать далее?

2. В дополнительном поле mac делаю regexp:
^([0-9A-Fa-f]{2}:){5}[0-9A-Fa-f]{2}$/
при вводе любого мака, выдает ошибку, что вводимые данные не соотв. шаблону.

Код:
#!/usr/local/bin/perl -w

use strict;

while (<DATA>) {
    /^([0-9A-Fa-f]{2}:){5}[0-9A-Fa-f]{2}$/i && print $_, "\n";
}

__END__
Fa:1E:eE:A0:00:00
Fa:1E:eE:A0:GG:00
Fa:1E:eE:A0:000:00

Как и положено, проверку пройдет только первый вариант mac, почему он не работает в nodeny?

Спасибо!



Название: Re: dhcpd.conf + nomake.pl
Отправлено: stix от 26 Апреля 2011, 14:53:08
эм..
в такой связке отлично работает
Internet Systems Consortium DHCP Server V3.1.3

Код:
<file>/usr/local/etc/dhcpd.conf</file>
<reload>/usr/local/etc/rc.d/isc-dhcpd restart</reload>
<template>1</template>

default-lease-time 600;
max-lease-time 7200;
ddns-update-style none;
#ignore client-updates;
log-facility local7; #

deny unknown-clients;


subnet 192.168.100.0 netmask 255.255.255.0
{
        option subnet-mask 255.255.255.0;
        option routers 192.168.100.1;
        option domain-name-servers свойднс, ещеднс;
<filtr net='192.168.100.0/24' dopdata-_mac='^..:..:..:..:..:..$'>
host <lat_login> {hardware ethernet <dopdata-_mac>; fixed-address <ip>;}
</filtr>
}
subnet 192.168.101.0 netmask 255.255.255.0
{
        option subnet-mask 255.255.255.0;
        option routers 192.168.101.1;
        option domain-name-servers свойднс, второйднс;
<filtr net='192.168.101.0/24' dopdata-_mac='^..:..:..:..:..:..$'>
host <lat_login> {hardware ethernet <dopdata-_mac>; fixed-address <ip>;}
</filtr>
}


Название: Re: dhcpd.conf + nomake.pl
Отправлено: inf от 26 Апреля 2011, 15:20:25
спасибо,

dopdata-_mac='^..:..:..:..:..:..$'  - вот этотого параметра в dhcp.txt небыло, с этой проверкой все OK.

А как быть со вторым пунктом ?


Название: Re: dhcpd.conf + nomake.pl
Отправлено: stix от 26 Апреля 2011, 15:28:11
Код:
^(?:[[:xdigit:]]{2}[-:]){5}[[:xdigit:]]{2}$
попробуй такое


Название: Re: dhcpd.conf + nomake.pl
Отправлено: inf от 26 Апреля 2011, 15:50:02
вот такая ошибка при вводе mac: 11:22:33:44:55:66
Предупреждение: вы неверно задали параметр «Мак-адрес» - он не соответствует шаблону. Параметр не установлен.

Название поля: [10]Мак-адрес
Алиас: _mac
тип поля: строковое однострочное
пареметры: (выбрано) убирать пробелы в начале, убирать пробелы в конце, преобразовать к нижнему регистру, транслировать в латинские символы,
убирать все пробелы, титульное поле (выводится при поиске)
(не выбрано) допускается пустое значение



Название: Re: dhcpd.conf + nomake.pl
Отправлено: stix от 26 Апреля 2011, 15:55:59
(http://i.piccy.info/i5/20/68/1426820/mac.jpg)


Название: Re: dhcpd.conf + nomake.pl
Отправлено: inf от 26 Апреля 2011, 16:03:20
спасибо, убрал галку преобразования к нижнему регистру и скормил мак, приняло.
Возможно внутренние особенности логики nodeny.