- Dhcp пакет для linux
- Пакет Пакет DHCP-4.2.3
- Знакомимся с пакетом DHCP
- Информация о пакете
- Дополнительные загрузки
- Зависимости пакета DHCP
- Обязательные
- Конфигурирование ядра
- Установка пакета DHCP
- Пояснение команд
- Конфигурирование пакета DHCP
- Конфигурационные файлы
- Подробнее о конфигурировании
- Описание пакета
- dhcpd (Русский)
- Contents
- Установка
- Использование
- Настройка
- Запуск на одном сетевом интерфейсе
- Настройки dhcpd
- Файл службы
- Использование для PXE
- Настройка DHCP-сервера в Linux
- Как работает DHCP?
- Шаг 1: Установка DHCP-сервера
- Шаг 2: Настройка DHCP-сервера
- Шаг 3: Настройка статических IP-адресов для машин клиентов
- Шаг 4: Настройка машин клиентов
Dhcp пакет для linux
Библиотека сайта rus-linux.net
На главную -> MyLDP -> Электронные книги по ОС Linux
Beyond Linux From Scratch. Version 2011-12-30 | ||
Назад | 13. Подключение к сети | Вперед |
Пакет Пакет DHCP-4.2.3
Знакомимся с пакетом DHCP
В пакете DHCP находятся клиентская и серверная программы DHCP. Программа dhclient (клиентская) используется для подключения вашего компьютера к сети, в которой для назначения сетевых адресов применяется DHCP. Программа dhcpd (сервер) используется для назначения сетевых адресов в вашей частной сети.
Известно, что пакет правильно собирается и работает на платформе LFS-7.0.
Информация о пакете
- Загрузка (HTTP): http://www.isc.org/software/dhcp/423/download/dhcp-423targz?download=
- Загрузка (FTP): ftp://ftp.isc.org/isc/dhcp/4.2.3/dhcp-4.2.3.tar.gz
- Контрольная сумма MD5: a06649ec5336d284fc86a0232c0edd63
- Размер загружаемого пакета: 9,1 MB
- Оценочный размер требуемого дискового пространства: 185 MB (клиент и сервер), 140 MB — только клиент, 172 MB — только сервер
- Оценочное время сборки: : 0,7 SBU (клиент и сервер, либо сервер), 0.6 SBU — только клиент
Дополнительные загрузки
- Рекомендованный патч (для клиента): http://www.linuxfromscratch.org/patches/blfs/svn/dhcp-4.2.3-iproute2-1.patch
- Дополнительный патч: http://www.linuxfromscratch.org/patches/blfs/svn/dhcp-4.2.3-missing_ipv6-1.patch
Зависимости пакета DHCP
Обязательные
Если вы не используете патч iproute2, то во время выполнения программы dhclient требуется пакет Net-tools-1.60
Замечания для пользователей:
Конфигурирование ядра
У вас в ядре должна быть включена поддержка Packet Socket (Networking Support => Networking Options => Packet Socket — Поддержка сетей => Сетевые настройки => Packet Socket). Если у вас не скомпилирована поддержка протокола IPv6 (Networking Support => Networking Options => The IPv6 Protocol — Поддержка сетей => Сетевые настройки => Протокол IPv6), то вы должны использовать патч missing_ipv6.
Установка пакета DHCP
Если у вас в ядре не откомпилирована поддержка протокола IPv6, то примените патч missing_ipv6
Если вы устанавливаете клиентскую программу и к тому времени, когда вы будете ее использовать,у вас не будет установлен пакет net-tools, то примените патч iproute2:
Установите пакет DHCP с помощью следующих команд:
Если вы хотите собрать только сервер, введите:
Если вы хотите собрать только клиентскую программу, введите:
Соберите выбранный вами вариант с помощью следующей команды:
Чтобы проверить результаты, выполните команду make check.
Теперь в роли пользователя root выполните:
В файлах /etc/dhcpd.conf (сервер) и /etc/dhclient.conf (клиент) приведены примеры настроек для конкретной системы BSD. Маловероятно, что они вам подойдут, но будет правильно, если вы их просмотрите перед тем, как их удалять или перемещать в другое место.
Теперь создайте рабочий директорий (директории).
Для клиентской программы:
Пояснение команд
sed -i ‘s%\(^sbindir =\).*%\1 @prefix@@sbindir@%’ server/Makefile.in: Эта команда перемещает программу dhcp в директорий /usr/sbin вместо директория /sbin , поскольку она не нужна во время загрузки сервера.
—sbindir=/sbin: Программа dhclient перемещается в директорий /sbin вместо директория /usr/sbin , поскольку она должна быть доступна во время загрузки, например, если в /usr монтируется сетевая файловая система nfs .
—with-*-lease-files=. : По умолчанию, рабочие файлы помещаются в директорий /var/db , что является анахронизмом
sed -i ‘s/-Werror//’
sed -i ‘s/ something//’ Makefile: Эта команда останавливает сборку пакета из-за того, что требуется ввести имя директория (директориев).
rm -v /usr/lib/lib
Конфигурирование пакета DHCP
Конфигурационные файлы
/etc/dhclient.conf и /etc/dhcpd.conf
Подробнее о конфигурировании
Информацию о настройке клиентской программы DHCP можно найти в следующем разделе.
Обратите внимание, что если вы хотите только раздавать адреса LAN в вашей сети, вам нужен только сервер DHCP. В этом скрипте не нужно использовать клиентскую программу DHCP. Также обратите внимание, что этот скрипт закодирован для интерфейса eth1, который, возможно, потребуется изменения для вашей аппаратной конфигурации.
Установите скрипт начальной загрузки /etc/rc.d/init.d/dhcp , который находится в пакете blfs-bootscripts-20111226.
Рабочий файл должен существовать при запуске системе. С помощью следующей команды можно удовлетворить это требование:
С помощью следующих команд будет создан файл базовой конфигурации для сервера DHCP. Есть несколько параметров, которые вы можете добавить (информация будет передана обратно клиенту DHCP) и которые описаны в страницах man для dhcp.conf .
Все адреса следует изменить в соответствии с вашей конкретной ситуацией.
Описание пакета
Установленные программы: dhcpd, dhcrelay, dhclient, dhclient-script и omshell
Установленные библиотеки: libbdhcpctl.a, libdst.a, libomapi.a
Установленные директории: /var/state/dhcp, /usr/include/omapip и /usr/include/isi-dhcp
реализация клиентской программы DHCP
используется программой dhclient для (пере) конфигурирования интерфейсов. С его помощью можно выполнить дополнительные изменения с использованием dhclient-
реализует протокол запросов Dynamic Host Configuration Protocol (DHCP) и Internet Bootstrap Protocol (BOOTP) сетевых адресов
предоставляет средство доступа запросов DHCP и BOOTP для подсети, не имеющих сервера DHCP, и перетрансляции их на сервер DHCP, находящийся в другой подсети
предоставляет интерактивный способ подключения, запросов, и, возможно, изменения состояния сервера ISC DHCP через OMAPI (Object Management API — API управления объектами).
Перевод сделан с варианта оригинала, датированного 2011-12-01 05:09:32 +0000
Источник
dhcpd (Русский)
dhcpd — реализация DHCP-сервера от Internet Systems Consortium. Может использоваться, к примеру, на машине, играющей роль маршрутизатора в локальной сети.
Contents
Установка
Использование
dhcpd предоставляет два файла юнитов, dhcpd4.service и dhcpd6.service , с помощью которых можно управлять демоном. Демоны запускаются на всех сетевых интерфейсах для IPv4 и IPv6 соответственно. Альтернативный вариант описан в разделе #Запуск на одном сетевом интерфейсе.
Настройка
Присвойте статический адрес IPv4 тому сетевому интерфейсу, для которого вы хотите запустить DHCP-сервер (в примерах будет использоваться eth0 ). Обратите внимание, что у двух различных сетевых интерфейсов на одной машине не должны полностью совпадать первые три октета адреса.
Автоматическое назначение статического IP при загрузке системы описано в статье Настройка сети#Статический IP-адрес.
Стандартный файл настроек, dhcpd.conf , содержит много незакомментированных примеров, поэтому следует переместить его в другое место, например
и создать на его месте новый.
Минимальная конфигурация может выглядеть следующим образом:
Если необходимо выдать фиксированный IP-адрес конкретному устройству, можно также указать настройки для отдельного хоста:
Опция domain-name-servers содержит адреса DNS-серверов, которые передаются клиентам. В данном примере используются публичные DNS-сервера Google. Если в вашей подсети уже есть DNS-серверы (например, предоставленные провайдером), следует указать их. Если на компьютере уже настроен собственный DNS-сервер, то укажите его адрес ( 139.96.30.100 в нашем примере).
Опции subnet-mask и routers содержат маску подсети и список маршрутизаторов в этой подсети, соответственно. В большинстве случаев для небольших сетей подойдет маска 255.255.255.0 , а в качестве маршрутизатора используется та же машина, на которой настроен DHCP-сервер.
Блоки subnet содержат настройки для отдельных подсетей, которые сопоставляются сетевым интерфейсам, на которых запущен dhcpd. В примере определена одна подсеть 139.96.30.0/24 за интерфейсом eth0 , для которой задан диапазон IP-адресов. Подключаемым клиентам будут присваиваться адреса из этого диапазона.
Запуск на одном сетевом интерфейсе
Если ваш компьютер уже является частью одной или нескольких сетей, может возникнуть ситуация, когда адреса будут выдаваться в том числе и компьютерам из другой сети. Это можно исправить либо настройками dhcpd, либо запуском в качестве демона с помощью systemctl.
Настройки dhcpd
Чтобы исключить конкретный интерфейс, в файле настроек создайте пустой блок subnet для этого интерфейса:
Файл службы
В «комплекте поставки» dhcpd не предусмотрен юнит для запуска на одном интерфейсе, поэтому придётся создать его самостоятельно. Сначала скопируйте существующую службу:
Затем отредактируйте строку ExecStart, добавив в неё спецификатор интерфейса:
Это юнит-шаблон, который привязывает процесс к определённому интерфейсу, например — dhcpd4@eth0.service . Здесь eth0 — название сетевого интерфейса; узнать интерфейсы вашей системы можно командой ip link .
Использование для PXE
Настройка для PXE выполняется следующими двумя параметрами:
Эти строки можно указать как в блоке subnet , так и в настройках отдельного хоста host . next-server представляет собой адрес TFTP-сервера, а filename — имя образа для загрузки. Подробнее см. PXE.
Источник
Настройка DHCP-сервера в Linux
Протокол динамической конфигурации узлов (Dynamic Host Configuration Protocol, DHCP) — это сетевой протокол, используемый для автоматического получения узлами IP-адресов и сетевой конфигурации с сервера.
IP-адрес, выделенный DHCP-клиенту DHCP-сервером, находится в «аренде», время аренды может отличаться в зависимости от того, сколько времени клиенту требуется соединение или конфигурация DHCP.
Как работает DHCP?
- После загрузки подключенный к сети клиент (на котором настроено использование DHCP) отправляет DHCP-серверу пакет DHCPDISCOVER.
- Получив пакет запроса DHCPDISCOVER, DHCP-сервер отвечает пакетом DHCPOFFER.
- Клиент принимает пакет DHCPOFFER и отправляет серверу пакет DHCPREQUEST, подтверждая готовность принять сетевую конфигурацию, предоставленную в пакете.
- Получив от клиента пакет DHCPREQUEST, сервер отправляет пакет DHCPACK, который разрешает клиенту использование выделенного IP-адреса.
В данном руководстве мы рассмотрим настройку DHCP-сервера в Ubuntu/Debian Linux, но большенство настроек будет работать и в других дистрибутивах. Для получения административных привилегий все команды будут выполняться через sudo.
Шаг 1: Установка DHCP-сервера
1. Для установки пакета DCHP-сервера, ранее известного как dhcp3-server, нужно выполнить следующую команду:
2. После завершения установки отредактируйте файл /etc/default/isc-dhcp-server для определения интерфейсов, которые будет использовать DHCPD для обработки DHCP-запросов, при помощи опции INTERFACES.
Например, если вам нужно, чтобы демон DHCPD прослушивал eth0, задайте следующее значение:
Для этого сетевого интерфейса нужно настроить статический IP-адрес.
Шаг 2: Настройка DHCP-сервера
3. Основной файл конфигурации DHCP — /etc/dhcp/dhcpd.conf, в него нужно внести всю информацию, отправляемую клиентам.
В файле конфигурации DHCP есть два типа данных:
- параметры – указывают, как выполнять задание (например, на какое время выделять адрес), выполнять ли его вообще (например, выделять ли адреса неизвестным клиентам) или какие параметры сетевой конфигурации отправлять DHCP-клиенту.
- декларации – определяют топологию сети, описывают клиентов и предоставляемые им адреса, или применяют группу параметров к группе деклараций.
4. Для определения настроек DHCP-сервера откроем и отредактируем файл конфигурации:
Установите в начале файла следующие глобальные параметры, они будут действовать для всех указанных ниже деклараций (измените их в соответствии с вашими задачами). Это имя домена domain-name, имена DNS-серверов domain-name-servers, время аренды по умолчанию в секундах default-lease-time (если клиент не запросил его сам), максимальное время аренды в секундах max-lease-time и параметр authoritative, означающий «авторитетность» сервера в сегменте сети. Данный параметр нужен на тот случай, если клиент запросит неправильный IP-адрес — в этом случае сервер ответит ему отказом и предложит получить новый адрес.
Обратите внимание, что перед некоторыми параметрами указано слово option, а перед некоторыми — нет. Это слово задает параметры, которые передаются клиенту в сетевой конфигурации.
5. Теперь нужно указать подсеть, в нашем примере мы будем использовать DHCP в локальной сети 192.168.10.0/24.
Здесь мы использовали следующие параметры:
routers — IP-адрес маршрутизатора по умолчанию
subnet-mask — маска подсети
domain-search — имя домена
domain-name-servers — имена DNS-серверов
range — диапазон IP-адресов, выделяемый клиентам (можно указывать несколько диапазонов, но обязательно указать хотя бы один)
Шаг 3: Настройка статических IP-адресов для машин клиентов
6. Для выделения конкретным клиентам фиксированного (статического) IP-адреса нужно добавить в файл конфигурации секции следующего вида, где явно указаны MAC-адрес и статически выделяемый IP-адрес:
7. Запустим службу DHCP и установим ее автоматический запуск при загрузке:
8. Далее нужно создать правило для службы DHCP в брандмауэре (Демон DHCPD прослушивает UDP-порт 67):
Шаг 4: Настройка машин клиентов
9. Теперь можно настроить клиентские компьютеры в сети для автоматического получения IP-адресов от DHCP-сервера.
Отредактируйте файл конфигурации интерфейса Ethernet на клиентской машине (обратите внимание на имя/номер интерфейса):
Укажите следующие опции:
Сохраните и закройте файл, а затем перезапустите сетевые службы или перезагрузите систему:
Если все настроено правильно, клиентская машина должна автоматически получать IP-адреса от DHCP-сервера.
Настройка DHCP-сервера завершена. Более подробную информацию о dhcpd и dhcpd.conf с описанием всех возможных опций можно получить в соответствующих man-страницах:
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Источник