Войти

Показать полную графическую версию : Сервер DHCP


Страниц : 1 [2]

andreykst
27-07-2006, 14:15
Каков прогресс в решении проблемы?

BuGfiX
27-07-2006, 15:43
Каков прогресс в решении проблемы?
Он отказался от федоры и перелез на слаку =)

lxa85
13-08-2007, 09:33
Здраствуйте. Подскажите решение проблемы. Не могу запустить DHCP сервер.
Он мне нужен для сетевой загрузки бездискового сетевого клиента по протоколу
TFTP. (BOOTP)
Содержание вывода старта DHCP сервера

root@andrew:~# dhcpd3 start
Internet Systems Consortium DHCP Server V3.0.4
Copyright 2004-2006 Internet Systems Consortium.
All rights reserved.
For info, please visit http://www.isc.org/sw/dhcp/
Wrote 0 deleted host decls to leases file.
Wrote 0 new dynamic host decls to leases file.
Wrote 0 leases to leases file.

No subnet declaration for start (0.0.0.0).
** Ignoring requests on start. If this is not what
you want, please write a subnet declaration
in your dhcpd.conf file for the network segment
to which interface start is attached. **


Not configured to listen on any interfaces!

Если я перевожу правильно, то у меня не прописана подсеть (subnet) и не указанно,
на каком интерфейсе слушать. По порядку :
Вот содержание файла /etc/dhcp3/dhcpd.conf
Коментарии убраны. Да вроде и так все понятно. Файл создавался копированием и исправлением

ddns-update-style none;
authoritative;
server-name "dhcp.home.net";

option domain-name "home.net";
option domain-name-servers ns.home.net;

option subnet-mask 255.255.255.0;
default-lease-time 600;
max-lease-time 7200;

subnet 192.168.45.0 netmask 255.255.255.0 {
range 192.168.45.210 192.168.45.240;
}

host termcli1 {
hardware ethernet 00:D0:B7:BA:3F:4A;
# fixed-address 239.252.197.9;
filename "/tftpboot/kernel";
}

Файл dhcp.leases существует с нужными правами. Проверенно.

Zergling
13-08-2007, 09:53
Вот рабочий конфиг для загрузки (правда для установки по RIS, загрузка через PXE карточки - но принцип одинаковый)
на серваке 2 карточки: 192.168.2.1 192.168.1.1

#пропускаем внешнюю сеть
authoritative;
subnet 192.168.2.0 netmask 255.255.255.240 {
}
#внутренняя сеть
subnet 192.168.1.0 netmask 255.255.255.0 {
option routers 192.168.1.200;
option subnet-mask 255.255.255.0;
option domain-name "чего-то там";
option domain-name-servers 194.190.185.1;
option time-offset -18000; # Eastern Standard Time
option netbios-name-servers 192.168.1.200;
range dynamic-bootp 192.168.1.20 192.168.1.220;
default-lease-time 2160;
max-lease-time 4320;
}
#здесь группа которая получает Ip не от нашего сервака
group {
next-server 192.168.1.5;
host dia1 { hardware ethernet 0:07:e9:77:34:0c; }
host dia2 { hardware ethernet 0:07:e9:77:33:7b; }
host dia3 { hardware ethernet 0:07:e9:77:32:57; }
host dia4 { hardware ethernet 0:07:e9:77:33:f4; }
}

ddns-update-style ad-hoc;

option space PXE;
option PXE.mtftp-ip code 1 = ip-address;
option PXE.mtftp-cport code 2 = unsigned integer 16;
option PXE.mtftp-sport code 3 = unsigned integer 16;
option PXE.mtftp-tmout code 4 = unsigned integer 8;
option PXE.mtftp-delay code 5 = unsigned integer 8;
option PXE.discovery-control code 6 = unsigned integer 8;
option PXE.discovery-mcast-addr code 7 = ip-address;

class "PXE" {
match if substring(option vendor-class-identifier, 0, 9) = "PXEClient";
option vendor-class-identifier "PXEClient";
vendor-option-space PXE;
option PXE.mtftp-ip 0.0.0.0;
option PXE.mtftp-tmout 60;
filename "startrom.com";
}

lxa85
13-08-2007, 10:25
Скопипастил. Вечерком опробую. Пасиба :)

lxa85
09-11-2007, 14:44
Получилось! Запуск DHCP сервера случился следующим образом. Версия на английском языке (http://tldp.org/HOWTO/DHCP/x369.html) Пишу Очень сокращенный перевод
Сейчас у меня в системе простой dhcp.conf Главная проблема решена, и сервер слушает только 30 подсетку.
#ifconfig -a. Смотрим какие сетевые интерфейсы есть.
Проверяем наличие MULTICAST. В большинстве случаев он есть
#route add -host 255.255.255.255 dev eth0 Как я понял, для того чтобы Windows клиенты могли подцеплятся к серверу и получать от него IP'шник
Прописываем простой dhcpd.conf файл
#gedit /etc/dhcpd3/dhcpd.conf С этим проблем нет.
#touch /var/state/dhcp/dhcpd.leases

Самое главное!
Если вы хотите чтоб сервер работал на другой сетевой карте то: (А чтоб не принимал запросы с eth0, просто не прописываем параметры подсети в конфиг файл)
/usr/sbin/dhcpd eth1

Проверяем
/usr/sbin/dhcpd -d -f
Включаем клиента. Если все в порядке,и появляются строки протокола работы,то загружаем сервер без ключей. Если требуется, прописываем запуск сервера в старт скрипт /etc/rc.d/rc.local
От себя, еще одна тонкость - запускать надо полностью прописав путь
#/usr/sbin/dhcpd3
Если просто написать
#dhcpd3 start
то ничего не получится.

P.S. Изучая литературу, наткнулся на фразу о том: конфигурацию для интерфейсов по которым не идет раздача адресов, прописывать надо! Просто не определять диапазон. Теоретически не надо будет проделывать все операции описанные выше. Как это будет при совмещении, я не знаю. Экспериментов на ставил.

voler
07-11-2009, 12:03
Интересует проверка средствами dhcp соответствия имени ПК получающего адрес и hostname прописанного в конфиге dhcpd.

Сейчас сделано так, кусок
group {
option dhcp-server-identifier 192.168.2.101;
option domain-name-servers 192.168.2.101 , 91.192.20.3;
option routers 192.168.2.101;
host administra {
hardware ethernet 00:14:0b:0d:2e:2a;
option host-name "administra";
ddns-hostname "administra";
fixed-address 192.168.2.230;
}


Т.е. проверка проходит только по маку, но нужно еще привязаться к hostname.

Люди советуют использовать match if, может кто подскажет как это реализовать на уровне dhcp?

match if { option host-name "administra";} не прокатывает.




© OSzone.net 2001-2012