Инструменты пользователя

Инструменты сайта


bananapi:врсз

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
bananapi:врсз [2019/07/03 20:32]
alex
bananapi:врсз [2022/01/09 08:58] (текущий)
alex
Строка 3: Строка 3:
 ==== Как работает DHCP? ==== ==== Как работает DHCP? ====
 После загрузки подключенный к сети клиент (на котором настроено использование DHCP) отправляет DHCP-серверу пакет DHCPDISCOVER. После загрузки подключенный к сети клиент (на котором настроено использование DHCP) отправляет DHCP-серверу пакет DHCPDISCOVER.
 +
 Получив пакет запроса DHCPDISCOVER,​ DHCP-сервер отвечает пакетом DHCPOFFER. Получив пакет запроса DHCPDISCOVER,​ DHCP-сервер отвечает пакетом DHCPOFFER.
 +
 Клиент принимает пакет DHCPOFFER и отправляет серверу пакет DHCPREQUEST,​ подтверждая готовность принять сетевую конфигурацию,​ предоставленную в пакете. Клиент принимает пакет DHCPOFFER и отправляет серверу пакет DHCPREQUEST,​ подтверждая готовность принять сетевую конфигурацию,​ предоставленную в пакете.
 +
 Получив от клиента пакет DHCPREQUEST,​ сервер отправляет пакет DHCPACK, который разрешает клиенту использование выделенного IP-адреса. Получив от клиента пакет DHCPREQUEST,​ сервер отправляет пакет DHCPACK, который разрешает клиенту использование выделенного IP-адреса.
  
 +==== Установка ====
 Для установки пакета 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//,​ в него нужно внести всю информацию,​ отправляемую клиентам.
Строка 25: Строка 29:
 **декларации** – определяют топологию сети, описывают клиентов и предоставляемые им адреса,​ или применяют группу параметров к группе деклараций. **декларации** – определяют топологию сети, описывают клиентов и предоставляемые им адреса,​ или применяют группу параметров к группе деклараций.
  
-4. Для ​определения настроек DHCP-сервера ​откроем и отредактируем файл конфигурации:+Все строки параметров в файле конфигурации dhcp заканчиваются точкой с запятой (;). Некоторые параметры могут иметь не одно значение, например, domain-name-servers,  ​у которого два IP-адреса, разделенные запятой. Строки,​ начинающиеся с ‘#’, являются ​комментариями и не обрабатываются сервером dhcp.
  
-$ sudo vi /​etc/​dhcp/​dhcpd.conf +В начале файла указываются ​глобальные параметры, ​которые ​будут действовать для всех указанных ниже деклараций. Это имя домена 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-адрес — в этом случае сервер ответит ему отказом и предложит получить новый адрес.+
  
-option domain-name "​itproffi.lan"​+  ddns-update-style none
-option domain-name-servers ns1.itproffi.lan,​ ns2.itproffi.lan+  option domain-name ​"​babana"​
-default-lease-time ​3600;  +  default-lease-time ​600
-max-lease-time 7200; +  max-lease-time 7200; 
-authoritative;​ +   
-Обратите внимание,​ что перед некоторыми параметрами указано слово ​option, а перед некоторыми — нетЭто слово задает параметры,​ которые передаются клиенту в сетевой конфигурации.+  ​authoritative;​ 
 +  ​log-facility local7; 
 +   
 +  subnet 192.168.100.0 netmask 255.255.255.0 { 
 +    range 192.168.100.100 192.168.100.200;​ 
 +    ​option ​routers 192.168.100.1; 
 +    option broadcast-address 192.168.100.255;​ 
 +  } 
 +   
 +  subnet 192.168.101.0 netmask 255.255.255.0 { 
 +    range 192.168.101.100 192.168.101.200;​ 
 +    option routers 192.168.101.1;​ 
 +    option broadcast-address 192.168.101.255;​ 
 +  }
  
-5. Теперь нужно ​указать подсетьв нашем ​примере ​мы будем использовать DHCP в локальной сети ​192.168.10.0/​24.+Перед некоторыми ​параметрами ​указано слово option, а перед ​некоторыми — нет. Это слово задает параметры, ​которые передаются клиенту в сетевой конфигурации.
  
