Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
bananapi:врсз [2019/07/03 20:44] alex |
bananapi:врсз [2022/01/09 08:58] (текущий) alex |
||
---|---|---|---|
Строка 12: | Строка 12: | ||
==== Установка ==== | ==== Установка ==== | ||
Для установки пакета DCHP-сервера, нужно выполнить следующую команду: | Для установки пакета DCHP-сервера, нужно выполнить следующую команду: | ||
- | $ sudo apt install isc-dhcp-server | + | $ sudo apt-get install isc-dhcp-server |
После завершения установки отредактируйте файл ///etc/default/isc-dhcp-server// для определения интерфейсов, которые будет использовать DHCPD для обработки DHCP-запросов, при помощи опции **INTERFACES**. | После завершения установки отредактируйте файл ///etc/default/isc-dhcp-server// для определения интерфейсов, которые будет использовать DHCPD для обработки DHCP-запросов, при помощи опции **INTERFACES**. | ||
Например, если вам нужно, чтобы демон DHCPD прослушивал eth0, задайте следующее значение: | Например, если вам нужно, чтобы демон DHCPD прослушивал eth0, задайте следующее значение: | ||
INTERFACES="eth0" | INTERFACES="eth0" | ||
- | Если нужна работа DHCPD на интерфейсе eth0 и eth0.3 | + | Если нужна работа DHCPD на интерфейсе wlan0 и eth0.3 |
INTERFACES="wlan0 eth0.3" | INTERFACES="wlan0 eth0.3" | ||
- | Для сетевого интерфейса на котором будет работать DHCP сервер, нужно настроить статический IP-адрес. | + | Для сетевого интерфейса на котором будет работать DHCP сервер, **должен** быть настроить статический IP-адрес. |
Основной файл конфигурации DHCP — ///etc/dhcp/dhcpd.conf//, в него нужно внести всю информацию, отправляемую клиентам. | Основной файл конфигурации DHCP — ///etc/dhcp/dhcpd.conf//, в него нужно внести всю информацию, отправляемую клиентам. | ||
Строка 28: | Строка 28: | ||
**декларации** – определяют топологию сети, описывают клиентов и предоставляемые им адреса, или применяют группу параметров к группе деклараций. | **декларации** – определяют топологию сети, описывают клиентов и предоставляемые им адреса, или применяют группу параметров к группе деклараций. | ||
+ | |||
+ | Все строки параметров в файле конфигурации dhcp заканчиваются точкой с запятой (;). Некоторые параметры могут иметь не одно значение, например, domain-name-servers, у которого два IP-адреса, разделенные запятой. Строки, начинающиеся с ‘#’, являются комментариями и не обрабатываются сервером dhcp. | ||
В начале файла указываются глобальные параметры, которые будут действовать для всех указанных ниже деклараций. Это имя домена domain-name, имена DNS-серверов domain-name-servers, время аренды по умолчанию в секундах default-lease-time (если клиент не запросил его сам), максимальное время аренды в секундах max-lease-time и параметр authoritative, означающий «авторитетность» сервера в сегменте сети. Данный параметр нужен на тот случай, если клиент запросит неправильный IP-адрес — в этом случае сервер ответит ему отказом и предложит получить новый адрес. | В начале файла указываются глобальные параметры, которые будут действовать для всех указанных ниже деклараций. Это имя домена domain-name, имена DNS-серверов domain-name-servers, время аренды по умолчанию в секундах default-lease-time (если клиент не запросил его сам), максимальное время аренды в секундах max-lease-time и параметр authoritative, означающий «авторитетность» сервера в сегменте сети. Данный параметр нужен на тот случай, если клиент запросит неправильный IP-адрес — в этом случае сервер ответит ему отказом и предложит получить новый адрес. | ||
Строка 72: | Строка 74: | ||
- | ==== Запустим службу DHCP и установим ее автоматический запуск при загрузке: ==== | + | ==== Запуск ==== |
- | + | ||
- | ———— SystemD ———— | + | |
+ | Запуск службы DHCP | ||
+ | $ sudo /etc/init.d/isc-dhcp-server start | ||
+ | ———— SystemD ———— | ||
$ sudo systemctl start isc-dhcp-server.service | $ sudo systemctl start isc-dhcp-server.service | ||
+ | ———— SysVinit ———— | ||
+ | $ sudo service isc-dhcp-server start | ||
+ | | ||
+ | Установка автоматического запуска DHCP при загрузке: | ||
+ | $sudo update-rc.d isc-dhcp-server defaults | ||
+ | |||
+ | ———— SystemD ———— | ||
$ sudo systemctl enable isc-dhcp-server.service | $ sudo systemctl enable isc-dhcp-server.service | ||
+ | |||
———— SysVinit ———— | ———— SysVinit ———— | ||
+ | $ sudo service isc-dhcp-server enable | ||
- | $ sudo service isc-dhcp-server.service start | + | Отключение автоматического запуска DHCP при загрузке: |
- | $ sudo service isc-dhcp-server.service enable | + | $sudo update-rc.d isc-dhcp-server disable |
- | Команда для перезапуска | + | ———— SystemD ———— |
- | /etc/init.d/isc-dhcp-server restart | + | $ sudo systemctl disable isc-dhcp-server.service |
+ | ———— SysVinit ———— | ||
+ | $ sudo service isc-dhcp-server disable | ||
- | 8. Далее нужно создать правило для службы DHCP в брандмауэре (Демон DHCPD прослушивает UDP-порт 67): | + | Команда для перезапуска DHCP |
+ | $ sudo /etc/init.d/isc-dhcp-server restart | ||
- | $ sudo ufw allow 67/udp | + | ———— SystemD ———— |
- | $ sudo ufw reload | + | $ sudo systemctl restart isc-dhcp-server.service |
- | $ sudo ufw show | + | |
- | ==== Настройка клиентов ==== | + | ———— SysVinit ———— |
+ | $ sudo service isc-dhcp-server restart | ||
- | 9. Теперь можно настроить клиентские компьютеры в сети для автоматического получения IP-адресов от DHCP-сервера. | + | |
+ | Создание правила для службы DHCP в брандмауэре (Демон DHCPD прослушивает UDP-порт 67): | ||
+ | |||
+ | $ sudo ufw allow 67/udp | ||
+ | $ sudo ufw reload | ||
+ | $ sudo ufw show | ||
+ | |||
+ | ==== Настройка клиентов ==== | ||
Отредактируйте файл конфигурации интерфейса Ethernet на клиентской машине (обратите внимание на имя/номер интерфейса): | Отредактируйте файл конфигурации интерфейса Ethernet на клиентской машине (обратите внимание на имя/номер интерфейса): | ||
- | $ sudo vi /etc/network/interfaces | + | $ sudo vi /etc/network/interfaces |
Укажите следующие опции: | Укажите следующие опции: | ||
- | auto eth0 | + | auto eth0 |
- | iface eth0 inet dhcp | + | iface eth0 inet dhcp |
Сохраните и закройте файл, а затем перезапустите сетевые службы или перезагрузите систему: | Сохраните и закройте файл, а затем перезапустите сетевые службы или перезагрузите систему: | ||
———— SystemD ———— | ———— SystemD ———— | ||
- | $ sudo systemctl restart networking | + | $ sudo systemctl restart networking |
———— SysVinit ———— | ———— SysVinit ———— | ||
- | $ sudo service networking restart | + | $ sudo service networking restart |
Если все настроено правильно, клиентская машина должна автоматически получать IP-адреса от DHCP-сервера. | Если все настроено правильно, клиентская машина должна автоматически получать IP-адреса от DHCP-сервера. | ||
Строка 119: | Строка 141: | ||
Настройка DHCP-сервера завершена. Более подробную информацию о dhcpd и dhcpd.conf с описанием всех возможных опций можно получить в соответствующих man-страницах: | Настройка DHCP-сервера завершена. Более подробную информацию о dhcpd и dhcpd.conf с описанием всех возможных опций можно получить в соответствующих man-страницах: | ||
- | $ man dhcpd | + | $ man dhcpd |
- | $ man dhcpd.conf | + | $ man dhcpd.conf |
Ссылки:\\ | Ссылки:\\ | ||
https://itproffi.ru/nastrojka-dhcp-servera-v-linux\\ | https://itproffi.ru/nastrojka-dhcp-servera-v-linux\\ | ||
+ | https://wiki.debian.org/ru/DHCP_Server\\ | ||
https://wiki.debian.org/ru/NetworkConfiguration | https://wiki.debian.org/ru/NetworkConfiguration |