[2] Konfiguracja serwera DHCP
29 stycznia 2023Należy upewnić się, że w sieci nie pracuje żaden inny serwer DHCP.
Jeśli tak – należy go wyłączyć!
Konfigurację rozpoczniemy od skopiowania przykładowego pliku konfiguracyjnego aby mieć możliwość powrotu do ustawień domyślnych:
root@vfbsd01:~ # cd /usr/local/etc/ root@vfbsd01:/usr/local/etc # cp dhcpd.conf dhcpd.conf.old root@vfbsd01:/usr/local/etc # mcedit dhcpd.conf # linia 7: zmień na Twoją domenę option domain-name "zicher.lab"; # linia 8: zmień na Twoje serwery DNS (wpisz adresy IP) option domain-name-servers 192.168.100.106, 1.1.1.1, 8.8.8.8; # linia 14: odkomentuj i zmień ddns-update-style none; # linia 18: odkomentuj authoritative; # skasuj wszystkie wiersze od linii 24 do końca # wpisz pierwszą deklarację definiującą podsieć # określa sieć oraz jej maskę subnet 192.168.100.0 netmask 255.255.255.0 { # określa początek i koniec przydzielanych adresow IP klientom range 192.168.100.160 192.168.100.166; # określa bramę domyślną option routers 192.168.100.254; }
Aby demon dhcpd startował wraz z systemem należy do pliku [/etc/rc.conf] dodać:
root@vfbsd01:/usr/local/etc # mcedit /etc/rc.conf # dodaj na końcu dhcpd_enable="YES"
Uruchomimy teraz serwer ISC DHCP:
root@vfbsd01:/usr/local/etc # /usr/local/etc/rc.d/isc-dhcpd start Starting dhcpd. Internet Systems Consortium DHCP Server 4.4.2-P1 Copyright 2004-2021 Internet Systems Consortium. All rights reserved. For info, please visit https://www.isc.org/software/dhcp/ Config file: /usr/local/etc/dhcpd.conf Database file: /var/db/dhcpd/dhcpd.leases PID file: /var/run/dhcpd/dhcpd.pid Wrote 0 leases to leases file. Listening on BPF/vmx0/00:0c:29:dc:eb:5e/192.168.100.0/24 Sending on BPF/vmx0/00:0c:29:dc:eb:5e/192.168.100.0/24 Sending on Socket/fallback/fallback-net
Jak widać serwer w czasie startu podał wiele informacji, oraz napisał, że pracuje.
Przypisywanie adresów statycznych
Możemy tak skonfigurować ISC DHCP Server, aby przypisywał te same adresy IP dla konkretnego/konkretnych komputerów. Mówimy wtedy o statycznym przydzielaniu adresów IP. Jest to wykorzystywane na przykład dla drukarek sieciowych. Jednym z wymagań aby ta opcja działała jest informacja o adresie sprzętowy [MAC] karty sieciowej urządzenia/komputera, dla którego chcemy przydzielić statyczny adres IP.
Adres IP w systemie Unix/Linux możemy poznać za pomocą polecenia [ifconfig] lub [ip a]:
[root@vlsr01 ~]# ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: ens192: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 00:0c:29:87:03:e5 brd ff:ff:ff:ff:ff:ff inet 192.168.100.100/24 brd 192.168.100.255 scope global noprefixroute ens192 valid_lft forever preferred_lft forever inet6 fe80::ef43:898a:fae3:f6e1/64 scope link noprefixroute valid_lft forever preferred_lft forever
Adres w tym wypadku jest wypisany po słowach [link/ether] dla karty sieciowej [ens192].
W systemie Windows używamy komendy [ipconfig /all]:
C:\Users\winuser>ipconfig /all Windows IP Configuration Host Name . . . . . . . . . . . . : vwswks01 Primary Dns Suffix . . . . . . . : Node Type . . . . . . . . . . . . : Hybrid IP Routing Enabled. . . . . . . . : No WINS Proxy Enabled. . . . . . . . : No Ethernet adapter LAN-zicher.lab: Connection-specific DNS Suffix . : Description . . . . . . . . . . . : Intel(R) Ethernet Connection (7) I219-V Physical Address. . . . . . . . . : 00-D8-61-A6-72-5E DHCP Enabled. . . . . . . . . . . : Yes Autoconfiguration Enabled . . . . : Yes Link-local IPv6 Address . . . . . : fe80::315c:337:f4b9:a9c1%15(Preferred) IPv4 Address. . . . . . . . . . . : 192.168.100.151(Preferred) Subnet Mask . . . . . . . . . . . : 255.255.255.0 Lease Obtained. . . . . . . . . . : niedziela, 23 października 2022 15:30:48 Lease Expires . . . . . . . . . . : poniedziałek, 24 października 2022 15:40:48 Default Gateway . . . . . . . . . : 192.168.100.254 DHCP Server . . . . . . . . . . . : 192.168.100.254 DHCPv6 IAID . . . . . . . . . . . : 100718689 DHCPv6 Client DUID. . . . . . . . : 00-01-00-01-2A-CB-80-2D-00-D8-61-A6-72-5E DNS Servers . . . . . . . . . . . : 192.168.100.100 1.1.1.1 NetBIOS over Tcpip. . . . . . . . : Enabled
Adres w tym wypadku jest wypisany po słowach [Physical Address] dla karty sieciowej [zicher.lab].
W przypadku urządzeń sieciowych, takich adresów MAC należy szukać na tabliczkach znamionowych, lub innych naklejkach na obudowie. Przeważnie są one w formacie:
XX-XX-XX-XX-XX-XX lub XX:XX:XX:XX:XX:XX
Edytujemy plik [/usr/local/etc/dhcpd.conf]:
root@vfbsd01:~ # mcedit /usr/local/etc/dhcpd.conf # dodaj na końcu host vkomp01.zicher.lab { # znaki XX:XX:XX:XX:XX:XX zastąp właściwym adresem MAC komputera hardware ethernet XX:XX:XX:XX:XX:XX; fixed-address 192.168.100.170; }
W polu [fixed-address] można podać pełną kwalifikowaną nazwę hosta (FQDN) jeśli odpowiedni wpis znajduje się w pliku stref serwera DNS.
Niedopuszczalne jest przypisywanie statycznych adresów z zakresu przydzielanego dynamicznie. Czyli nasz zakres wynosi 192.168.100.160 do 192.168.100.166, czyli adres 192.168.100.170 można przypisać, ale nie można przypisać adresu 192.168.100.161.
Restartujemy serwer DHCP:
root@vfbsd01:~ # /usr/local/etc/rc.d/isc-dhcpd restart
Dynamiczne aktualizacje DNS
W tym podrozdziale zostanie opisane jak skonfigurować automatyczne aktualizacje plików stref serwera ISC BIND z serwerem ISC DHCP. Wymagana jest wcześniejsza instalacja i konfiguracja serwera DNS zgodnie ze wskazówkami zawartymi w: Konfiguracja named.conf dla DHCP.
Najpierw trzeba skopiować zawartość pliku [rndc.key] do pliku konfiguracyjnego [dhcpd.conf]. Plik [rndc.key] znajduje się w [/usr/local/etc/namedb/].
root@vfbsd01:/usr/local/etc/namedb # cd /usr/local/etc root@vfbsd01:/usr/local/etc # cp dhcpd.conf dhcpd.conf.old root@vfbsd01:/usr/local/etc # cat /usr/local/etc/namedb/rndc.key >> dhcpd.conf
Następnie trzeba dodać na końcu pliku [dhcpd.conf] dwie deklaracje stref:
root@vfbsd01:~ # mcedit /usr/local/etc/dhcpd.conf # linia 14: zmień ddns-update-style interim; # dodaj na końcu zone zicher.lab. { # adres IP serwera DNS primary 192.168.100.106; key rndc-key; } zone 100.168.192.in-addr.arpa. { # adres IP serwera DNS primary 192.168.100.106; key rndc-key; }
Jeśli nie została utworzona strefa wyszukiwania odwrotnego, to nie dodawaj jej deklaracji do [dhcpd.conf].
Jeśli ustawiłeś przynajmniej jedno przypisywanie adresow statycznych, to trzeba o tym poinformować serwery DHCP i DNS dodając następujący wiersz do pliku [dhcpd.conf]:
root@vfbsd01:~ # mcedit /usr/local/etc/dhcpd.conf # dodaj na końcu update-static-leases on;
Restartujemy serwery DNS i DHCP:
root@vfbsd01:~ # /usr/local//etc/rc.d/named restart && /usr/local/etc/rc.d/isc-dhcp