dhcp костылинг для utm5

Технические вопросы по UTM 5.0
dk
Сообщения: 424
Зарегистрирован: Чт авг 10, 2006 08:52

Сообщение dk »

TiRider писал(а):Скажите пожалуйста, а что нужно еще дописать к вашему файлу, чтобы "option host-name" передавалось, если ип белый... Че то подумал, не выходит привентить данный параметр...

Код: Выделить всё

    # Сохраняем в конфиг
    $ip =~ /^(\d+\.\d+)\.(\d+)\.(\d+)$/;
    my $opt = '';

    if ( $ip =~ /^123\.123\.123\./ ) {
        # Внешний адрес нашего C-класса
        $opt .= sprintf "option host-name pc_%03s_%03s; ", $2, $3;
    }

    printf F "host pc_%03s_%03s { hardware ethernet %s; fixed-address %s; option routers %s; %s}\n",
        $2, $3, $mac, $ip, "$1.$2.1", $opt; 
$ip =~ можно поменять на сравнение c крайними адресами из пулов.

Аватара пользователя
TiRider
Сообщения: 568
Зарегистрирован: Сб июн 07, 2008 12:43

Сообщение TiRider »

dk, я не совсем понял как это... Вот, что значит профан в программировании. Решил добавить к вашему скрипту, еще чтобы просматривал дублирующиеся логины. Мало ли пригодится.

Аватара пользователя
TiRider
Сообщения: 568
Зарегистрирован: Сб июн 07, 2008 12:43

Сообщение TiRider »

/usr/local/etc/dhcp/dhcp.pl
Can't locate DBI.pm in @INC (@INC contains: /usr/local/lib/perl5/5.10.1/BSDPAN /usr/local/lib/perl5/site_perl/5.10.1/mach /usr/local/lib/perl5/site_perl/5.10.1 /usr/local/lib/perl5/5.10.1/mach /usr/local/lib/perl5/5.10.1 .) at /usr/local/etc/dhcp/dhcp.pl line 2.
BEGIN failed--compilation aborted at /usr/local/etc/dhcp/dhcp.pl line 2.

dwemer
Сообщения: 276
Зарегистрирован: Чт янв 25, 2007 05:59

Сообщение dwemer »

TiRider писал(а):/usr/local/etc/dhcp/dhcp.pl
Can't locate DBI.pm in @INC (@INC contains: /usr/local/lib/perl5/5.10.1/BSDPAN /usr/local/lib/perl5/site_perl/5.10.1/mach /usr/local/lib/perl5/site_perl/5.10.1 /usr/local/lib/perl5/5.10.1/mach /usr/local/lib/perl5/5.10.1 .) at /usr/local/etc/dhcp/dhcp.pl line 2.
BEGIN failed--compilation aborted at /usr/local/etc/dhcp/dhcp.pl line 2.
# cd /usr/ports/databases/p5-DBI
# make install clean

или

# cpan
cpan> install DBI

как то так

Аватара пользователя
TiRider
Сообщения: 568
Зарегистрирован: Сб июн 07, 2008 12:43

Сообщение TiRider »

Спасибо. Точно так и есть. Не хватает именно этого порта.

Kayfolom
Сообщения: 746
Зарегистрирован: Вс фев 12, 2006 17:15

Сообщение Kayfolom »

Вот мой вариант. Делает /etc/dhcpd.clients, который вкладываем в /etc/dhcpd.conf с помощью "include "/etc/dhcpd.clients";"
и /etc/arp.cfg

Код: Выделить всё

#!/bin/sh

mysql --batch -s -e \
    "SELECT id,  mac, inet_ntoa(4294967295 & ip) FROM ip_groups WHERE mac!='' AND is_deleted=0 ORDER BY inet_ntoa(4294967295 & ip);" UTM5 |
tr -d ":" |
awk '
BEGIN {
    dhcp="/etc/dhcpd.clients"
    arp="/etc/arp.cfg"
    print > dhcp
    print > arp
}
/10.0./ {
    eth=toupper($2)
    mac=substr(eth,1,2) ":" substr(eth,3,2) ":" substr(eth,5,2) ":" substr(eth,7,2) ":" substr(eth,9,2) ":" substr(eth,11,2)
    
    print "host " $1 " { hardware ethernet " mac "; fixed-address " $3 "; }" >> dhcp
    print $3 "\t" mac >> arp
}
'
echo Execute "arp -i eth0 -f /etc/arp.cfg"
arp -i eth0 -f /etc/arp.cfg
#arp -i eth3 -f /etc/arp.cfg
# Edit by Kayfolom - "condrestart" not starting dhcp if her stopped
#/etc/init.d/dhcpd condrestart
service dhcpd stop
service dhcpd start

Аватара пользователя
TiRider
Сообщения: 568
Зарегистрирован: Сб июн 07, 2008 12:43

Сообщение TiRider »

Кайфолом, у тебя в arp.cfg чего хранится? ip+mac с циски? в виде хххх.хххх.хххх?

