💾

Laboratorijska vežba – Modul 13 – DHCP, DHCP Relay, DNS i NAT (static + PAT)

Cilj vežbe

Konfigurisati centralni ruter kao DHCP server za sopstvenu i za udaljenu mrežu (preko DHCP relay-a), postaviti interni DNS server sa A zapisom, konfigurisati static NAT za taj server i PAT (NAT Overload) za sav ostali interni saobraćaj ka simuliranom internetu, i proveriti sve funkcionalnosti end-to-end.

Potrebno predznanje

  • Kompletna teorija ovog modula (Teme 1–16).
  • Statičko rutiranje (Modul 11), IPv4 adresiranje (Modul 4), CLI osnove (Modul 7).

Potrebni programi

  • Cisco Packet Tracer.

Potrebni uređaji (u simulaciji)

UređajTačan model u Packet TraceruUloga
R1Cisco 4321 (ili 1941)Centralni/granični ruter — DHCP server, DNS klijent, NAT gateway
R2Cisco 4321 (ili 1941)Ruter poslovnice — DHCP relay
R-ISPCisco 4321 (ili 1941)Simulira internet, sa „javnim" test serverom
SW1Cisco Catalyst 2960Svič u LAN1 (centrala)
SW2Cisco Catalyst 2960Svič u LAN2 (poslovnica)
Server1Server-PTDNS server + cilj static NAT-a, u LAN1
PC1Generic PC-PTDHCP klijent u LAN1
PC2Generic PC-PTDHCP klijent u LAN2 (preko relay-a)

Topologija

graph LR
    PC1["PC1 (DHCP)"] --- SW1[SW1]
    Server1["Server1<br/>192.168.10.5/24<br/>DNS: www.firma.local"] --- SW1
    SW1 --- R1["R1<br/>Gi0/0: 192.168.10.1 (inside)<br/>Gi0/1: 10.0.0.1/30<br/>Gi0/2: 203.0.113.2/30 (outside)"]
    R1 ---|"10.0.0.0/30"| R2["R2<br/>Gi0/0: 10.0.0.2/30<br/>Gi0/1: 192.168.20.1/24<br/>ip helper-address 10.0.0.1"]
    R2 --- SW2[SW2] --- PC2["PC2 (DHCP preko relay-a)"]
    R1 ---|"203.0.113.0/30 (outside)"| RISP["R-ISP<br/>Gi0/0: 203.0.113.1/30<br/>Lo0: 8.8.8.8/32"]

Napomena o topologiji: R-ISP simulira internet — njegov Loopback0 (8.8.8.8/32) predstavlja javni test server koji PC-jevi „na internetu" pokušavaju da dosegnu, omogućavajući da se PAT prevod stvarno testira kroz transit saobraćaj (ne saobraćaj upućen samom ruteru R1). R2 nema sopstveni DHCP server — oslanja se na relay ka R1.

Plan adresiranja

UređajInterfejsIP adresaMaskaNapomena
Server1NIC192.168.10.5255.255.255.0Statička, gateway 192.168.10.1, isključena iz DHCP pool-a
PC1NICDHCP—Dobija adresu iz LAN1 pool-a
PC2NICDHCP—Dobija adresu iz LAN2 pool-a preko relay-a
R1GigabitEthernet0/0192.168.10.1255.255.255.0ip nat inside
R1GigabitEthernet0/110.0.0.1255.255.255.252ip nat inside
R1GigabitEthernet0/2203.0.113.2255.255.255.252ip nat outside
R2GigabitEthernet0/010.0.0.2255.255.255.252—
R2GigabitEthernet0/1192.168.20.1255.255.255.0ip helper-address 10.0.0.1
R-ISPGigabitEthernet0/0203.0.113.1255.255.255.252—
R-ISPLoopback08.8.8.8255.255.255.255Simulirani javni test server

Tabela portova

UređajPortPovezan sa
Server1NICSW1
PC1NICSW1
SW1uplinkR1 Gi0/0
R1Gi0/1R2 Gi0/0
R1Gi0/2R-ISP Gi0/0
R2Gi0/1SW2
SW2uplinkPC2

Koraci vežbe

Korak 1 – Postavljanje topologije

Postavite tri rutera, dva sviča, jedan server i dva računara. Povežite ih tačno prema tabeli portova, koristeći odgovarajuće kablove (copper straight-through za PC/svič/server-ruter uplink veze, copper cross-over ili automatski Ethernet kabl između rutera).

Korak 2 – Osnovna konfiguracija hostname-a i interfejsa

