dhcpd
dhcpd jest serwerem DHCP Internet Systems Consortium. Jest to przydatne na przykład na komputerze działającym jako router w sieci LAN.
instalacja
zainstaluj pakiet dhcp.
użycie
dhcpd zawiera dwa pliki jednostek dhcpd4.service
i dhcpd6.service
, które mogą być użyte do sterowania demonem. Uruchamiają demona na wszystkich interfejsach sieciowych odpowiednio dla IPv4 i IPv6. Zobacz # Listening on only one interface for an alternative.
Konfiguracja
Przypisz statyczny adres IPv4 do interfejsu, którego chcesz użyć (w naszych przykładach użyjemy eth0
). Pierwsze 3 bajty tego adresu nie mogą być dokładnie takie same jak w przypadku innego interfejsu.
# ip link set up dev eth0# ip addr add 139.96.30.100/24 dev eth0 # arbitrary address
-
192.168/16
(podsieć192.168.0.0
, maska sieci255.255.0.0
) -
172.16/12
(podsieć172.16.0.0
, Maska sieciowa255.240.0.0
) -
10/8
(dla dużych sieci; podsieć10.0.0.0
, maska sieci255.0.0.0
)
Zobacz też: RFC 1918.
aby mieć przypisany statyczny adres ip podczas rozruchu, zobacz Konfiguracja sieci#Statyczny adres IP.
domyślna dhcpd.conf
zawiera wiele niezaangażowanych przykładów, więc przenieś ją:
# cp /etc/dhcpd.conf /etc/dhcpd.conf.example
minimalny plik konfiguracyjny może wyglądać następująco:
/etc/dhcpd.conf
option Domain-name-servers 8.8.8.8, 8.8.4.4;option subnet-mask 255.255.255.0;option routers 139.96.30.100;subnet 139.96.30.0 netmask 255.255.255.0 { range 139.96.30.150 139.96.30.250;}
jeśli chcesz podać stały adres IP dla jednego konkretnego urządzenia, możesz zdefiniować bloki hosta:
/etc/dhcpd.conf
option Domain-name-servers 8.8.8.8, 8.8.4.4;option subnet-mask 255.255.255.0;option routers 139.96.30.100;subnet 139.96.30.0 netmask 255.255.255.0 { range 139.96.30.150 139.96.30.250;}host MacBookPro{ sprzętowy Ethernet 70:56:81:22:33:44; stały adres 139.96.30.199;}
domain-name-servers
opcja zawiera adresy serwerów DNS, które są dostarczane klientom. W naszym przykładzie korzystamy z publicznych serwerów DNS Google. Jeśli znasz lokalny serwer DNS (na przykład dostarczony przez dostawcę usług internetowych), powinieneś rozważyć jego użycie. Jeśli skonfigurowałeś własny DNS na komputerze lokalnym, użyj jego adresu w podsieci (np. 139.96.30.100
w naszym przykładzie).
subnet-mask
i routers
definiuje maskę podsieci i listę dostępnych routerów w podsieci. W większości przypadków dla małych sieci można użyć 255.255.255.0
jako maski i określić adres IP komputera, na którym konfiguruje się serwer DHCP jako router.
subnet
bloki definiują opcje dla oddzielnych podsieci, które są mapowane do interfejsów sieciowych, na których działa dhcpd. W naszym przykładzie jest to jedna podsieć 139.96.30.0/24
dla pojedynczego interfejsu eth0
, dla której zdefiniowaliśmy zakres dostępnych adresów IP. Adresy z tego zakresu zostaną przypisane do łączących się klientów.
nasłuchiwanie tylko na jednym interfejsie
jeśli komputer jest już częścią jednej lub kilku sieci, może to być problem, jeśli komputer zacznie podawać adresy ip maszynom z innych sieci. Można to zrobić konfigurując dhcpd lub uruchamiając go jako demona z systemctl.
Konfigurowanie dhcpd
aby wykluczyć interfejs, należy utworzyć pustą deklarację dla podsieci, która będzie skonfigurowana w tym interfejsie.
odbywa się to poprzez edycję pliku konfiguracyjnego (na przykład):
/etc/dhcpd.conf
# brak usługi DHCP w sieci DMZ (192.168.2.0 / 24) podsieć 192.168.2.0 maska sieci 255.255.255.0 {}
plik Usługi
domyślnie nie ma plików Usług, aby używać dhcpd tylko na jednym interfejsie, więc musisz go utworzyć. Zacznij od skopiowania istniejącej usługi:
# cp /usr/lib/systemd/system/dhcpd4.service /etc/systemd/system/[email protected]
następnie Edytuj linię ExecStart, aby dołączyć interfejs:
/ etc / systemd/system / [email protected]
......ExecStart= / usr / bin / dhcpd -4-q-CF / etc / dhcpd.conf-PF / run / dhcpd4 / dhcpd.pid % I...
jest to jednostka szablonu, która wiąże ją z określonym interfejsem, na przykład [email protected]
gdzie eth0 jest interfejsem pokazanym z ip link
.
Użyj dla PXE
Konfiguracja PXE odbywa się za pomocą następujących dwóch opcji:
/etc/dhcpd.conf
next-server 192.168.0.2; nazwa pliku " / pxelinux.0";
Ta sekcja może być w całości subnet
lub po prostu w definicji host
. next-server
to adres IP serwera TFTP, a filename
to nazwa pliku obrazu do rozruchu. Więcej informacji można znaleźć w PXE.
Zobacz też
- dokumentacja ISC DHCP