Když je dhclient, klient DHCP, spuštěn na klientském počítači, začne vysílat požadavky na konfigurační informace. Ve výchozím nastavení jsou tyto požadavky na portu UDP 68. Server odpoví na UDP 67 a poskytne klientovi IP adresu a další relevantní informace o síti, jako je maska sítě, směrovač a servery DNS. Všechny tyto informace přicházejí ve formě „pronájmu“ DHCP? a je platný pouze po určitou dobu (nastavenou správcem serveru DHCP). Tímto způsobem lze automaticky získat zpět zastaralé adresy IP klientů, kteří již nejsou připojeni k síti.
DHCP Server (nebo DHCPd) je server, který poskytuje klientovi DHCP informace, které potřebuje, a je to serverová část sady, která není poskytována jako součást FreeBSD, a proto je třeba jej nainstalovat ze serveru net/isc-dhcp3. port pro poskytování této služby.
FreeBSD přichází s ISC DHCP a je dodáváno s FreeBSD jako porty net/isc-dhcp3-server.
Chcete-li jej nainstalovat, přejděte do adresáře ports net/isc-dhcp3-server a proveďte následující příkaz:
# make install clean
DHCPd se konfiguruje pomocí konfiguračního souboru, obvykle dhcpd.conf umístěného v adresáři /usr/local/etc. Obvykle existuje příklad konfiguračního souboru, který je dhcpd.conf.example v adresáři. Zkopírujte dhcpd.conf.example na dhcpd.conf nebo vytvořte nový dhcpd.conf před provedením změn na serveru DHCP.
dhcpd.conf se skládá z deklarací týkajících se podsítí a hostitelů a lze jej snad nejsnáze vysvětlit na příkladu:
možnost název-domény „example.com“; (1)
volba servery doménových jmen 192.168.4.100; (2)
volba maska podsítě 255.255.255.0; (3)default-lease-time 3600; (4)
maximální doba pronájmu 86400; (5)
ddns-update-style žádný; (6)podsíť 192.168.4.0 maska sítě 255.255.255.0 {
rozsah 192.168.4.129 192.168.4.254; (7)
opční routery 192.168.4.1; (8)
}hostitel mailhost {
hardwarový ethernet 02:03:04:05:06:07; (9)
mailhost.example.com s pevnou adresou; (10)
}
(1) Tato možnost určuje doménu, která bude poskytována klientům jako výchozí vyhledávací doména.
(2) Tato možnost určuje čárkami oddělený seznam serverů DNS, které by měl klient používat.
(3) Síťová maska, která bude poskytnuta klientům.
(4) Klient může požádat o konkrétní dobu, po kterou bude nájemní smlouva platná. V opačném případě server přiřadí pronájem s touto hodnotou vypršení platnosti (v sekundách).
(5) Toto je maximální doba, po kterou si server zapůjčí. Pokud klient požádá o delší pronájem, bude mu vystavena nájemní smlouva, která však bude platná pouze po dobu max. doby pronájmu sekund.
(6) Tato možnost určuje, zda se má server DHCP pokusit aktualizovat DNS, když je přijat nebo uvolněn pronájem. V implementaci ISC je tato možnost vyžadována.
(7) Označuje, které adresy IP by se měly používat ve fondu vyhrazeném pro přidělování klientům. IP adresy mezi a včetně těch, které jsou uvedeny, jsou předány klientům.
(8) Deklaruje výchozí bránu, která bude poskytována klientům.
(9) Hardwarová MAC adresa hostitele (aby server DHCP mohl rozpoznat hostitele, když zadá požadavek).
(10) Určuje, že hostiteli by měla být vždy přidělena stejná adresa IP. Všimněte si, že použití názvu hostitele je zde správné, protože server DHCP sám přeloží název hostitele před vrácením informací o pronájmu.
Jakmile dokončíte psaní vašeho dhcpd.conf, můžete přistoupit ke spuštění serveru zadáním následujícího příkazu:
# /usr/local/etc/rc.d/isc-dhcpd.sh start
Pokud byste v budoucnu potřebovali provést změny v konfiguraci vašeho serveru, je důležité si uvědomit, že odeslání signálu SIGHUP do dhcpd nevede k opětovnému načtení konfigurace, jako je tomu u většiny démonů. Signál SIGTERM k zastavení procesu a poté jej restartujte pomocí výše uvedeného příkazu. Například:
# ps wax | grep dhcpd
pid of dhcpd se zobrazí s výše uvedeným příkazem, zablokujte jej zadáním následujícího příkazu.
# kill -15 (pid of dhcpd)