Tartalomjegyzék
Kivonat
A dinamikus gépkonfigurációs protokoll (dynamic host configuration protocol, DHCP) célja, hogy a hálózati beállítások központilag (egy kiszolgálóról) kerüljenek kiosztásra ahelyett, hogy minden munkaállomást helyileg kellene beállítani. A DHCP használatára beállított gép nem tudja szabályozni a saját statikus IP-címét. Ehelyett a kiszolgáló útmutatásai szerint teljesen automatikusan beállítja magát. Ha a NetworkManagert használja a kliensoldalon, akkor a kliensen egyáltalán semmit nem kell beállítani. Ez akkor hasznos, ha folyamatosan változik a környezet, de egyszerre csak egy csatoló aktív. DHCP-kiszolgálót futtató gépen soha ne használja a NetworkManagert.
A DHCP használatának egyik módja, hogy a kiszolgáló minden klienst azonosít a hálózati kártya hardvercímével (amely a legtöbb esetben rögzített), majd csatlakozáskor ugyanazokat a beállításokat adja meg a kliens számára. A DHCP azonban úgy is beállítható, hogy a kiszolgáló dinamikusan rendeljen címet az egyes kliensekhez egy erre a célra lefoglalt címtartományból. Ez utóbbi esetben is, a DHCP-kiszolgáló minden kérés esetén megpróbálja mindig ugyanazt a címet rendelni a klienshez, még hosszabb idő eltelte után is. Ez természetesen csak akkor működik, ha a hálózatban nincs több kliens, mint cím.
Mindez azt jelenti, hogy a DHCP kétféleképpen is leegyszerűsítheti a rendszergazdák életét. A címekkel és hálózati konfigurációval kapcsolatos változtatások, a nagyobbak is, a kiszolgáló konfigurációs fájljának módosításával központilag elvégezhetők. Ez sokkal kényelmesebb, mint a munkaállomások egyenkénti átkonfigurálása. A gépek hálózatba szervezése is sokkal egyszerűbb, különösen az új gépeké, mivel ezek a címkészletből automatikusan kaphatnak IP-címet. A megfelelő hálózati beállítások lekérése a DHCP-kiszolgálótól különösen hasznos megoldás a folyton más és más hálózatokban használt noteszgépek esetén.
Ebben a fejezetben a DHCP-kiszolgáló ugyanazon az alhálózaton fut, mint a munkaállomások (192.168.2.0/24) és 192.168.2.1 az átjáró. Fix IP-címe van (192.168.2.254) és két címtartományt szolgál ki: 192.168.2.10 – 192.168.2.20 és 192.168.2.100 – 192.168.2.200.
A DHCP-kiszolgáló a kliens számára nemcsak az IP-címet és a hálózati maszkot tudja kiosztani, hanem akár a gép- és tartománynevet, valamint az átjáró és a névkiszolgáló címét is. A DHCP lehetővé teszi számos további paraméter központi beállítását is. Be lehet állítani például egy időkiszolgálót, amelytől a kliensek lekérdezhetik az aktuális időt, vagy egy nyomtatókiszolgálót is.
A DHCP-kiszolgáló telepítéséhez indítsa el a YaST-ot és válassza ki a + menüpontot. Válassza ki a + menüpontot, majd a pontot. A telepítési folyamat befejezéséhez erősítse meg a függő csomagok telepítését.
![]() | LDAP-támogatás |
|---|---|
A YaST DHCP-modul beállítható úgy is, hogy a kiszolgáló konfigurációját helyileg tárolja (azon a gépen, amelyik a DHCP-kiszolgálót futtatja), de úgy is, hogy a konfigurációs adatokat egy LDAP-kiszolgáló kezelje. Ha LDAP-t kíván használni, akkor még a DHCP-kiszolgáló konfigurálása előtt állítsa be az LDAP-környezetet. További információ az LDAP-ról: Chapter LDAP—A Directory Service (↑Security Guide). | |
A YaST DHCP-moduljával (yast2-dhcp-server) saját DHCP-kiszolgáló állítható be a helyi hálózat számára. A modul elindítható varázsló segítségével és szakértői módban is.
A modul első használatakor egy beállító varázsló indul el, amelyben néhány alapvető döntést kell meghozni a kiszolgáló felügyeletével kapcsolatban. Ezzel a kezdeti beállítási folyamattal kialakítható egy alapszintű DHCP-kiszolgáló, amely a legfontosabb funkciókat biztosítja. Szakértői módban a speciálisabb beállítások is megadhatók.
Első lépésben a YaST megkeresi a rendelkezésre álló hálózati csatolókat, majd megjeleníti őket egy listában. A listából válassza ki azt a csatolót, amelyen a DHCP-kiszolgálónak figyelnie kell, majd kattintson a gombra. Ezután a tűzfal kinyitásához jelölje meg a lehetőséget, majd nyomja meg a gombot. Lásd: 24.1. ábra - DHCP-kiszolgáló: A hálózati csatoló kiválasztása.
A jelölőnégyzettel adja meg, hogy a DHCP-beállítások automatikusan egy LDAP-kiszolgálón tárolódjanak-e. A beviteli mezőkben adja meg a DHCP-kiszolgáló által kezelendő összes kliens hálózati jellemzőit. Ezek a jellemzők a tartománynév, az időkiszolgáló címe, az elsődleges és másodlagos névkiszolgáló címe, a nyomtató- és WINS-kiszolgáló címe (Windows- és Linux-klienseket egyaránt tartalmazó vegyes hálózat esetén), az átjáró címe és a lejárati idő. Lásd: 24.2. ábra - DHCP-kiszolgáló: Általános beállítások.
Ebben a lépésben állíthatja be, hogy a dinamikus IP-cím hogyan legyen hozzárendelve a kliensekhez. Ehhez adjon meg egy IP-tartományt, amelyből a kiszolgáló címeket tud rendelni a DHCP-kliensekhez. Az összes címre ugyanannak a hálózati maszknak kell vonatkoznia. Adja meg a lejárati időt is, ameddig a kliens megtarthatja az IP-címet anélkül, hogy a használat hosszabbítását kellene kérnie. Nem kötelező, de a maximális lejárati idő is megadható – az az időtartam, ameddig a kiszolgáló fenntart egy IP-címet az adott kliens számára. Lásd: 24.3. ábra - DHCP-kiszolgáló: Dinamikus DHCP.
A konfigurációs varázsló harmadik lépése után megjelenik az utolsó párbeszédablak, amelyben megadható, hogy a DHCP-kiszolgálót hogyan kell elindítani. Itt meghatározható, hogy a rendszer betöltése után a DHCP-kiszolgáló automatikusan elinduljon-e, vagy szükség esetén kézzel kell elindítani (például tesztelési célokból). A kiszolgáló beállításának befejezéséhez kattintson a gombra. Lásd: 24.4. ábra - DHCP-kiszolgáló: Indítás.
openSUSE alatt egyaránt rendelkezésre áll DHCP-kiszolgáló és DHCP-kliens. A rendelkezésre álló DHCP-kiszolgáló a dhcpd (az Internet Software Consortium tette közzé). A kliensoldalon két különböző DHCP-kliensprogram közül választhat: dhcp-client (szintén az ISC-től) és a DHCP kliensdémon a dhcpcd csomagban.
Az openSUSE alapértelmezés szerint a dhcpcd-t telepíti. A program kezelése nagyon egyszerű és a DHCP-kiszolgáló figyelése érdekében minden rendszerindításkor automatikusan elindításra kerül. Nincs szükség konfigurációs fájlra és a legtöbb szokásos kialakításban azonnal használható. Összetettebb helyzetekben használja az ISC dhcp-client-et, amelyet az /etc/dhclient.conf konfigurációs fájl vezérel.
Minden DHCP-rendszer központi része a dinamikus gépkonfigurációs protokollt kezelő démon. A kiszolgáló kiosztja a címeket, majd az /etc/dhcpd.conf konfigurációs fájlban megadott beállításoknak megfelelően figyeli a használatukat. A fájlban lévő paraméterek és értékek módosításával a rendszergazda többféleképp befolyásolhatja a program viselkedését. A 24.1. példa - Az /etc/dhcpd.conf konfigurációs fájl példa egy egyszerű /etc/dhcpd.conf példafájlt mutat be.
24.1. példa - Az /etc/dhcpd.conf konfigurációs fájl¶
default-lease-time 600; # 10 minutes
max-lease-time 7200; # 2 hours
option domain-name "example.com";
option domain-name-servers 192.168.1.116;
option broadcast-address 192.168.2.255;
option routers 192.168.2.1;
option subnet-mask 255.255.255.0;
subnet 192.168.2.0 netmask 255.255.255.0
{
range 192.168.2.10 192.168.2.20;
range 192.168.2.100 192.168.2.200;
}
Ez az egyszerű konfigurációs fájl elegendő ahhoz, hogy a DHCP-kiszolgáló IP-címeket osszon ki a hálózatban. Figyeljen arra, hogy minden sor végén legyen pontosvessző, mivel ellenkező esetben a dhcpd nem lesz elindítva.
A példafájl három részre osztható. Az első megadja, hogy egy IP-cím alapértelmezés szerint hány másodpercig marad a kérő kliensnél (default-lease-time), mielőtt megújítást kéne alkalmazni. Ez a szakasz a maximális időszakot is megadja, ameddig a gép a DHCP-kiszolgáló által hozzárendelt IP-címet megújítás kérése nélkül megtarthatja (max-lease-time).
A második részben néhány alapvető hálózati paraméter van megadva általánosságban:
Az option domain-name sor a hálózat alapértelmezett tartományát adja meg.
Az option domain-name-servers bejegyzéssel maximum három érték adható meg az IP-címeket gépnevekre (és vissza) alakító DNS-kiszolgálókhoz. Ideális eseten még a DHCP beállítása előtt kell beüzemelni egy névkiszolgálót a saját gépen vagy a hálózat egy másik részén. Célszerű, ha a névkiszolgáló egy gépnevet is megad minden dinamikus címhez és viszont. A névkiszolgáló beállításának leírása: 23. fejezet - A DNS (tartománynévrendszer, Domain Name System).
Az option broadcast-address sor adja meg a kérést küldő kliens által használandó üzenetszórási címet.
Az option routers segítségével utasítható a kiszolgáló, hogy hova küldje az adatcsomagokat, amelyek nem kézbesíthetők a helyi hálózaton lévő gépnek (a megadott forrás- és célgépcímnek, valamint az alhálózati maszknak megfelelően). A legtöbb esetben, különösen kisebb hálózatokban, ez az útválasztó ugyanaz, mint az internetátjáró.
Az option subnet-mask segítségével adja meg a klienshez rendelt hálózati maszkot.
A fájl utolsó részében a hálózatot lehet megadni, az alhálózati maszkot is beleértve. A befejezéshez adjon meg egy címtartományt, amelyből a DHCP-démon IP-címeket oszthat. A 24.1. példa - Az /etc/dhcpd.conf konfigurációs fájl példában a kliensek 192.168.2.10 és 192.168.2.20, valamint 192.168.2.100 és 192.168.2.200 közötti címet kaphatnak.
E pár sor módosítása után az rcdhcpd start paranccsal már aktiválható a DHCP-démon, amely azonnal használható. Az rcdhcpd check-syntax parancs segítségével hajtson végre egy rövid szintaxisellenőrzést. Ha váratlan problémákat észlel a konfigurációban (a kiszolgáló hibával leáll, vagy indításkor nem ad vissza done értéket), akkor a /var/log/messages fő rendszernaplóban vagy a 10-es konzolon (Ctrl+Alt+F10) látható információ segítségével meg kell tudnia találni a hiba okát.
Egy alapértelmezett openSUSE rendszeren a DHCP-démon biztonsági okokból chroot környezetben indul el. A konfigurációs fájlokat át kell másolni a chroot környezetbe, hogy a démon meg tudja találni őket. Általában emiatt nem kell aggódni, mivel az rcdhcpd start parancs automatikusan átmásolja a fájlokat.
Amint már említettük, a DHCP képes adott klienshez mindig ugyanazt az előre meghatározott, statikus címet rendelni. Az explicit módon kiosztott címeknek mindig prioritása van a tárolóból származó dinamikus címekkel szemben. Továbbá egy statikus cím nem jár le úgy, mint a dinamikus, vagyis ha például nem áll rendelkezésre elég cím, a kiszolgáló nem osztja ki másnak.
Egy statikus címmel rendelkező kliens azonosításához a dhcpd a hardvercímet használja amely hálózati eszközök azonosítására szolgáló globálisan egyedi, hat hexadecimális számpárból álló rögzített numerikus kód (például 00:30:6E:08:EC:80). Ha a megfelelő sorok (egy példa: 24.2. példa - A konfigurációs fájl kiegészítései, hozzáadásra kerülnek a korábbi példa 24.1. példa - Az /etc/dhcpd.conf konfigurációs fájl konfigurációs fájljaihoz, akkor a DHCP-démon minden helyzetben ugyanazt az adathalmazt rendeli hozzá a megfelelő klienshez.
24.2. példa - A konfigurációs fájl kiegészítései¶
host jupiter {
hardware ethernet 00:30:6E:08:EC:80;
fixed-address 192.168.2.100;
}
Az első sorban a megfelelő kliens (gép gépnév, itt jupiter) a másodikban pedig a MAC-cím van megadva. Linux-gépeken ez a cím az ip link show parancs segítségével határozható meg, amelyet a hálózati eszköz követ (például eth0). A kimenetnek az alábbihoz hasonlónak kell lennie:
link/ether 00:30:6E:08:EC:80
A fenti példában a 00:30:6E:08:EC:80 MAC-című hálózati kártyával rendelkező klienshez a 192.168.2.100 IP-cím és a jupiter gépnév kerül automatikusan hozzárendelésre. A megadandó hardver típusa a legtöbb esetben ethernet, de az IBM rendszereken gyakran található token-ring is támogatott.
A biztonság javítása érdekében az ISC DHCP-kiszolgálójának openSUSE verzióját az Ari Edelkind által alkalmazott non-root/chroot javítással szállítjuk. Ez lehetővé teszi, hogy a dhcpd nobody felhasználói azonosítóval és chroot környezetben fusson (/var/lib/dhcp). Ehhez a dhcpd.conf konfigurációs fájlnak a /var/lib/dhcp/etc könyvtárban kell lennie. Az init parancsfájl indításkor automatikusan átmásolja az összes fájlt ebbe a könyvtárba.
Az /etc/sysconfig/dhcpd fájlban lévő bejegyzések segítségével szabályozható a kiszolgáló viselkedése e funkciót illetően. A dhcpd chroot környezet nélküli futtatásához az DHCPD_RUN_CHROOTED fájlban lévő /etc/sysconfig/dhcpd változót állítsa „no” értékre.
Ahhoz, hogy a dhcpd chroot környezetben futva is feloldhassa a gépneveket, további konfigurációs fájlokat is át kell másolni:
/etc/localtime
/etc/host.conf
/etc/hosts
/etc/resolv.conf
Ezek a fájlok az init parancsfájl indításakor átmásolódnak a /var/lib/dhcp/etc/ könyvtárba. Ne feledkezzen meg ezen példányok megváltoztatásáról, ha szükség van rá, mert dinamikusan módosítják őket az /etc/ppp/ip-up-hoz hasonló parancsfájlok. Nem kell ugyanakkor aggódni emiatt, ha a konfigurációs fájl csak IP-címeket ad meg (gépnevek helyett).
Ha a konfiguráció további, a chroot környezetbe átmásolandó fájlokat tartalmaz, akkor ezeket az /etc/sysconfig/dhcpd fájl DHCPD_CONF_INCLUDE_FILES változóiban kell megadni. Annak biztosításához, hogy a DHCP naplózási funkciója a syslog démon újraindítása után is működjön, az /etc/sysconfig/syslog fájlban a SYSLOGD_ADDITIONAL_SOCKET_DHCP alatt található plusz egy bejegyzés.
A DHCP-vel kapcsolatos további információ az Internet Systems Consortium webhelyén érhető el (http://www.isc.org/products/DHCP/). A dhcpd, dhcpd.conf, dhcpd.leases és dhcp-options kézikönyvoldala is biztosít hasznos tudnivalókat.