Router>enable
Router#configure terminal
Router(config)#hostname R1
R1(config)#interface gigabitEthernet 0/0
R1(config-if)#ip address 192.168.10.1 255.255.255.0
R1(config-if)#no shutdown
R1(config-if)#exit
R1(config)#interface gigabitEthernet 0/1
R1(config-if)#ip address 10.0.0.1 255.255.255.252
R1(config-if)#no shutdown
R1(config-if)#exit
R1(config)#interface gigabitEthernet 0/2
R1(config-if)#ip address 203.0.113.2 255.255.255.252
R1(config-if)#no shutdown
R1(config-if)#exit

Ponovite analogno za R2 (Gi0/0 = 10.0.0.2/30, Gi0/1 = 192.168.20.1/24) i R-ISP (Gi0/0 = 203.0.113.1/30, i interface loopback 0 sa adresom 8.8.8.8/32).

Korak 3 – Statičko rutiranje

R1(config)#ip route 192.168.20.0 255.255.255.0 10.0.0.2
R1(config)#ip route 0.0.0.0 0.0.0.0 203.0.113.1
R2(config)#ip route 0.0.0.0 0.0.0.0 10.0.0.1

Objašnjenje: R1 ima specifičnu rutu ka mreži poslovnice (192.168.20.0/24) i default rutu ka R-ISP-u za sav ostali (internet) saobraćaj. R2, kao stub ruter, koristi samo default rutu ka R1 — pokriva i saobraćaj ka LAN1 i ka internetu (princip iz Modula 11, Tema 6/14). R-ISP ne treba nikakvu dodatnu rutu ka privatnim mrežama — to je upravo poenta NAT-a (Tema 9): R-ISP nikada ne vidi privatne adrese, samo prevedenu javnu adresu R1.

Korak 4 – Konfiguracija Server1 (statička adresa + DNS servis)

Na Server1, u Desktop → IP Configuration, unesite: IP 192.168.10.5, maska 255.255.255.0, gateway 192.168.10.1. Zatim u Services → DNS, uključite DNS servis i dodajte zapis:

Tip: A Record
Ime: www.firma.local
Adresa: 192.168.10.5

Korak 5 – Konfiguracija DHCP-a na R1 za obe mreže

R1(config)#ip dhcp excluded-address 192.168.10.1 192.168.10.9
R1(config)#ip dhcp pool LAN1
R1(dhcp-config)#network 192.168.10.0 255.255.255.0
R1(dhcp-config)#default-router 192.168.10.1
R1(dhcp-config)#dns-server 192.168.10.5
R1(dhcp-config)#exit
R1(config)#ip dhcp excluded-address 192.168.20.1 192.168.20.9
R1(config)#ip dhcp pool LAN2-POSLOVNICA
R1(dhcp-config)#network 192.168.20.0 255.255.255.0
R1(dhcp-config)#default-router 192.168.20.1
R1(dhcp-config)#dns-server 192.168.10.5
R1(dhcp-config)#exit

Objašnjenje: Iako R1 fizički nije povezan na mrežu 192.168.20.0/24, i dalje mora imati poseban ip dhcp pool za nju — DHCP relay (Korak 6) samo prosleđuje zahtev, ne zamenjuje potrebu za definisanim pool-om na serveru (Tema 4).

Korak 6 – Konfiguracija DHCP Relay-a na R2

R2(config)#interface gigabitEthernet 0/1
R2(config-if)#ip helper-address 10.0.0.1

Korak 7 – Konfiguracija IP adresa na PC1 i PC2

Na oba računara, u Desktop → IP Configuration, izaberite „DHCP".

Korak 8 – Provera DHCP dodele

R1#show ip dhcp binding

Potvrdite da su PC1 (iz opsega 192.168.10.10+) i PC2 (iz opsega 192.168.20.10+) oba dobila adrese, sa ispravnim gateway-om i DNS serverom (192.168.10.5) prikazanim u njihovoj IP Configuration.

Korak 9 – Klijentska DNS konfiguracija i test rezolucije

R1(config)#ip domain-name firma.local
R1(config)#ip name-server 192.168.10.5

Sa PC1, otvorite Command Prompt i pokušajte:

PC1> ping www.firma.local
Pinging 192.168.10.5 with 32 bytes of data:

Objašnjenje: PC1 je od DHCP-a (Korak 5) dobio DNS server 192.168.10.5 (Server1), pa uspešno razrešava „www.firma.local" u 192.168.10.5 pre slanja ICMP paketa.

Korak 10 – Konfiguracija NAT granice