-subnet 192.168.10.0 netmask 255.255.255.0 { +  * option routers ​— IP-адрес маршрутизатора по умолчанию 
-          ​option routers ​192.168.10.1;​ +  ​* ​option subnet-mask ​— маска подсети 
-          option subnet-mask ​255.255.255.0;​ +  ​* ​option domain-search ​— имя домена 
-          option domain-search ​"​itproffi.lan";​ +  ​* ​option domain-name-servers ​— имена DNS-серверов 
-          option domain-name-servers ​192.168.10.1;​ +  ​* ​range — диапазон IP-адресов, выделяемый клиентам (можно указывать несколько ​диапазонов, но обязательно указать хотя бы один)
-          range 192.168.10.10 192.168.10.100;​ +
-          range 192.168.10.110 192.168.10.200;​ +
-+
-Здесь мы использовали следующие параметры:+
  
-routers — IP-адрес маршрутизатора по умолчанию +Для выделения конкретным клиентам фиксированного (статического) IP-адреса нужно добавить ​в файл конфигурации секции ​следующего вида, где ​явно указаны MAC-адрес и статически выделяемый IP-адрес:
-subnet-mask — маска подсети +
-domain-search — имя домена +
-domain-name-servers — имена DNS-серверов +
-range — диапазон IP-адресоввыделяемый ​клиентам (можно указывать несколько диапазоновно обязательно указать хотя бы один)+
  
 +  host centos-node {
 +        hardware ethernet 00:​f0:​m4:​6y:​89:​0g;​
 +        fixed-address 192.168.10.105;​
 +  }
 +  ​
 +  host fedora-node {
 +         ​hardware ethernet 00:​4g:​8h:​13:​8h:​3a;​
 +         ​fixed-address 192.168.10.106;​
 +  }
  
-Шаг 3: Настройка статических IP-адресов для машин клиентов 
-6. Для выделения конкретным клиентам фиксированного (статического) IP-адреса нужно добавить в файл конфигурации секции следующего вида, где явно указаны MAC-адрес и статически выделяемый IP-адрес:​ 
  
-host centos-node { +==== Запуск ====
-      hardware ethernet 00:​f0:​m4:​6y:​89:​0g;​ +
-      fixed-address 192.168.10.105;​ +
-}+
  
-host fedora-node { +Запуск службы DHCP 
-       ​hardware ethernet 00:​4g:​8h:​13:​8h:​3a;​ +  $ sudo /​etc/​init.d/​isc-dhcp-server start 
-       ​fixed-address 192.168.10.106;​ +———— SystemD ———— ​  
-+  $ sudo systemctl start isc-dhcp-server.service 
-7. Запустим ​службу DHCP и установим ее автоматический запуск при загрузке:​+———— SysVinit ———— 
 +  $ sudo service isc-dhcp-server start 
 +       
 +Установка автоматического ​запуска DHCP при загрузке:​ 
 +  $sudo update-rc.d isc-dhcp-server defaults
  
 ———— SystemD ———— ———— SystemD ————
 +  $ sudo systemctl enable isc-dhcp-server.service
  
-$ sudo systemctl start 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 ———— 
 +  $ sudo systemctl disable ​isc-dhcp-server.service 
 + 
 +———— SysVinit ———— 
 +  ​$ sudo service ​isc-dhcp-server disable 
 + 
 +Команда для перезапуска DHCP 
 +  $ sudo /​etc/​init.d/​isc-dhcp-server restart 
 + 
 +———— SystemD ———— ​  
 +  $ sudo systemctl restart ​isc-dhcp-server.service 
 + 
 +———— SysVinit ———— 
 +  $ sudo service isc-dhcp-server restart
  
-  /​etc/​init.d/​isc-dhcp-server restart 
  
 +Создание правила для службы DHCP в брандмауэре (Демон DHCPD прослушивает UDP-порт 67):
  
-8. Далее нужно создать правило для службы DHCP в брандмауэре (Демон DHCPD прослушивает UDP-порт ​67):+  $ sudo ufw allow 67/udp 
 +  $ sudo ufw reload 
 +  $ sudo ufw show
  
-$ sudo ufw allow 67/udp +==== Настройка клиентов ​====
-$ sudo ufw reload +
-$ sudo ufw show +
-Шаг 4: Настройка ​машин ​клиентов +
-9. Теперь можно настроить клиентские компьютеры в сети для автоматического получения IP-адресов от DHCP-сервера.+
  
 Отредактируйте файл конфигурации интерфейса 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-сервера.
  
Строка 112: Строка 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
bananapi/врсз.1562185931.txt.gz · Последние изменения: 2019/07/03 20:32 (внешнее изменение)