Как установить и настроить DHCP-сервер?


55

Как установить и настроить DHCP-сервер в Ubuntu 12.04?

Мне нужен пошаговый учебник, если у кого-то есть.


не самый удобный пользователь, но: help.ubuntu.com/community/dhcp3-server
adempewolff

1
Это может быть то же самое, но ... comtech247.net/2012/05/01/…
Митч

2
«Обратите внимание, что в Ubuntu 12.04 ISC DHCP-сервер является переходным пакетом для dhcp3-сервера». wiki.openelec.tv/...

1
Я предпочитаю dnsmasqDNS и DHCP сервер с простым синтаксисом файла конфигурации.
Reinier Post

Ответы:


55

Первое, что вам нужно сделать, это установить нужные нам пакеты.

Откройте терминал и введите:

sudo apt-get install isc-dhcp-server

Есть два основных файла /etc/default/isc-dhcp-serverи /etc/dhcp/dhcpd.confкоторые мы должны Configure так что позволяет взять первый.

Откройте терминал и используйте ваш любимый текстовый редактор:

sudo vim /etc/default/isc-dhcp-server

Вы должны получить следующее:

#Defaults for dhcp initscript
#sourced by /etc/init.d/dhcp
#installed at /etc/default/isc-dhcp-server by the maintainer scripts
#
#This is a POSIX shell fragment
#
#On what interfaces should the DHCP server (dhcpd) serve DHCP requests"
#Separate multiple interfaces with spaces, e.g. “eth0 eth1".
INTERFACES="eth0"

Замените eth0 выше на имя вашего сетевого интерфейса, для которого вы хотите, чтобы сервер арендовал адреса. На следующий файл.

Откройте терминал и введите:

sudo vim /etc/dhcp/dhcpd.conf

который должен дать вам вывод ниже.

#
#Sample configuration file for ISC dhcpd for Debian
#
#Attention: If /etc/ltsp/dhcpd.conf exists, that will be used as
#configuration file instead of this file.
#
#
....
option domain-name “example.org”;
option domain-name-servers ns1.example.org, ns2.example.org;
option domain-name “comtech.com”;
default-lease-time 600;
max-lease-time 7200;
log-facility local7;
subnet 10.0.0.0 netmask 255.255.255.0 {
range 10.0.0.150 10.0.0.253;
option routers 10.0.0.2;
option subnet-mask 255.255.255.0;
option broadcast-address 10.0.0.254;
option domain-name-servers 10.0.0.1, 10.0.0.2;
option ntp-servers 10.0.0.1;
option netbios-name-servers 10.0.0.1;
option netbios-node-type 8;
 ......
}

Это нужно немного объяснить.

  1. Настройте параметры в соответствии с требованиями вашей сети.
  2. Имя домена опции - это ваше имя зоны DNS. Например, мой установлен на comtech.com.
  3. Диапазон должен быть диапазоном IP-адресов, которые вы хотите, чтобы сервер выдавал клиентам.

Теперь перезапустите службу dhcp, набрав:

sudo service isc-dhcp-server restart

Это оно!! Ваш dhcp сервер должен быть запущен, но лучше проверить. Откройте терминал и введите:

sudo netstat -uap

который покажет вам что - то вроде следующего (ищет dhcpd, nmbdи named):

Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address State PID/Program name
udp        0      0 10.0.0.255:netbios-dgm  *:*                   1016/nmbd
udp        0      0 10.0.0.255:netbios-ns   *:*                   1016/nmbd
udp        0      0 *:bootps                *:*                   4525/dhcpd
udp        0      0 *:netbios-dgm           *:*                   1016/nmbd
udp        0      0 *:netbios-ns            *:*                   1016/nmbd
udp        0      0 chris-desktop:domain    *:*                   1273/named
udp        0      0 chris-desktop.lo:domain *:*                   1273/named
udp        0      0 chris-deskt:netbios-dgm *:*                   1016/nmbd
udp        0      0 chris-deskto:netbios-ns *:*                   1016/nmbd
udp6       0      0 [::]:domain             [::]:*                1273/named

1
Просто слово предостережения, обязательно используйте, /etc/dhcp/dhcpd.confа не /etc/dhcp3/dhcpd.conf
puk

1
Когда я перезапустить службу отображается это сообщение: stop: Unknown instance: isc-dhcp-server start/running, process 3027. Я не могу запустить службу. Я использую Ubuntu 13.10.
JJD

1
хороший . но убедитесь, что вы назначили статический IP b4 для запуска службы DHCP
krizna

Это не так сложно, но использовать dnsmasqпроще, если вы спросите меня.
Reinier Post

5

Дополнительные вещи могут быть включены в принятый ответ

  1. Назначьте статический IP-адрес перед запуском службы isc-dhcp-server.

  2. Вы можете зарезервировать IP для таких устройств, как принтеры и машины linux, добавив MAC-идентификатор в указанном ниже формате в определенной подсети.

    ------
    host bla1 { 
            hardware ethernet DD:GH:DF:E5:F7:D7;
            fixed-address 10.0.0.10;
    }
    ----
    

    Dhcp3-сервер сообщества Wiki

    DHCP-сервер Ubuntu


