Tag: DHCP

  • (K) Konfiguracja protokołu DHCP**

    (K) Konfiguracja protokołu DHCP**

    Konfiguracja protokołu DHCP

    Konfiguracja serwera DHCP

    (config)# service dhcp

    Aktywuje funkcję serwera DHCP na konfigurowanym urządzeniu.

    (config)# ip dhcp excluded-address adres-IP(Początkowy adres IP) adres-IP(końcowy adres IP)

    Wyłącza zdefiniowane w komendzie adresy IP, z puli przydzielanych przez serwer DHCP adresów.

    (dhcp-config)# ip dhcp pool nazwa-puli

    Tworzy nową pule protokołu DHCP.

    (dhcp-config)# network sieć maska

    Określa pulę adresów jakie będą dzierżawione przez serwer.

    (dhcp-config)# default-router adres-IP(Adres IP bramy domyślnej)

    Rozpoczyna propagację adres IP, bramy domyślnej.

    (dhcp-config)# dns-server adres-IP(Adres IP serwera DNS)

    Rozpoczyna propagację adresów IP, serwera/serwerów DNS.

    (dhcp-config)# domain-name nazwa-domeny(nazwa-domeny.domena)

    Określa nazwę domenową konfigurowanego serwera DHCP.

    (dhcp-config)# lease {0-365(Dni) 0-23(Godziny) 0-59(Minuty) / infinite}

    Określa okres dzierżawy adresów IP.

    (dhcp-config)# option numer

    Pozwala wybrać dodatkową opcje konfiguracyjną za pośrednictwem liczby.
    * TFTP Cisco IP phonesoption 66.
    * AP Lightweightoption 43.
    * Client-name option 12.
    * Default-routeroption 3.
    * Domain-name option 15.
    * Dns-serveroption 6.
    * Lease option 58.
    * Host option 1.
    * SMTP option 69
    * TFTP option 150.
    * POP3 option 70.

    Przykładowa konfiguracja opcji protokołu DHCP

    (config)# ip dhcp pool nazwa-puli

    Tworzy nową pule protokołu DHCP.

    (dhcp-config)# option 15 ascii nazwa-domeny.com

    Określa nazwę domenową serwera DHCP.

    (dhcp-config)# option 66 ip adresy-IP

    Rozpoczyna propagację adresów IP, serwera TFTP.

    (dhcp-config)# option 42 ip adresy-IP

    Rozpoczyna propagację adresów IP, serwera NTP.

    (dhcp-config)# bootfile nazwa

    Określa nazwę domyślnego obrazu bootowalnego, dla urządzenia końcowego.

    Ruter jako klient DHCP

    (config)# interface interfejs

    Przechodzi do poziomu konfiguracji określonego interfejsu sieciowego.

    (config-if)# ip address dhcp

    Włącza funkcję klienta DHCP na konfigurowanym interfejsie. (informacje o przyznanym adresie IP można uzyskać za pomocą następujących komend [show ip interface brief] oraz [show ip interface]).

    (config-if)# no ip dhcp client request {[router(Opcja 3) / domain-name(Opcja 15) / dns-server(Opcja 6) / static-route(Opcja 33) / classless-static-route(Opcja 121) / vendor-specific(Opcja 43)]}

    Blokuje proces uczenia się określonych w komendzie danych, za pomocą protokołu DHCP.
    * router – Blokuje proces uczenia się trasy domyślnej za pomocą protokołu DHCP.
    * domain-name – Blokuje proces uczenia się nazwy domeny za pomocą protokołu DHCP.
    * dns-server – Blokuje proces uczenia się adresu serwera DNS za pomocą protokołu DHCP.
    * static-route – Blokuje proces uczenia się tras statycznych za pomocą protokołu DHCP.
    * classless-static-route – Blokuje proces uczenia się bezklasowych tras statycznych za pomocą protokołu DHCP.

    Zaawansowana konfiguracja wiadomości protokołu DHCP

    Przed przydzieleniem nowego adresu IP do hosta, serwer DHCP sprawdza jego dostępność za pomocą protokołu ICMP (ping). Jeśli nie otrzyma odpowiedzi po wysłaniu dwóch wiadomości ICMP, uzna dany adres za wolny i przydzieli go hosta.

    (config)# ip dhcp ping packets 0-10(Ilość pakietów ICMP)

    Określa ilość wysłanych pakietów ICMP.

    (config)# ip dhcp ping timeout 100-10000(Milisekundy)

    Ustala czas oczekiwania na odpowiedź ping w milisekundach.

    Komendy Show, Clear i Debug

    Komendy Show

    Komendy SHOW dotyczące protokołu DHCP

    # show ip dhcp binding

    Wyświetla listę wydzierżawionych adresów IP, wraz z przypisanymi do nich adresami MAC jak iczasem dzierżawy.

    # show ip dhcp conflict

    Wyświetla listę adresów powodujących konflikty w adresacji sieci.

    # show ip dhcp database

    Wyświetla informacje o bazach danych protokołu DHCP, podłączonych do urządzenia lokalnego.

    # show ip dhcp import

    Wyświetla informacje protokołu DHCP, zaimportowane z innych urządzeń (Serwerów).

    # show ip dhcp pool

    Wyświetla informacje o ustawieniach wszystkich puli protokołu DHCP.

    # show ip dhcp pool nazwa-puli

    Wyświetla informacje o ustawieniach konkretnej puli protokołu DHCP.

    # show ip dhcp server statistics

    Wyświetla statystyki serwera na temat wysłanych jak i odebranych wiadomości protokołu DHCP.

    # show ip dhcp relay information trusted-sources

    Wyświetla informacje o zaufanych interfejsach agenta DHCP.

    # show host

    Wyświetla informacje pozyskane za pomocą serwera DHCP (Nazwę domeny czy adres IP serwera DNS).

    # show ip interface interfejs

    Wyświetla informację o danym interfejsie sieciowym, wraz z ustawieniami funkcji „IP helper-address”.

    Komendy SHOW dotyczące protokołu DHCP w systemie Windows

    C:\> arp -a

    Wyświetla zawartość tablicy odwzorowania adresów MAC na adresy IP.

    C:\> netstat -rn

    Wyświetla zawartość lokalnej tablicy routingu.

    C:\> ipconfig

    Wyświetla adresację IP konfigurowanego urządzenia.

    Komendy Clear

    # clear ip dhcp binding [adres-IP]

    Czyści dane o wydzierżawionych adresach / adresie IP.

    # clear ip dhcp conflict

    Czyści dane o występujących w sieci konfliktach, w adresacji IP.

    # clear ip dhcp pool nazwa-puli

    Czyści dane puli adresów IP.

    # clear ip dhcp server statistics

    Czyści dane statystyczne serwera DHCP.

    Komendy Debug

    # debug ip dhcp server events

    Włącza debugowanie zwykłych czynności serwera DHCP.

    # debug ip dhcp server packet

    Włącza debugowanie procesu przypisywania adresów IP do adresów MAC.

    Pozostałe tematy związane protokołem DHCP

    DHCPv6

  • (K) Konfiguracja zabezpieczeń protokołu DHCP**

    (K) Konfiguracja zabezpieczeń protokołu DHCP**

    Konfiguracja zabezpieczeń protokołu DHCP

    Określenie interfejsów zaufanych i nie zaufanych

    Aby ochronić przełącznik przed fałszywymi serwerami DHCP czy urządzeniami końcowymi wysyłającymi setki zapytać „Discover”. Należy określić porty zaufane na których znajdują się legalne serwery jak i ograniczyć ilość zapytań protokołu DHCP, jakie mogą być wysyłane z portów nie zaufanych.

    Konfiguracja funkcji DHCP snooping

    (config)# [no] ip dhcp snooping

    Wyłącza / Włącza globalną funkcjonalność DHCP Snooping na przełączniku.

    (config)# ip dhcp snooping vlan vlan-ID

    Włącza funkcjonalność DHCP Snooping dla konkretnej sieci VLAN (Funkcja domyślnie uznaje każdy interfejs przypisany do danej sieci VLAN, za niezaufany).

    (config)# [no] ip dhcp snooping information option allow-untrasted

    Wyłącza / Włącza funkcję dopisywania opcji DHCP-82 w każdym wysłanym przez urządzenia końcowe zapytaniu „DHCP Discovery”. Dodawanie opcji 82 ma miejsce jedynie na interfejsach niezaufanych, zawarte w niej są dodatkowe dane na temat urządzenia końcowego oraz adres MAC przełącznika.

    (config)# ip dhcp snooping database url

    Określa miejsce przetrzymywania bazy funkcji DHCP snooping.

    (config)# ip dhcp snooping verify mac-address

    Włącza opcjonalną weryfikację adresu MAC, sprawdzając czy źródłowy adres MAC urządzenia końcowego, odpowiada adresowi podanemu w otrzymanym zapytaniu DHCP.

    Określenie interfejsów zaufanych

    (config)# interface interfejs

    Przechodzi do poziomu konfiguracji określonego interfejsu sieciowego.

    (config-if)# ip dhcp snooping trust

    Informuje przełącznik, że na tym porcie może znajdować się serwer.

    Określenie interfejsów nie zaufanych

    (config-if)# interface interfejsy

    Wchodzi na interfejs, za którym nie powinien znajdować się serwer DHCP (Domyślnie są to wszystkie interfejsy pracujące w trybie „access”).

    (config-if)# ip dhcp snooping limit rate 1-2048

    Ogranicza ilość pakietów DHCP wysyłanych na sekundę. Po przekroczeniu tej liczby port jest blokowany (Przechodzi w stan „Error-Disable State”). W celu ponownego uruchomienia portu należy go wyłączyć a następnie ponownie włączyć komendami [shutdown] a następnie [no shutdown] lub z korzystać z opcji opisanej w rozdziale „Przywracanie portów do pełnej funkcjonalności po wykryciu próby ataku”.

    Tworzenie lokalnej bazy DHCP Binding

    Konfiguracja bazy DHCP Binding

    (config)# ip source binding adres-MAC vlan vlan-ID adres-IP interface interfejs

    Statycznie przypisuje adres MAC do adresu IP, a następnie kojarząc obydwa adresy z określonym interfejsem sieciowym.
    Dynamiczne przypisywanie adresów IP do adresów MAC jest możliwe jedynie za pomocą funkcji DHCP Snooping.

    Konfiguracja funkcji IP guard

    (config)# interface interfejs

    Przechodzi do poziomu konfiguracji określonego interfejsu sieciowego.

    (config-if)# ip verify source [port-security]

    Rozpoczyna weryfikację źródłowych adresów IP nadchodzących z danego interfejsu. Dodatkowa pod-komanda „port-security” rozszerza zakres weryfikacje o adresy MAC.

    Komendy SHOW

    # show ip dhcp snooping binding

    Wyświetla zaufane oraz niezaufane porty przełącznika.

    # show ip dhcp snooping track host

    Wyświetla listę urządzeń końcowych śledzonych przez funkcjonalności DHCP Snooping.

    Pozostałe tematy związane protokołem DHCP

    DHCPv6

  • (T) Teoria protokołu DHCP**

    (T) Teoria protokołu DHCP**

    Wiadomości DHCP

    Wiadomości DHCP

    • Discover (255.255.255.255 Broadcast source MAC address) – Wiadomość wysyłana przez klienta protokołu DHCP w celu zlokalizowania serwera DHCP.
    • Offer (255.255.255.255 Unicast MAC source address) – Wiadomość wysyłana przez serwer DHCP w odpowiedzi na zapytanie klienta (Discover). Zawiera propozycję adresu IP.
    • Request (Przy pierwszym pobraniu adresu IP, 255.255.255.255; w przypadku odnowy dzierżawy unicast) – Wiadomość wysyłana przez klienta protokołu DHCP w celu potwierdzenia przyjęcia propozycji adresaci (Offer).
    • Acknowledgment (Przeważnie 255.255.255.255) – Wiadomość wysyłana przez serwer DHCP, w celu potwierdzenia rejestracji adresu. Ponadto zawiera dodatkowe informacje takie jak n. adres IP serwera DNS czy nazwę domenową.

    Wiadomości DHCP – Adresacja IP

    • Adres 0.0.0.0 Jest wykorzystywany przez klienta protokołu DHCP w wiadomości „Discover”, ponieważ nie posiada on innego adresu IPv4. Adres źródłowy MAC jest adresem klienta, natomiast docelowy stanowi adres rozgłoszeni-wy.
    • Adres 255.255.255.255 (Unicast MAC address) jest wykorzystywany zarówno przez hosta (ponieważ nie zna on adresu IP serwera), jak i sam serwer dzięki czemu odpowiedź protokołu DHCP jest w stanie dotrzeć z powrotem do klienta, który nie posiada jeszcze swojego własnego adresu IP. Ponadto wiadomość „Request” jest rozgłaszana poprzez adres rozgłoszeniowy, aby inne urządzenia sieciowe, mogły uniknąć zdublowanej adresacji IP.
    Wymiana wiadomości protokołu DHCP pomiędzy klientem a serwerem DHCP

    Zagadnienia związane z protokołem DHCP

    • Metoda Dynamic Allocation – Tymczasowo przypisuje adres IP do urządzenia końcowego, wraz z ustalonym okresem dzierżawy.
    • Metoda Automatic Allocation – Przypisuje adres IP do urządzenia końcowego na nieskończony okres czasu „Infinity”.
    • Metoda Static Allocation – Przypisuje adres IP do urządzenia końcowego względem jego adresu MAC, dzięki czemu wskazane przez administratora urządzenie zawsze będzie dostawało ten sam adres IP od serwera DHCP.

    DHCP Spoofing and Starvation

    Mechanizm działania i obrony przed atakiem „DHCP Spoofing”

    • Atak DHCP Spoofing polega na podszywaniu się przez osobę atakującą, pod serwer DHCP. Dzięki czemu jest ona w stanie propagować własną adresację IP. Atak ten może stanowić część bardziej złożonego ataku „Man-in-the-middle”, w którym atakujący host rozgłasza za pomocą fałszywego serwera DHCP, swój adres IP jako adres bramy domyślnej. Tym samym komunikacja ofiary w drodze poza sieć lokalną, zaczyna przechodzić przez podstawionego hosta.
    • Aby zabezpieczyć przełącznik przed podłączeniem do niego niechcianego serwera DHCP, należy pogrupować interfejsy przełącznika na zaufane oraz nie zaufane. Wszystkie interfejsy podłączone do użytkowników końcowych powinny znajdować się w stanie nie zaufanym natomiast te znajdujące się pod kontrolą administratora sieci, takie jak połączenia trunkowe czy interfejsy do który podłączone są znane urządzenia, powinny być zaufane.
    • Interfejsy zaufane nie blokują żadnych pakietów protokołu DHCP, natomiast nie zaufane blokują pakiety domyślnie wysyłane przez serwer DHCP w komunikacji DORA, a są to zapytania  „Offer” oraz „Acknowledgment”.
    • Dodatkową metodę ochrony przed atakami DHCP Spoofing, stanowi tablica DHCP binding. Zbudowana na podstawie przechwyconych przez przełącznik wiadomości protokołu DHCP, nadchodzących z zaufanych interfejsów urządzenia. Na ich podstawie następuje przypisanie adresu IP do interfejsu jak i opcjonalne adresu MAC. Dzięki czemu wszelkie pakiety wysłane z adresem IP innym niż pozyskanym za pomocą protokołu DHCP, zostaną zablokowane.

    Mechanizm działania i obrony przed atakiem „DHCP Starvation”

    • Serwer DHCP odpowiada na każde, wysłane
      przez użytkownika zapytanie „Discover”,
      w odpowiedzi oferując adres IP przy pomocy wiadomości „Offer”. Taka zależność niesie ze sobą zagrożenie, w którym
      atakujący sieć host będzie wysyłał wiele zapytań DHCP pod różnymi adresami MAC,
      a tym samym sztucznie zapełniał dostępną pulę adresów IP.
    • Aby zapobiec takiemu scenariuszowi
      administrator może zastosować prostą metodę ograniczającą ilość wysyłanych
      przez urządzenie końcowe, zapytań DHCP „Discover”,
      w ciągu jednej sekundy.

    Pozostałe tematy związane protokołem DHCP

    DHCPv6

  • (Ts) Troubleshooting protokołu DHCP**

    (Ts) Troubleshooting protokołu DHCP**

    T-Shoot protokołu DHCP

    Błędny popełniane przy konfiguracji komendy [network]

    Jeżeli w danej implementacji protokołu DHCP jest wykorzystywana funkcja agenta relay, adres bramy domyślnej musi znajdować się w puli serwera DHCP.
    1. Pakiety rozgłoszeni-owe protokołu DHCP, po dotarciu do agenta relay, są przetwarzane na wiadomości unicast z docelowym adresem serwera DHCP oraz źródłowym adresem bramy domyślnej, z której nadeszło rozpatrywane zapytanie DHCP.
    2. Po otrzymaniu wiadomości od agenta relay, serwer DHCP porównuje adres źródłowy zapytania z posiadanymi pulami adresów DHCP. Jeżeli nie znajdzie odpowiedniego wpisu bądź właściwa pula nie będzie zawierała adresu IP bramy domyślnej zapytanie zostanie porzucone.

    Wykrywanie konfliktów w adresacji IP

    • Protokół DHCP może wykrywać konflikty (Duplikację) adresów IP za pomocą wiadomości ICMP bądź ARP.

    Brak dostępu do serwera DHCP

    • W przypadku, w którym serwer DHCP znajduje się w sieci innej niż urządzenia końcowe, wymagana jest konfiguracja funkcji DHCP relay agent na ruterze. Błędna konfiguracja tej funkcji może zablokować nadawane przez urządzenie końcowe, zapytania DHCPDISCOVER.
    • Domyślnie w ruterach Cisco serwer DHCP jest domyślnie aktywny, co za tym idzie konfiguracja funkcji DHCP relay (Helper-address) nie wymaga aktywacji serwera DHCP. Może jednak zaistnieć sytuacja, w której serwer został zablokowany, aby go aktywować należy wykorzystać komendę [service dhcp] w trybie konfiguracji globalnej.
    • Domyślnie funkcja DHCP relay agent (Helper-address), zmienia rozgłoszeni-owe wiadomości protokołu DHCP, w wiadomości unicast-owe kierowane pod wskazany w komendzie [ip helper-address] adres IP, bądź wiele adresów IP jednocześnie. Ponadto funkcja ta działa na inne protokoły, takie jak: TFTP, DNS, NetBIOS, Boot, TACACS.
    • Jeżeli urządzenie końcowe nie otrzyma odpowiedzi od serwera DHCP w określonym przedziale czasu, samo przydzieli sobie adres IP zwany APIPA (Automatic Private IP Addressing).

    Przykładowe problemy związane z protokołem DHCP

    • Ruter blokuje ruch rozgłoszeniowy (Brak skonfigurowanej funkcji DHCP relay (Helper-address)).
    • Brak wolnych adresów IP w puli serwera DHCP.
    • Błędna konfiguracja serwera DHCP.
    • Duplikacja adresów IPv4 w sieci lokalnej (Statyczna konfiguracja adresu IPv4).
    • Brak komunikacji pomiędzy zapasowymi serwerami DHCP.
    • Błędna adresacja bramy domyślnej.

    Pozostałe tematy związane protokołem DHCP

    DHCPv6

  • (KP) Rezerwacja adresów IP**

    (KP) Rezerwacja adresów IP**

    Rezerwacja adresów IP (MAC to IP)

    Konfiguracja puli nadrzędnej

    (config)# ip dhcp pool nazwa-puli

    (dhcp-config)# network sieć maska

    (dhcp-config)# default-router adres-IP

    (dhcp-config)# dns-server adresy-IP

    (dhcp-config)# domain-name nazwa-domeny.com

    Konfiguracja puli z adresem przypisanym do hosta

    (config)# ip dhcp pool nazwa-puli

    Tworzy nową podrzędną pule DHCP przydzielającą adres statyczny dla danego hosta.

    (dhcp-config)# host adres-IP-hosta maska

    Określa adres IP przydzielany hostowi wraz z maską sieci w której będzie pracował, adres ten należy do sieci puli nadrzędnej.

    (dhcp-config)# client-identifier 01adres-MAC

    Dodaje identyfikator hosta w postaci adresu MAC poprzedzonego liczbami 01, przypisując go tym samym do wskazanego powyżej adresu IP.

    (dhcp-config)# client-name nazwa-hosta

    Przypisuje nazwę dla hosta.

    (dhcp-config)# default-router adres-IP

    (dhcp-config)# dns-server adresy-IP

    (dhcp-config)# domain-name nazwa-domeny.com

    Pozostałe tematy związane protokołem DHCP

    DHCPv6

  • Konfiguracja serwera DHCP

    Konfiguracja serwera DHCP

    Konfiguracja serwera DHCP (Ubuntu)

    Instalacja serwera DHCP

    Server:~# sudo apt-get update
    Server:~# sudo apt-get install isc-dhcp-server

    Aktualizuje system Linux / Instaluje serwer DHCP.

    Konfiguracja ustawień globalnych

    Server:~# nano /etc/dhcp/dhcpd.conf

    Przechodzi do pliku konfiguracyjnego, serwera DHCP.

    option domain-name “nazwa-serwera-DHCP”;
    option domain-name-servers adres1, adres2;
    default-lease-time czas;
    max-lease-time czas;

    Server:~# /etc/default/isc-dhcp-server*

    Przechodzi do kolejnego pliku konfiguracyjnego, serwera DHCP.

    INTERFACES=”Interfejs1 interfejs2

    Określa na jakich interfejsach sieciowych będzie działać serwer DHCP. Domyślnie serwer DHCP będzie działał na wszystkich interfejsach sieciowych.

    Konfiguracja nowej puli DHCP

    Server:~# nano /etc/dhcp/dhcpd.conf

    Przechodzi do pliku konfiguracyjnego, serwera DHCP.

    subnet sieć netmask maska {
     range adres-początkowy adres-końcowy;
     option routers adres-bramy-domyślnej;
     option broadcast-address adres-rozgłoszeniowy;
     option domain-name-servers adres1, adres2;}

    Server:~# service isc-dhcp-server restart

    Resetuje serwer DHCP. Czynność ta jest wymagana po skonfigurowaniu nowej puli.

    Server:~# netstat -pl | grep dhcpd

    Wyświetla

    Konfiguracja interfejsu sieciowego

    Server:~# ifconfig ethID adres-IP netmask maska-sieci

    Określa adres IP oraz maskę, wskazanego interfejsu sieciowego.

    Server:~# ifconfig ethID broadcast adres-rozgłoszeniowy

    Określa adres rozgłoszeniowy, wskazanego interfejsu sieciowego.

    Server:~# ip route add default via adres-IP-bramy-domyślnej

    Określa adres bramy domyślnej.