4. DHCP szerver beállítás

4.1. DHCP szerver UNIX rendszerekhez

Többféle DHCP szerver létezik a UN*X-szerű operációs rendszerekhez, mind pénzes, mind szabad felhasználású. Az egyik legnépszerűbb szabad szoftver a Paul Vixie/ISC- féle DHCPd. Jelenleg a legutolsó verzió a 2.0 (a legtöbb felhasználó számára javasolt), de a 3.0 is bétatesztelés alatt áll. Letöltheted a ftp://ftp.isc.org/isc/dhcp/ webhelyről.

Néhány Linux összeállítás tartalmazza a bináris dhcpd csomagot, ezért átugorhatod a következő részt, ha ezen a módon telepítetted.

Miután letöltötted, csomagold ki, majd lépj be a forráskönyvtárba. Itt add ki a ./configure parancsot.

Eltart egy kis ideig, amíg beállítja a dolgokat. Amikor kész, add ki a make, majd a make install parancsokat.

4.2. DHCP szerver beállítás

Miután kész a telepítés, add ki az ifconfig -a parancsot. Valami hasonlót kell látnod:

eth0      Link encap:10Mbps Ethernet  HWaddr 00:C0:4F:D3:C4:62
          inet addr:183.217.19.43  Bcast:183.217.19.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2875542 errors:0 dropped:0 overruns:0
          TX packets:218647 errors:0 dropped:0 overruns:0
          Interrupt:11 Base address:0x210

Ha nem látható a MULTICAST szó a kiírásban, újra kell fordítanod a kerneled, hogy benne legyen a támogatás. A legtöbb rendszeren azonban erre nincs szükség.

A következő lépés az útválasztás beállítása a 255.255.255.255 címre. Részlet a DHCPd README fájlból:

A válogatós DHCP kliensekkel (pl. Win95) való korrekt együttműködés érdekében a 255.255.255.255 címre is képesnek kell lennie csomagokat küldeni. Sajnos, a Linux ragaszkodik ahhoz, hogy a 255.255.255.255-öt a helyi broadcast címként állítsa be (itt ez 192.5.5.223). Ez a DHCP protokoll megsértése, és amíg a legtöbb DHCP kliens nem veszi észre a problémát, néhány (pl. az összes Microsoft kliens) igen. Az ilyen problémával küzdő kliensek nem "látják" a szervertől érkező "DHCPOFFER" üzeneteket.

Gépeld be: route add -host 255.255.255.255 dev eth0

Ha a "255.255.255.255: Unknown host" választ kapod, akkor próbáld meg a következő bejegyzést hozzáadni az /etc/hosts fájlhoz:

255.255.255.255 all-ones

Aztán pedig:

route add -host all-ones dev eth0

vagy

route add 255.255.255.0 dev eth0

Itt természetesen az eth0 a hálózati eszköz neve, ha nálad más, változtasd meg.

4.3. DHCPd beállítások

Most konfigurálni kell a DHCPd démont. Ennek érdekében meg kell csinálnod, vagy módosítanod kell az /etc/dhcpd.conf fájlt. Van ehhez grafikus program is a KDE alatt ( http://www.kde.org/ ), amit kcmdhcpd-nek hívnak és nagyon hasonlít a Windows NT beállítóprogramjára. A KDE 2.0 kiadásakor benne lesz a csomagban vagy letölthető az ftp://ftp.us.kde.org/pub/kde/unstable/apps/network/ webhelyről.

Ha kézzel akarod konfigurálni a démont, akkor kövesd az alábbi utasításokat.

A legáltalánosabb esetben a címeket véletlenszerűen akarod kiosztani. Ez a következő beállításokkal elérhető:

# 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.org";

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;
}

Ez azt eredményezi, hogy a szerver a 192.168.1.10-192.168.1.100 vagy 192.168.1.150-192.168.1.200 tartományból fog IP címeket kiadni. 600 másodpercig biztosítja az IP címet, ha a kliens nem kér más időkeretet. Egyébként, a maximális (megengedett) "bérleti idő" 7200 mp. A szerver ezen kívül ajánlja, hogy a kliens a 255.255.255.0 alhálózati maszkot, a 192.168.1.255-ös broadcast címet, a 192.168.1.254-et, mint a router címét és a 192.168.1.1 és 192.168.1.2 című névszervereket használja.

Ha WINS szervert kell a Windows kliensek számára megadni, akkor beszúrhatod még a netbios-name-servers beállítást is, például:

option netbios-name-servers 192.168.1.1;

Ezen kívül specifikus IP címeket adhatsz meg, amik a kliens hálókártyájának ethernet címén alapulnak, például:

host haagen {
   hardware ethernet 08:00:2b:4c:59:23;
   fixed-address 192.168.1.222;
}

Ez a példa a 192.168.1.122 címet osztja ki a 08:00:2b:4c:59:23 ethernet azonosítójú kártyával rendelkező kliensnek.

Ezeket keverheted is, például ha van néhány kliens aminek fix IP cím kell, másoknak pedig (pl. laptopos felhasználók) dinamikus címkiosztás. Egy csomó más lehetőség is van, például NIS szerver címek, időszerverek címei stb. Ha bármelyikre szükséged van, olvasd el a dhcpd.conf kézikönyv oldalt.

4.4. A szerver indítása

Egy dolgot kell tenned, mielőtt a szervert indítanád. A legtöbb esetben a DHCP telepítés nem készíti el a dhcpd.leases . Ezt a szerver használja abból a célból, hogy tárolja az aktuális kiosztási információkat. Ez sima szöveges formátumú, tehát a démon működése közben is megnézheted a tartalmát. A dhcpd.leases elkészítéséhez gépeld be:
touch /var/state/dhcp/dhcpd.leases

Ez egy üres fájlt készít (méret = 0). Néhány régebbi 2.0-ás szerververzió /etc/dhcpd.leases fájlt igényel. Neked nem kell semmit sem tenned a fájllal, ezt a dhcpd kezeli. Ha olyan hibaüzenetet kapsz, hogy a fájl már létezik, simán figyelmen kívül hagyhatod és menj a következő lépésre.

Most már indíthatod a DHCP szervert. Gépeld be (vagy rakd be az indítószkriptekbe):

/usr/sbin/dhcpd

Ez az eth0 eszközön elindítja a szervert. Ha más eszközre akarod felhúzni, akkor add meg a parancssorban, például:

/usr/sbin/dhcpd eth1

Ellenőrzési és hibakeresési célból először "debug" módban és előtérben futtatva indítsd el, ezt így teheted meg:

/usr/sbin/dhcpd -d -f

Ezek után indítsd el az egyik kliensedet, és figyeld a szerver konzolját. Számos hibaellenőrző üzenetet fogsz látni. Ha minden működik, akkor kész vagy :) Állítsd le a dhcpd-t és indítsd újra -d és -f paraméter nélkül. Ha rendszerinduláskor is el akarod indítani, akkor tedd be például az
/etc/rc.d/rc.local
fájlba (vagy inkább a szabványos indítási folyamatba - a ford.)

4.5. Egyéb érdekes olvasnivalók

A Linux Magazine egy nagyon jó cikket közöl egyik számában Network Nirvana: How to make Network Configuration as easy as DHCP (Hálózati Mennyország: Hogyan végezzük el hálózati beállításainkat könnyedén) címmel. ami a DHCP beállítását taglalja.