DHCP

Zde je vzorový komentovaný konfigurační soubor /etc/dhcpd.conf pro nastavení dhcp serveru:

# soubor /etc/dhcpd.conf
# upraveno 04_0008 – LS

#položky option
#subnet-mask – broadcastová adresa
#routers – výchozí brána, většinou router do internetu
#domain-name-servers – servery DNS,
#může jich být i více (ip adresy oddelene obycejnou carkou).
# domain-name – doména, do které opčítač náleží

authoritative;
ddns-update-style ad-hoc;
max-lease-time 604800;
default-lease-time 86400;
option subnet-mask 255.255.255.0;
# jmena DNS serveru (mohou byt tri)
option domain-name-servers 192.168.0.1;
option broadcast-address 192.168.0.255;
option domain-name „mojedomena.cz“;
#option domain-name-servers 192.168.0.1, 239.252.197.3;
option domain-name-servers 192.168.0.1;
option routers 192.168.0.1;
server-name „dhcpserver“;

#subnet definuje síť pro jejímž klientům dhcp server přiděluje adresy.
#range (range, obor ) – rozsah adres spravovaných serverem. Rozsahů může být více než jeden.
#default-lease-time – standardní doba pronájmu adresy.
#max-lease-time – maximální doba pronájmu adresy.

# PRO NEZNAME POCITACE ZADAVA ADRESU Z TOHOTO ROZSAHU
subnet 192.168.0.0 netmask 255.255.255.0 {
range 192.168.0.220  192.168.0.254;
}

# PRO VPN REZERVOVANÉ ADRESY Z TOHOTO ROZSAHU
#    subnet 192.168.0.0 netmask 255.255.255.0 {
#    range 192.168.0.40-192.168.0.50;
#   }

# PRIKLAD NASTAVENI PEVNE ADRESY PODLE MAC ADRESY SITOVE KARTY
#     host jmenopocitace { # komentar o pocitaci
#     hardware ethernet 08:00:20:20:C8:DB;
#     fixed-address 192.168.1.2;
#  }

# MISTNI SIT

group {
use-host-decl-names true;

# SERVERY
#host prvnistanice { # popis stanice
#        hardware ethernet  00:XA:YE:1C:66:EF;
#        fixed-address 192.168.0.1;
#        }

# DALSI MOŽNÁ DOPLŇKOVÁ VOLITELNÁ NASTAVENÍ
# allow bootp;
# use-host-decl-names on;
# ddns-update-style none;
#
#
# toto je hodnota WINS serveru, coz je tento pocitac
# pokud je nastaveno v /etc/samba/smb.conf
#        wins support = yes
#   option netbios-name-servers 192.168.0.1;
#   option netbios-dd-server 192.168.0.1;
#   option netbios-node-type 8;
#
#   option time-offset 3600;
#   option ip-forwarding off;
#

 

V naší síti budeme využívat DHCP server pro přidělování IP adres našim dvěma stanicím, předávat informaci o serveru DNS a doméně. DHCP je navržen k poskytování všech možných parametrů TCP/IP svým klientům, přičemž umožňuje, aby byly IP adresy přiřazovány dynamicky. Pokud se letmo podíváte o pár řádků níž na výpis souboru /etc/dhcpd.conf, tak zjistíte, že sice DHCP server provozujeme, ale IP adresy jsou přiřazovány stále celkem „staticky“ a to sice podle ethernetových adres síťových karet našich stanic. Proč jim tedy rovnou nepřiřazovat IP „ručně“? Toto řešení jsem zvolil proto, že je pohodlnější IP adresy (a veškeré další předávané informace) jednou napsat do souboru dhcpd.conf a už se o ně nikdy nestarat. Jednou z mých stanic je notebook, který občas připojuji také do jiné sítě. Vždy, když jej připojím zpět, hned získá mnou definovanou IP adresu, doménu a adresu serveru DNS. Není to sice moc „dynamické“, ale funguje to bezchybně. Příkazem

route add -host 255.255.255.255 dev eth0

zajistíme správné routování pro klienty s Windows (zařízení eth0 příp. změníme na odpovídající) a můžeme se pustit do editace souboru /etc/dhcpd.conf:

authoritative; ddns-update-style ad-hoc; # max-lease-time 604800; default-lease-time 86400; option subnet-mask 255.255.255.0; option domain-name-servers 192.168.1.1; option domain-name "doma.cz"; # subnet 192.168.1.0 netmask 255.255.255.0 { } group {         use-host-decl-names true;         host stanice {                 hardware ethernet 00:00:1C:D1:4D:F9;                 fixed-address 192.168.1.3;         }         host vader {                 hardware ethernet 00:08:02:E6:40:02;                 fixed-address 192.168.1.2;         } } # end

Náš DHCP server poskytuje tyto informace:

  • option subnet-mask 255.255.255.0; (definuje masku podsítě)

  • option domain-name-servers 192.168.1.1; (říká, že náš DNS server má adresu 192.168.1.1 – je to tedy opět náš server)

  • option domain-name „doma.cz“; (předává informaci o doméně)

  • subnet 192.168.1.0 netmask 255.255.255.0 (démon poskytuje konfigurační informace klientům patřícím k této síti)

V direktivě group definujeme stálé adresy pro naše stanice podle ethernetových adres (stanice s názvy vader a stanice). Ethernetové adresy se dozvíte např. zadáním příkazu ifconfig zarizeni.

win obr

Posledním zajímavým zápisem je use-host-decl-names true; uvnitř příkazu group, který říká, že kromě IP adres definovaných v příkazu host, budeme posílat také název hostitele (v našem případě stanice a vader). V síťovém nastavení našich klientů se tedy nemusíme starat skutečně o nic.

Soubor /etc/dhcpd.conf uložíme a DHCP server spustíme příkazem

dhcpd

Pokud chceme DHCP server spouštět hned při startu serveru, přidáme příkaz dhcpd do souboru /etc/rc.d/rc.local (Slackware). Tabulku výpůjček IP adres můžeme kontrolovat v souboru dhcpd.leases (/var/state/dhcp/dhcpd.leases).

Nyní se na pár vteřin přesuneme ke klientovi a zkusíme, zda DHCP funguje. Otevřeme složku Síťová připojení / Připojení k místní síti / vlastnosti Protokolu TCP/IP a v obecném nastavení vybereme „Získat adresu IP ze serveru automaticky“ a „Získat adresu DNS serveru automaticky“. Po potvrzení otevřeme opět ve složce Síťová připojení položku „Připojení k místní síti – stav“ a pokud jsme vše nastavili správně, měl by nás čekat výsledek podobný tomu na obrázku.

Pokud ne, zkusíme Windows restartovat a pokud ani to nepomůže, udělali jsme někde chybu a nezbývá než zkontrolovat konfiguraci, nebo se ptát v diskusi pod článkem.