R1(config)#interface gigabitEthernet 0/0
R1(config-if)#ip nat inside
R1(config-if)#exit
R1(config)#interface gigabitEthernet 0/1
R1(config-if)#ip nat inside
R1(config-if)#exit
R1(config)#interface gigabitEthernet 0/2
R1(config-if)#ip nat outside
R1(config-if)#exit

Objašnjenje: I Gi0/0 (LAN1) i Gi0/1 (ka R2/LAN2) su „inside" jer su obe mreže deo interne organizacije; jedino Gi0/2 (ka R-ISP-u) je „outside" — granica NAT-a je tačno između interne organizacije i simuliranog interneta (Tema 9).

Korak 11 – Static NAT za Server1

R1(config)#ip nat inside source static 192.168.10.5 203.0.113.100

Korak 12 – PAT (NAT Overload) za sav ostali interni saobraćaj

R1(config)#access-list 1 permit 192.168.10.0 0.0.0.255
R1(config)#access-list 1 permit 192.168.20.0 0.0.0.255
R1(config)#ip nat inside source list 1 interface GigabitEthernet0/2 overload

Korak 13 – Provera static NAT-a

R1#show ip nat translations
Pro Inside global      Inside local        Outside local   Outside global
--- 203.0.113.100      192.168.10.5        ---             ---

Potvrdite da je static prevod prisutan odmah, bez ijednog paketa saobraćaja (Tema 10).

Korak 14 – Test PAT-a kroz stvarni transit saobraćaj

Sa PC1 i PC2, pingujte simulirani javni test server:

PC1> ping 8.8.8.8
PC2> ping 8.8.8.8

Zatim na R1:

R1#show ip nat translations

Potvrdite da se pojavljuju dva odvojena dinamička prevoda (jedan za PC1, jedan za PC2), oba sa istom inside global adresom (203.0.113.2 — adresa Gi0/2), ali različitim brojevima portova (Tema 12).

Korak 15 – Provera statistike NAT-a

R1#show ip nat statistics

Zabeležite broj aktivnih prevoda i koje interfejse ruter prepoznaje kao inside/outside.

Korak 16 – Dijagnostička vežba: DHCP relay bez odgovarajućeg pool-a

  1. Namerno uklonite pool za udaljenu mrežu: R1(config)#no ip dhcp pool LAN2-POSLOVNICA.
  2. Na PC2, ponovo zatražite DHCP adresu (release/renew, ili Fast Forward vreme u Packet Traceru) — PC2 ne dobija adresu.
  3. Objasnite svojim rečima, na osnovu Teme 4, zašto samo ip helper-address na R2 nije dovoljno bez odgovarajućeg ip dhcp pool na R1.
  4. Vratite pool na R1 da biste nastavili vežbu.

Korak 17 – Čuvanje konfiguracije

Na sva tri rutera:

R1#copy running-config startup-config

Komande za proveru

show ip dhcp binding
show ip dhcp pool
show ip nat translations
show ip nat statistics
show ip route
ping <adresa>

Najčešće greške

GreškaUzrokRešenje
PC1/PC2 ne dobijaju IP adresuNedostaje no shutdown na LAN interfejsu, ili je excluded-address opseg pogrešno postavljenProveriti Korak 2 i Korak 5
PC2 ne dobija adresu iz LAN2 opsega, već ostaje bez adreseNedostaje ip helper-address na R2, ili nedostaje odgovarajući ip dhcp pool na R1Proveriti Korak 5 i Korak 6
ping www.firma.local ne uspeva, iako ping 192.168.10.5 uspevaDNS servis nije uključen na Server1, ili DHCP nije prosledio ispravan dns-serverProveriti Korak 4 i Korak 5
show ip nat translations ne prikazuje nijedan dinamički prevodNedostaje overload, pogrešan ACL, ili interfejsi nisu označeni ip nat inside/outsideProveriti Korake 10 i 12
Static NAT ne radiAdresa servera u ip nat inside source static ne odgovara stvarnoj adresi Server1Proveriti Korak 11 naspram Koraka 4

Postupak rešavanja problema (troubleshooting)

  1. show ip interface brief — proveriti da su svi interfejsi up/up.
  2. show ip route — proveriti da postoje rute ka svim potrebnim mrežama (Korak 3).
  3. show ip dhcp binding — proveriti da su adrese zaista dodeljene.
  4. show ip nat translations i show ip nat statistics — proveriti da NAT prevodi postoje i da su interfejsi ispravno označeni.
  5. ping sa krajnjih uređaja radi potvrde end-to-end funkcionalnosti svakog servisa pojedinačno.

Završna provera