1

Из сообщества Ubuntu страницы dhcp3-сервера с помощью Вкладчиков в документации вики Ubuntu :

Протокол динамической конфигурации хоста (DHCP)

Протокол динамической конфигурации хоста (DHCP) - это сетевая служба, которая позволяет хост-компьютерам автоматически назначать параметры с сервера, а не настраивать вручную каждый сетевой хост вручную. Компьютеры, настроенные как клиенты DHCP, не имеют контроля над настройками, которые они получают от сервера DHCP, и конфигурация прозрачна для пользователя компьютера.

Монтаж

В командной строке терминала введите следующую команду для установки dhcpd:

sudo apt-get install dhcp3-server

Возможно, вам придется изменить конфигурацию по умолчанию, отредактировав /etc/dhcp3/dhcpd.conf в соответствии с вашими потребностями и конкретной конфигурацией.

Вам также нужно отредактировать, /etc/default/dhcp3-serverчтобы указать интерфейсы, которые должен слушать dhcpd. По умолчанию он слушает eth0.

конфигурация

Сообщение об ошибке, с которым завершается установка, может немного сбить с толку, но следующие шаги помогут вам настроить службу:

Чаще всего вы хотите назначить IP-адрес случайным образом. Это можно сделать с помощью настроек следующим образом:

nano -w /etc/dhcp3/dhcpd.conf
# Sample /etc/dhcpd.conf
# (add your comments here) 
default-lease-time 600;
max-lease-time 7200;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.1.255;
option routers 192.168.1.254;
option domain-name-servers 192.168.1.1, 192.168.1.2;
option domain-name "mydomain.example";

subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.10 192.168.1.100;
range 192.168.1.150 192.168.1.200;
} 

Это приведет к тому, что DHCP-сервер предоставит клиенту IP-адрес из диапазона 192.168.1.10-192.168.1.100 или 192.168.1.150-192.168.1.200. Он арендует IP-адрес на 600 секунд, если клиент не запрашивает конкретный период времени. В противном случае максимальная (разрешенная) аренда составит 7200 секунд. Сервер также «сообщит» клиенту, что ему следует использовать 255.255.255.0 в качестве маски подсети, 192.168.1.255 в качестве широковещательного адреса, 192.168.1.254 в качестве маршрутизатора / шлюза и 192.168.1.1 и 192.168.1.2 в качестве DNS-серверов.

Если вам нужно указать WINS-сервер для ваших клиентов Windows, вам нужно будет включить опцию netbios-name-servers, например

nano -w /etc/default/dhcp3-server
option netbios-name-servers 192.168.1.1; 

dhcp3-сервер и несколько интерфейсов

пример нескольких интерфейсов

Интерфейс

nano -w /etc/network/interfaces
auto lo
iface lo inet loopback

mapping hotplug
        script grep
        map eth1

iface eth1 inet dhcp

auto eth0
iface eth0 inet static
    address 10.152.187.1
    netmask 255.255.255.0

auto wlan0
  iface wlan0 inet static
    address 192.168.1.1
    netmask 255.255.255.0
    up     /sbin/iwconfig wlan0 mode TTTTTT && /sbin/iwconfig wlan0 enc
restricted && /sbin/iwconfig wlan0 key [Y] XXXXXXXX && /sbin/iwconfig
wlan0 essid SSSSSSSS

auto eth1

Выберите интерфейсную карту

nano -w /etc/default/dhcp3-server
INTERFACES="wlan0 eth0"

Настроить подсеть

nano -w /etc/dhcp3/dhcpd.conf
ddns-update-style none;
log-facility local7;

subnet 192.168.1.0 netmask 255.255.255.0 {

        option routers                  192.168.1.1;
        option subnet-mask              255.255.255.0;
        option broadcast-address        192.168.1.255;
        option domain-name-servers      194.168.4.100;
        option ntp-servers              192.168.1.1;
        option netbios-name-servers     192.168.1.1;
        option netbios-node-type 2;
        default-lease-time 86400;
        max-lease-time 86400;

        host bla1 {
                hardware ethernet DD:GH:DF:E5:F7:D7;
                fixed-address 192.168.1.2;
        }
        host bla2 {
                hardware ethernet 00:JJ:YU:38:AC:45;
                fixed-address 192.168.1.20;
        }
}

subnet  10.152.187.0 netmask 255.255.255.0 {

        option routers                  10.152.187.1;
        option subnet-mask              255.255.255.0;
        option broadcast-address        10.152.187.255;
        option domain-name-servers      194.168.4.100;
        option ntp-servers              10.152.187.1;
        option netbios-name-servers     10.152.187.1;
        option netbios-node-type 2;

        default-lease-time 86400;
        max-lease-time 86400;

        host bla3 {
                hardware ethernet 00:KK:HD:66:55:9B;
                fixed-address 10.152.187.2;
        }
}

Проверьте маршрут

ip route
192.168.1.0/24 dev wlan0  scope link
82.16.TT.0/24 dev eth1  scope link
10.152.187.0/24 dev eth0  scope link
default via 82.16.TT.UU dev eth1
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.