Автор Тема: Странность с dhcp сервером на Alt-KDE4-5.0  (Прочитано 2521 раз)

Оффлайн bpt97

  • Участник
  • *
  • Сообщений: 42
Здравствуйте все.
Просьба помочь разобраться со странным поведением dhcpd.
Конфиг такой:

ddns-update-style none;
shared-network dt {
   option domain-name-servers   192.168.0.1,192.168.0.10;
subnet 192.168.21.0 netmask 255.255.255.0 {
   option routers         192.168.21.1;
   option subnet-mask      255.255.255.0;
        range dynamic-bootp 192.168.21.2 192.168.21.2;
   default-lease-time 21600;
   max-lease-time 43200;
   }
}
}

Схема работы: сетевая карта сервера имеет статический адрес 192.168.21.1
Через ethernet к ней подключаются "посторонние" лэптопы с обеспечением
доступа в Сеть. Адреса запрашиваются по dhcp.
Требуется, чтобы всегда предоставлялся адрес 192.168.21.2 - в частности,
потому что он задействован в firewall.
В SimplyLinux всё работает.
В KDE4-5.0-инсталляции dhcpd сообщает
dhcpd: DHCPDISCOVER from 00:1f:33:3e:ca:ff via eth1: network dt: no free leases
и ничего не делает. Сообщений о выдаче адреса куда-нибудь
налево обнаружить не удалось.
Если поставить
range dynamic-bootp 192.168.21.2 192.168.21.3;
dhcpd срабатывает, но выдаётся адрес 192.168.21.3, а не то что нужно. При
range dynamic-bootp 192.168.21.1 192.168.21.2;
выдаётся вообще 192.168.21.1 (адрес сервера).
Что бы это значило и как с этим бороться?
Спасибо.


MisHel64

  • Гость
Просьба помочь разобраться со странным поведением dhcpd.
Это нормальное поведение.

dhcpd: DHCPDISCOVER from 00:1f:33:3e:ca:ff via eth1: network dt: no free leases
Если перевести выделенное на русский язык, ответ станет очевиден.

Оффлайн bpt97

  • Участник
  • *
  • Сообщений: 42
> Это нормальное поведение.
Разъясните,пожалуйста, подробней, почему оно нормальное (кстати,
как упоминалось, в SimplyLinux поведение иное)

> Если перевести выделенное на русский язык, ответ станет очевиден.
С этим нет проблем. Неясной остаётся причина отказа.

MisHel64

  • Гость
> Это нормальное поведение.
Разъясните,пожалуйста, подробней, почему оно нормальное
Там четко написано. Нет свободных адресов для аренды. Значит и выдавать ничего не будет. Куда уже подробней?
Если нет свободных адресов, то значит их кто-то занял, и не отдал.
А система не отберет в течении 12 часов, как ты ей сам сказал.
Так чего не понятно?
И я вообще не вижу, что бы ты выделил хоть один адрес для аренды.

(кстати, как упоминалось, в SimplyLinux поведение иное)
Поведение конкретно взятой программы не зависит от дистрибутива. Когда наконец, эта очевидная истина станет очевидной для всех?
« Последнее редактирование: 24.03.2010 22:03:43 от MisHel64 »

Оффлайн bpt97

  • Участник
  • *
  • Сообщений: 42
Заранее и на все будущие случаи приношу свои извинения за тупость, ежели
таковая имеет место. По существу:

>Если нет свободных адресов, то значит их кто-то занял, и не отдал.

А кто или что? как узнать?

>вообще не вижу, что бы ты выделил хоть один адрес для аренды.

192.168.21.2

>Поведение конкретно взятой программы не зависит от дистрибутива. Когда наконец, эта очевидная истина станет очевидной для всех?

Факты всё же упрямая вещь. В их восприятии/интерпретации у оппонента возможны ошибки
или недопонимание - тогда стоит указать на них, если на то есть достаточно оснований,
а не заниматься непродуктивной риторикой.

MisHel64

  • Гость
Цитировать
range [ dynamic-bootp ] начало_диапазона [ конец_диапазона];
Для любой подсети адреса которой присваиваются динамически, должен быть указан хотя бы один диапазон с помощью секции range. В параметрах указывается начальный и конечный адреса диапазона. Все IP адреса в диапазоне должны принадлежать той подсети к описанию которой относится секция range. Параметр dynamic-bootp указывается в случае если предполагается назначать адреса из диапазона клиентам по протоколу BOOTP. Если указан только один адрес, то параметр конец_диапазона может быть опущен.

Что-то в мане я вообще не нашел упоминания о dynamic-bootp. Ну раз работает, если диапазон расширить, то не тут собака порылась, но наверное все равно стоит убрать.

>Если нет свободных адресов, то значит их кто-то занял, и не отдал.
А кто или что? как узнать?
в мане поиск по слову dhcpd.leases. Вроде правильно написал.