Vežba je uspešno završena kada:

  1. PC1 i PC2 oba automatski dobijaju ispravnu IP konfiguraciju putem DHCP-a (direktno i preko relay-a).
  2. ping www.firma.local sa PC1 uspešno razrešava ime u 192.168.10.5.
  3. show ip nat translations prikazuje static prevod za Server1 i dinamičke PAT prevode za PC1/PC2 nakon ping-a ka 8.8.8.8.
  4. Objašnjeno je (Korak 16) zašto DHCP relay bez odgovarajućeg pool-a na serveru ne funkcioniše.

Dodatni izazov

Dodajte ntp server 203.0.113.1 na R1 (predstavite R-ISP kao pojednostavljeni izvor vremena) i logging <adresa> koji upućuje na Server1 (dodajte Syslog servis na Server1 u Packet Traceru ako je dostupan). Generišite događaj (shutdown/no shutdown na interfejsu R1 ka R2) i proverite da li se Syslog poruka pojavljuje na serveru sa ispravnim timestamp-om. Dodatno, zamenite ip dhcp excluded-address opsege realističnijim vrednostima koje ostavljaju prostora za buduće statičke uređaje, i obrazložite svoj izbor veličine opsega.

Rešenje

Kompletno rešenje ove vežbe nalazi se u /resenja/modul-13/04-laboratorijska-vezba-resenje.md.

📖 Prikaži rešenje

Rešenje laboratorijske vežbe – Modul 13

Kompletna konfiguracija – R1

Router>enable
Router#configure terminal
Router(config)#hostname R1
R1(config)#interface gigabitEthernet 0/0
R1(config-if)#ip address 192.168.10.1 255.255.255.0
R1(config-if)#ip nat inside
R1(config-if)#no shutdown
R1(config-if)#exit
R1(config)#interface gigabitEthernet 0/1
R1(config-if)#ip address 10.0.0.1 255.255.255.252
R1(config-if)#ip nat inside
R1(config-if)#no shutdown
R1(config-if)#exit
R1(config)#interface gigabitEthernet 0/2
R1(config-if)#ip address 203.0.113.2 255.255.255.252
R1(config-if)#ip nat outside
R1(config-if)#no shutdown
R1(config-if)#exit
R1(config)#ip route 192.168.20.0 255.255.255.0 10.0.0.2
R1(config)#ip route 0.0.0.0 0.0.0.0 203.0.113.1
R1(config)#ip dhcp excluded-address 192.168.10.1 192.168.10.9
R1(config)#ip dhcp pool LAN1
R1(dhcp-config)#network 192.168.10.0 255.255.255.0
R1(dhcp-config)#default-router 192.168.10.1
R1(dhcp-config)#dns-server 192.168.10.5
R1(dhcp-config)#exit
R1(config)#ip dhcp excluded-address 192.168.20.1 192.168.20.9
R1(config)#ip dhcp pool LAN2-POSLOVNICA
R1(dhcp-config)#network 192.168.20.0 255.255.255.0
R1(dhcp-config)#default-router 192.168.20.1
R1(dhcp-config)#dns-server 192.168.10.5
R1(dhcp-config)#exit
R1(config)#ip domain-name firma.local
R1(config)#ip name-server 192.168.10.5
R1(config)#ip nat inside source static 192.168.10.5 203.0.113.100
R1(config)#access-list 1 permit 192.168.10.0 0.0.0.255
R1(config)#access-list 1 permit 192.168.20.0 0.0.0.255
R1(config)#ip nat inside source list 1 interface GigabitEthernet0/2 overload
R1(config)#end
R1#copy running-config startup-config

Kompletna konfiguracija – R2

Router>enable
Router#configure terminal
Router(config)#hostname R2
R2(config)#interface gigabitEthernet 0/0
R2(config-if)#ip address 10.0.0.2 255.255.255.252
R2(config-if)#no shutdown
R2(config-if)#exit
R2(config)#interface gigabitEthernet 0/1
R2(config-if)#ip address 192.168.20.1 255.255.255.0
R2(config-if)#ip helper-address 10.0.0.1
R2(config-if)#no shutdown
R2(config-if)#exit
R2(config)#ip route 0.0.0.0 0.0.0.0 10.0.0.1
R2(config)#end
R2#copy running-config startup-config

Kompletna konfiguracija – R-ISP

Router>enable
Router#configure terminal
Router(config)#hostname R-ISP
R-ISP(config)#interface gigabitEthernet 0/0
R-ISP(config-if)#ip address 203.0.113.1 255.255.255.252
R-ISP(config-if)#no shutdown
R-ISP(config-if)#exit
R-ISP(config)#interface loopback 0
R-ISP(config-if)#ip address 8.8.8.8 255.255.255.255
R-ISP(config-if)#exit
R-ISP(config)#end
R-ISP#copy running-config startup-config