Kayfolom
Сообщения: 746
Зарегистрирован: Вс фев 12, 2006 17:15

Сообщение Kayfolom »

TiRider писал(а):Кайфолом, у тебя в arp.cfg чего хранится? ip+mac с циски? в виде хххх.хххх.хххх?
Там пары IP MAC. MAC вида xx:xx:xx:xx:xx:xx. Это же для "arp -i eth0 -f /etc/arp.cfg"

Аватара пользователя
TiRider
Сообщения: 568
Зарегистрирован: Сб июн 07, 2008 12:43

Сообщение TiRider »

В root мне логи :D на второй тестовой машинке, хочу собрать ddns+dhcp+ldap+utm. Стоит ли этим "гемороем" заморачиваться? 8)

mikkey finn
Сообщения: 1612
Зарегистрирован: Пт ноя 10, 2006 15:23

Сообщение mikkey finn »

я чота для себя уже и не вижу в этом особого смысла...

Аватара пользователя
TiRider
Сообщения: 568
Зарегистрирован: Сб июн 07, 2008 12:43

Сообщение TiRider »

Уважаемый dk, а не могли бы вы сказать версию своих портов. Бьемся головой, понять не можем почему ошибки валятся :?

dk
Сообщения: 424
Зарегистрирован: Чт авг 10, 2006 08:52

Сообщение dk »

TiRider писал(а):Уважаемый dk, а не могли бы вы сказать версию своих портов. Бьемся головой, понять не можем почему ошибки валятся :?
На биллинге не фряха, а древнющий редхат, DBI 1.4, DBD::mysql 2.9004.

Что за ошибки?

Аватара пользователя
TiRider
Сообщения: 568
Зарегистрирован: Сб июн 07, 2008 12:43

Сообщение TiRider »

dk писал(а):
TiRider писал(а):Уважаемый dk, а не могли бы вы сказать версию своих портов. Бьемся головой, понять не можем почему ошибки валятся :?
На биллинге не фряха, а древнющий редхат, DBI 1.4, DBD::mysql 2.9004.

Что за ошибки?
/usr/local/etc/dhcp/dhcp.pl
Can't locate DBI.pm in @INC (@INC contains: /usr/local/lib/perl5/5.10.1/BSDPAN /usr/local/lib/perl5/site_perl/5.10.1/mach /usr/local/lib/perl5/site_perl/5.10.1 /usr/local/lib/perl5/5.10.1/mach /usr/local/lib/perl5/5.10.1 .) at /usr/local/etc/dhcp/dhcp.pl line 2.
BEGIN failed--compilation aborted at /usr/local/etc/dhcp/dhcp.pl line 2.

Вот такая. Хотя и пробовали perl5.10 ставить и откатывались и DBI с DBD тоже, ну ни в какую не идет:( система FreeBSD 7.2

dk
Сообщения: 424
Зарегистрирован: Чт авг 10, 2006 08:52

Сообщение dk »

TiRider писал(а):
dk писал(а):
TiRider писал(а):Уважаемый dk, а не могли бы вы сказать версию своих портов. Бьемся головой, понять не можем почему ошибки валятся :?
На биллинге не фряха, а древнющий редхат, DBI 1.4, DBD::mysql 2.9004.

Что за ошибки?
/usr/local/etc/dhcp/dhcp.pl
Can't locate DBI.pm in @INC (@INC contains: /usr/local/lib/perl5/5.10.1/BSDPAN /usr/local/lib/perl5/site_perl/5.10.1/mach /usr/local/lib/perl5/site_perl/5.10.1 /usr/local/lib/perl5/5.10.1/mach /usr/local/lib/perl5/5.10.1 .) at /usr/local/etc/dhcp/dhcp.pl line 2.
BEGIN failed--compilation aborted at /usr/local/etc/dhcp/dhcp.pl line 2.

Вот такая. Хотя и пробовали perl5.10 ставить и откатывались и DBI с DBD тоже, ну ни в какую не идет:( система FreeBSD 7.2
Вот фряха, DBI на ней работает:

Код: Выделить всё

[dk@f1 ~]$ pkg_info | grep DBI
...
p5-DBD-mysql54-4.012 MySQL 5.4 driver for the Perl5 Database Interface (DBI)
p5-DBI-1.60.9       The perl5 Database Interface.  Required for DBD::* modules
...

[dk@f1 ~]$ locate DBI.pm
...
/usr/local/lib/perl5/site_perl/5.8.9/mach/DBI.pm
...

Аватара пользователя
TiRider
Сообщения: 568
Зарегистрирован: Сб июн 07, 2008 12:43

Сообщение TiRider »

А у нас вот чего пишет:

Код: Выделить всё

>pkg_info | grep DBI
p5-DBD-mysql50-4.013 MySQL 5.0 driver for the Perl5 Database Interface (DBI)
p5-DBI-1.60.9       The perl5 Database Interface.  Required for DBD::* modules

Код: Выделить всё

>locate DBI.pm
locate: database too small: /var/db/locate.database
Как вылечить? :( perl5.10.1, порты перед этим обновил...

Ответить