sk1:dhcp
Table of Contents
DHCP
- Komunikaty: discover, offer, request, nack, ack, release
- Przepływ wiadomości dla przyznawania, odnawiania i zwalniania adresu - https://docs.oracle.com/cd/E23823_01/html/816-4554/dhcp-overview-3.html
- Zakres adresów, pula (address pool)
- Dzierżawa (lease)
- Stały adres IP a DHCP
Przykładowa wymiana pakietów między serwerem DHCP a klientem: dhcp.pcap
[ekstra] Serwer DHCP (na przykładzie ISC DHCP server)
- Przed konfiguracją serwera ustawi maskaradę adresów dla pakietów wychodzących prze br0 i pozwól na przekazywanie pakietów:
iptables -t nat -A POSTROUTING -o br0 -j MASQUERADE
sysctl net.ipv4.conf.all.forwarding=1 Stwórz plik dzierżaw (w domyślnej lokalizacji):
touch /var/lib/dhcp/db/dhcpd.leases- Na podstawie poniższego przykładu stwórz plik konfiguracyjny
dhcpd.conf:- dhcpd.conf
#ddns-update-style none; #default-lease-time 600; #max-lease-time 7200; #option domain-name "cs.put.poznan.pl"; option domain-name-servers 150.254.32.129, 150.254.30.30, 150.254.5.4; subnet 10.0.0.0 netmask 255.255.255.0 { range 10.0.0.2 10.0.0.12; option routers 10.0.0.1; } #host example { # hardware ethernet 02:00:00:00:00:00; # fixed-address 10.0.0.15; #}
- Skonfiguruj interfejs na którym będzie działać serwer DHCP, przykładowo dla
p4p2:
ip link set p4p2 up
ip addr add 10.0.0.1/24 dev p4p2 - Uruchom serwer DHCP w trybie diagnostycznym (
-d) z właściwym plikiem konfiguracyjnym (-cf):
dhcpd -d -cf dhcpd.conf p4p2
Innym często wykorzystywanym serwerem DHCP jest program łączący funkcje serwera DHCP i proxy DNS – dnsmasq https://pl.wikipedia.org/wiki/Dnsmasq
Klienty DHCP
Istnieje wiele implementacji klientów DHCP, przykładowe:
- dhclient – https://www.isc.org/downloads/dhcp/ – fragment ISC DHCP
- żądanie adresu IP:
dhclient [-d] [-v] eth0 - uwolnienie adresu IP:
dhclient -r eth0
- dhcpcd – https://roy.marples.name/projects/dhcpcd – popularny klient DHCP dla Linuksów
- żądanie adresu IP:
dhcpcd [-d] [-d] eth0 - uwolnienie adresu IP:
dhcpcd -k eth0
- udhcpc – https://en.wikipedia.org/wiki/Udhcpc – fragment busyboxa, popularny na urządzeniach wbudowanych
- żądanie adresu IP:
udhcpc -i eth0
Konfiguracja adresów IP bez DHCP
Zeroconf (http://en.wikipedia.org/wiki/Zero_configuration_networking), adres link-local (blok adresów 169.254.0.0/16), APIPA, Avahi, Bonjour
sk1/dhcp.txt · Last modified: by jkonczak