Linux services

Z HKfree wiki
Skočit na navigaci Skočit na vyhledávání

Tato stránka obsahuje popis a konfiguraci některých linuxových služeb.

DHCP server

Co je DHCP

DHCP (anglicky Dynamic Host Configuration Protocol) je aplikační protokol z rodiny TCP/IP. Používá se pro automatické přidělování IP adres jednotlivým osobním počítačům v počítačových sítích, čímž zjednodušuje jejich správu.

DHCP protokol umožňuje prostřednictvím jediného DHCP serveru nastavit všem stanicím sadu parametrů nutných pro komunikaci v sítích používajících rodinu protokolů TCP/IP včetně parametrů doplňujících a uživatelsky definovaných. Významným způsobem tak zjednodušuje a centralizuje správu počítačové sítě (například při přidávání nových stanic, hromadné změně parametrů nebo pro skrytí technických detailů před uživateli). DHCP servery mohou být sdruženy do skupin, aby bylo přidělování adres odolné vůči výpadkům. Pokud klient některým parametrům nerozumí, ignoruje je.

Rozbor samotného DHCP protokolu je popsán v tomto článku DHCPd.

Konfigurace DHCP serveru

Toto je příklad konfigurace DHCP serveru na Debianu "Lenny"

1. Nejdříve si stáhneme balíček s dhcp serverem, v debianu můžeme použít například balíček dhcp3-server.

debian2010:~# apt-get install dhcp3-server
Reading package lists... Done
Building dependency tree
Reading state information... Done
Suggested packages:
  dhcp3-server-ldap
The following NEW packages will be installed:
  dhcp3-server
0 upgraded, 1 newly installed, 0 to remove and 1 not upgraded.
Need to get 325kB of archives.
After this operation, 750kB of additional disk space will be used.
Get:1 http://debian.sh.cvut.cz lenny/main dhcp3-server 3.1.1-6+lenny4 [325kB]
Fetched 325kB in 0s (1786kB/s)
Preconfiguring packages ...
Selecting previously deselected package dhcp3-server.
(Reading database ... 54101 files and directories currently installed.)
Unpacking dhcp3-server (from .../dhcp3-server_3.1.1-6+lenny4_sparc.deb) ...
Processing triggers for man-db ...
Setting up dhcp3-server (3.1.1-6+lenny4) ...
Generating /etc/default/dhcp3-server...
Starting DHCP server: dhcpd3check syslog for diagnostics. failed!
  failed!
invoke-rc.d: initscript dhcp3-server, action "start" failed.
debian2010:~#

Jak vidíme, start se nepodařil, serveru je nejdříve nutno poeditovat konfigurační soubor.

2. Nejdůležitější položky konfiguračního souboru /etc/dhcp3/dhcpd.conf

debian2010:~# cat /etc/dhcp3/dhcpd.conf
option domain-name "debian2010.upceucebny.cz";
option domain-name-servers 10.0.3.34,10.0.3.70;
default-lease-time 600;
max-lease-time 7200;
subnet 172.16.0.0 netmask 255.248.0.0 {
       range 172.16.0.100 172.16.0.200;
       option routers 172.16.0.1;
}

3. Pokud chceme obhospodařovat více rozsahů, můžeme definovat kolik subnetů chceme, jednotlivé subnety se mohou lišit v dříve globálně definovaných položkách. Pokud chceme informace definovat přesněji můžeme přidat několik dalších položek, jako přidat broadcast adresu, přidat DNS apod.:

debian2010:~# cat /etc/dhcp3/dhcpd.conf
option domain-name "upceucebny.cz";
option domain-name-servers 10.0.3.34;
default-lease-time 600;
max-lease-time 7200;
subnet 172.16.0.0 netmask 255.248.0.0 {
       range 172.16.0.100 172.16.0.200;
       option domain-name-servers 10.0.3.34,10.0.3.70;
       option domain-name "debian2010.upceucebny.cz";
       option routers 172.16.0.1;
       option broadcast-address 172.23.255.255;
       default-lease-time 600;
       max-lease-time 36000;
}

4. Statické přidělení adresy. Pokud chceme jednomu počítači přidělovat stále jednu a tutéž adresu, např. pokud tato adresa je svázána s přístupem k určitým jinak omezeným službám můžeme využít přidělení adresy podle MAC adresy počítače. Do /etc/dhcp3/dhcpd.conf stačí přidat:

subnet 172.16.0.0 netmask 255.248.0.0 {

       option routers 172.16.0.1;
       option broadcast-address 172.23.255.255;
       group {
               host locutus {
                       hardware ethernet 00:26:2D:51:9C:F8;
                       fixed-address 172.16.1.100;
               }
       }

}