>Поведение конкретно взятой программы не зависит от дистрибутива. Когда наконец, эта очевидная истина станет очевидной для всех?
Факты всё же упрямая вещь. В их восприятии/интерпретации у оппонента возможны ошибки
или недопонимание - тогда стоит указать на них, если на то есть достаточно оснований,
а не заниматься непродуктивной риторикой.
Ну если за вас читают маны, то извините,  не вам о "занятием непродуктивной риторикой" говорить.

Оффлайн Rock

  • Участник
  • *
  • Сообщений: 66
subnet 192.168.0.0 netmask 255.255.255.0 {
                option routers 192.168.0.1;
                option subnet-mask 255.255.255.0;
                option broadcast-address 192.168.0.255;
                range 192.168.0.11 192.168.0.50;
                option domain-name-servers 192.168.0.3;
                host o1m1 {
                        hardware ethernet 00:30:05:5B:A2:6A;
                        fixed-address 192.168.0.11;
                }
}
Часть рабочего конфига.

arp -n | grep 192.168.21.2
Покажет MAC адрес машины, которой был роздан этот ip.
shared-network применяется, в основном, когда один интерфейс раздает адреса 2 подсетям с разными параметрами.
Например у меня 1 dhcp сервер отдает, по одному сетевому интерфэйсу, настройки терминальным клиентам в бухгалтерии и в юр. отделе.
« Последнее редактирование: 25.03.2010 15:32:05 от Rock »

Оффлайн bpt97

  • Участник
  • *
  • Сообщений: 42
Большое спасибо Rock за полезную информацию.
Но оказалось, что информация из предыдущего поста от MisHel64
уже позволяет справиться с ситуацией (тоже хочу за неё весьма
поблагодарить). А именно, оказалось, что указанный в указанном мане  файл

/var/lib/dhcp/dhcpd/state/dhcpd.leases

содержит единственную запись

lease 192.168.21.2 {
  starts 2 2010/03/09 19:02:52;
  ends never;
  tstp 2 2038/01/19 03:14:07;
  binding state active;
  next binding state free;
  hardware ethernet 00:ab:00:00:00:00;
}

, которая, очевидно и является причиной блокировки
адреса 192.168.21.2. И, помимо всего, неограниченного
по времени действия. Откуда она взялась - понятия не имею
(но был бы также благодарен за чью-либо подсказку по
этому поводу).
Для урегулирования ситуации,вероятно, топорным, но действенным способом,
было сделано следующее:
1) удалён каталог /var/lib/dhcp
2) переустановлен пакет dhcp-server
3) ну и в dhcp.conf строчка range заменена на
   range 192.168.21.2;
Потом на провод был прицеплен laptop, и всё заработало.
Так что тему можно считать исчерпаной.

Оффлайн Rock

  • Участник
  • *
  • Сообщений: 66
dhcpd.leases
Это база данных DHCPD об отданных адресах, на сколько я помню. Как там появилась эта запись - сказать сложно. Маловероятно (судя по MAC), но возможно DHCPD отдал этот адрес какому-то устройству. Переустанавливать и удалять ничего было не надо. touch dhcpd.leases обнулил-бы содержимое файла и осталось только перезапустить DHCPD.

Оффлайн bpt97

  • Участник
  • *
  • Сообщений: 42
Вообще, устройства с таким чересчур странным адресом на компе нет. Может, правда,
что-нибудь виртуальное...
Что до способа "обнуления" БД dhcpd, то именно так я сначала и поступил. И тогда
хоть dhcpd формально и запускалось с [OK], но тут же падало. Более того,
восстановил прежний файл - то же самое. Рука не лёгкая, видно.

Оффлайн Rock

  • Участник
  • *
  • Сообщений: 66
Re: Странность с dhcp сервером на Alt-KDE4-5.0
« Ответ #10 : 25.03.2010 21:40:16 »
Что-то у вас с DHCP странное совсем было...
man dhcpd.leases
...
However, dhcpd requires that a lease database be present before it will start.  To make the initial lease database, just create an empty file called /var/lib/dhcp3/dhcpd.leases. You can do this with: touch /var/lib/dhcp3/dhcpd.leases
...

Даж в man глянул. Должно было отработать. Возможно бага DHCP. Лучше было-бы разобраться почему она возникла и багрепорт написать. Но поздно уже.

Оффлайн bpt97

  • Участник
  • *
  • Сообщений: 42
Re: Странность с dhcp сервером на Alt-KDE4-5.0
« Ответ #11 : 25.03.2010 21:46:06 »
В man'е говорится о инициализации БД, а не о "обнулении".
Возможно, где-нибудь ещё содержатся сведения, связанные с
содержанием БД. И при обнулении возникает рассогласование.
Но это только гипотеза, конечно.

Оффлайн Rock

  • Участник
  • *
  • Сообщений: 66
Re: Странность с dhcp сервером на Alt-KDE4-5.0
« Ответ #12 : 25.03.2010 21:50:56 »
Я знаю. Тоже об этом думал. ИМХО маловероятно. Пока негде поэкспериментировать. Завтра, время будет, погоняю на тестовом. Log почитаю по этому поводу.