(Napomena: R-ISP ne treba nikakvu statičku rutu ka privatnim mrežama — to je upravo poenta NAT-a: R-ISP nikada ne vidi 192.168.x.x adrese, samo prevedenu javnu adresu 203.0.113.2/203.0.113.100.)

Konfiguracija Server1

PostavkaVrednost
IP adresa192.168.10.5
Maska255.255.255.0
Gateway192.168.10.1
DNS servisUključen
A zapiswww.firma.local → 192.168.10.5

Konfiguracija PC1 i PC2

Oba na „DHCP" u IP Configuration — adrese se automatski dodeljuju iz odgovarajućih pool-ova na R1.

Očekivani rezultati provere

show ip dhcp binding na R1 (skraćeno):

IP address       Client-ID/Hardware address    Lease expiration    Type
192.168.10.10     0100.5079.6668.01             7 days              Automatic
192.168.20.10     0100.5079.6668.02             7 days              Automatic

Korak 9 – DNS test sa PC1:

PC1> ping www.firma.local
Translating "www.firma.local"...domain server (192.168.10.5) [OK]

Pinging 192.168.10.5 with 32 bytes of data:
Reply from 192.168.10.5: bytes=32 time<1ms TTL=128

Korak 13 – Static NAT (odmah nakon konfiguracije, bez saobraćaja):

R1#show ip nat translations
Pro Inside global      Inside local        Outside local   Outside global
--- 203.0.113.100      192.168.10.5        ---             ---

Korak 14 – Test PAT-a:

PC1> ping 8.8.8.8
PC2> ping 8.8.8.8

R1#show ip nat translations
Pro Inside global          Inside local            Outside local   Outside global
--- 203.0.113.100          192.168.10.5            ---             ---
icmp 203.0.113.2:1         192.168.10.10:1         8.8.8.8:1       8.8.8.8:1
icmp 203.0.113.2:2         192.168.20.10:2         8.8.8.8:2       8.8.8.8:2

Objašnjenje: PC1 (192.168.10.10) i PC2 (192.168.20.10) dele istu inside global adresu (203.0.113.2 — adresa Gi0/2), razlikujući se po ICMP identifikatoru/portu, dok static NAT unos za Server1 ostaje nepromenjen i nezavisan od PAT saobraćaja.

Korak 16 – Dijagnostička vežba

Nakon R1(config)#no ip dhcp pool LAN2-POSLOVNICA:

PC2 pokušava renew/release i ostaje bez IP adrese (Automatic Private IP Addressing ili „No IP Address" prikaz, zavisno od podešavanja u Packet Traceru).

Objašnjenje: ip helper-address na R2 i dalje ispravno prosleđuje DHCPDISCOVER ka R1 (10.0.0.1) kao unicast, ali R1 više nema definisan ip dhcp pool čiji network odgovara mreži 192.168.20.0/24 — DHCP server na R1 ne zna iz kog opsega da dodeli adresu za zahtev koji stiže sa te (relay-ovane) mreže, pa zahtev ostaje bez odgovora (nema DHCPOFFER). Ovo potvrđuje da relay sam po sebi ne zamenjuje potrebu za odgovarajućim pool-om na serveru (Tema 4).

Nakon vraćanja pool-a (ip dhcp pool LAN2-POSLOVNICA sa istom konfiguracijom kao ranije), PC2 ponovo uspešno dobija adresu.

Rešenje dodatnog izazova

R1(config)#ntp server 203.0.113.1
R1(config)#logging 192.168.10.5

(pretpostavka: Server1 ima uključen Syslog servis u Packet Traceru)

Nakon shutdown/no shutdown na R1 Gi0/1, na Server1 (Syslog log) pojavljuje se poruka tipa:

%LINK-3-UPDOWN: Interface GigabitEthernet0/1, changed state to down
%LINK-3-UPDOWN: Interface GigabitEthernet0/1, changed state to up

sa timestamp-om usklađenim zahvaljujući NTP sinhronizaciji (Teme 14-15).

Realističniji excluded-address opsezi (npr. 192.168.10.1-192.168.10.19 umesto samo do .9) ostavljaju dovoljno prostora za buduće statičke uređaje (dodatne servere, štampače, mrežnu opremu) bez potrebe da se opseg naknadno menja i rizikuje preklapanje sa već dodeljenim DHCP adresama.