Laboratorijska vežba – Modul 22 – Emulirana OSPF mreža sa VyOS ruterima u GNS3
Cilj vežbe
Instalirati GNS3 i GNS3 VM, izgraditi topologiju sa dva VyOS rutera i dva VPCS računara, konfigurisati OSPF i NAT izlaz na internet, snimiti OSPF saobraćaj Wireshark-om, sačuvati i izvesti projekat, i dokumentovati laboratoriju.
Napomena o legalnosti: Vežba koristi isključivo legalno besplatne image-e — VyOS (otvoren kod, besplatni rolling/Stream image sa zvaničnog sajta vyos.io) i VPCS (ugrađen u GNS3). Nisu potrebni nikakvi licencirani image-i.
Potrebno predznanje
- Kompletna teorija ovog modula (Teme 1–14).
- OSPF (Modul 12), NAT/PAT (Modul 13), Wireshark (Modul 19), VM i snapshot-i (Modul 21).
Potrebni programi
- GNS3 (GUI) i GNS3 VM iste verzije.
- VMware Workstation Player (preporučeno) ili VirtualBox sa nested virtualizacijom.
- VyOS ISO/qcow2 image sa zvaničnog sajta.
- Wireshark (Modul 19).
Potrebni resursi
| Stavka | Minimum |
|---|---|
| RAM dodeljen GNS3 VM | 4 GB |
| CPU jezgra za GNS3 VM | 2 |
| Nested virtualizacija | Uključena |
Topologija
graph LR
PC1["PC1 (VPCS)<br/>192.168.1.10"] --- R1["R1 (VyOS)<br/>eth1: 192.168.1.1<br/>eth0: 10.0.12.1<br/>eth2: DHCP (NAT)"]
R1 ---|"10.0.12.0/30"| R2["R2 (VyOS)<br/>eth0: 10.0.12.2<br/>eth1: 192.168.2.1"]
R2 --- PC2["PC2 (VPCS)<br/>192.168.2.10"]
R1 --- NAT["NAT čvor<br/>(internet)"]
Plan adresiranja
| Uređaj | Interfejs | Adresa | Gateway |
|---|---|---|---|
| R1 | eth0 | 10.0.12.1/30 | — |
| R1 | eth1 | 192.168.1.1/24 | — |
| R1 | eth2 | DHCP (od NAT čvora) | DHCP |
| R2 | eth0 | 10.0.12.2/30 | — |
| R2 | eth1 | 192.168.2.1/24 | — |
| PC1 | — | 192.168.1.10/24 | 192.168.1.1 |
| PC2 | — | 192.168.2.10/24 | 192.168.2.1 |
Tabela portova
| Uređaj | Port | Povezan sa |
|---|---|---|
| R1 | eth0 | R2 eth0 |
| R1 | eth1 | PC1 |
| R1 | eth2 | NAT čvor |
| R2 | eth1 | PC2 |
Koraci vežbe
Korak 1 – Instalacija GNS3 i GNS3 VM
Instalirajte GNS3 GUI, preuzmite GNS3 VM iste verzije i uvezite je u hipervizor (Tema 5). U podešavanjima GNS3 VM uključite nested virtualizaciju (Tema 9).
Korak 2 – Povezivanje GUI-ja sa GNS3 VM
Pokrenite GNS3 Setup Wizard → „Run appliances in a virtual machine" → izaberite hipervizor i GNS3 VM, dodelite 4 GB RAM-a. Potvrdite da je server označen zelenom bojom.
Korak 3 – Dodavanje VyOS šablona
File → New template → Import an appliance from the GNS3 server (ili Marketplace) → izaberite VyOS → dodajte preuzeti VyOS image fajl kada čarobnjak to zatraži.
Korak 4 – Kreiranje topologije
- File → New blank project → naziv „Modul22-OSPF-Lab".
- Prevucite dva VyOS uređaja (preimenujte ih u R1 i R2), dva VPCS uređaja (PC1, PC2) i jedan NAT čvor.
- Povežite prema tabeli portova.
Korak 5 – Pokretanje i instalacija VyOS-a
Pokrenite sve uređaje (zeleno dugme). Ako koristite VyOS ISO (live image), na svakom ruteru se prijavite (vyos/vyos) i pokrenite install image da biste ga instalirali na virtuelni disk, zatim reboot. (Kod qcow2 image-a ovaj korak nije potreban.)
Korak 6 – Konfiguracija adresa
Na R1:
configure
set system host-name R1
set interfaces ethernet eth0 address 10.0.12.1/30
set interfaces ethernet eth1 address 192.168.1.1/24
set interfaces ethernet eth2 address dhcp
commit
save
exit
Na R2:
configure
set system host-name R2
set interfaces ethernet eth0 address 10.0.12.2/30
set interfaces ethernet eth1 address 192.168.2.1/24
commit
save
exit
Na PC1 (VPCS konzola):
PC1> ip 192.168.1.10/24 192.168.1.1
PC1> save
Na PC2:
PC2> ip 192.168.2.10/24 192.168.2.1
PC2> save
Korak 7 – OSPF
Na R1:
configure
set protocols ospf area 0 network 10.0.12.0/30
set protocols ospf area 0 network 192.168.1.0/24
set protocols ospf passive-interface eth1
set protocols ospf default-information originate always
commit
save
exit
Na R2:
configure
set protocols ospf area 0 network 10.0.12.0/30
set protocols ospf area 0 network 192.168.2.0/24
set protocols ospf passive-interface eth1
commit
save
exit
Provera:
vyos@R1:~$ show ip ospf neighbor
vyos@R2:~$ show ip route
Test sa PC1:
PC1> ping 192.168.2.10
Korak 8 – NAT izlaz na internet
Na R1:
configure
set nat source rule 10 outbound-interface name eth2
set nat source rule 10 source address 192.168.0.0/16
set nat source rule 10 translation address masquerade
commit
save
exit
Test sa PC2 (iza R2, dobija podrazumevanu rutu preko OSPF-a):
PC2> ping 8.8.8.8
Korak 9 – Snimanje OSPF saobraćaja
Desni klik na link R1–R2 → Start capture. U Wireshark-u primenite filter:
ospf
Identifikujte Hello pakete i zabeležite Hello interval i Router ID oba rutera (Modul 12). Zatim primenite icmp dok ponovo pingujete sa PC1 ka PC2.
Korak 10 – Snapshot projekta
Edit → Manage snapshots → Create → naziv „OSPF-NAT-funkcionalno".
Korak 11 – Izvoz projekta
Proverite da je save izvršen na oba rutera, zatim File → Export portable project → bez uključivanja image-a → sačuvajte Modul22-OSPF-Lab.gns3project.
Korak 12 – Dokumentovanje
Napravite fasciklu modul22-lab-dokumentacija sa:
- slikom topologije (File → Export as image);
- adresnim planom (tabela iz ove vežbe);
- konfiguracijama rutera, dobijenim komandom
show configuration commandsna R1 i R2, sačuvanim uR1.txtiR2.txt; - kratkim opisom cilja i verzijama GNS3 i VyOS-a.
Korak 13 – Dijagnostička vežba: nesaglasan OSPF Hello interval
- Na R2 promenite Hello interval na interfejsu ka R1:
configure
set protocols ospf interface eth0 hello-interval 5
commit
exit
- Posle 40 sekundi proverite
show ip ospf neighborna R1 — sused nestaje. - U Wireshark snimku na linku R1–R2 uporedite Hello interval u paketima od R1 (10) i od R2 (5).
- Objasnite svojim rečima, na osnovu Modula 12 i Teme 11 ovog modula, zašto se susedstvo raspalo i kako je snimak saobraćaja pomogao da se uzrok nađe bez nagađanja.
- Vratite podrazumevanu vrednost:
configure
delete protocols ospf interface eth0 hello-interval
commit
save
exit
Komande za proveru
show interfaces
show ip route
show ip ospf neighbor
show configuration commands
show nat source translations
Najčešće greške
| Greška | Uzrok | Rešenje |
|---|---|---|
| GNS3 server crven (nije povezan) | GNS3 VM nije pokrenuta ili je druge verzije | Proveriti Korake 1-2 |
| VyOS se podiže više minuta, upozorenje o KVM-u | Nested virtualizacija isključena | Tema 9, Primer 5 |
| Konfiguracija nestaje posle restarta rutera | Nije izvršen save, ili ISO nije instaliran komandom install image | Korak 5 i 6 |
| OSPF susedstvo se ne formira | Pogrešan interfejs u network komandi ili različit Hello interval | show ip ospf neighbor, snimak ospf |
| PC2 nema internet | Nedostaje default-information originate na R1 ili NAT pravilo | Koraci 7-8 |
Postupak rešavanja problema
- Proveriti status GNS3 servera i da li su uređaji pokrenuti.
show interfaces— adrese i status linkova.show ip ospf neighborishow ip route— rutiranje.- Snimanje na linku — šta zaista prolazi.
show nat source translations— da li se NAT prevod dešava.
Završna provera
Vežba je uspešno završena kada:
- PC1 i PC2 uspešno pingaju jedan drugog preko OSPF rute.
- PC2 ima pristup internetu preko R1 (NAT).
- Snimljeni su i identifikovani OSPF Hello paketi.
- Projekat je izvezen bez image-a i dokumentovan.
- Objašnjen je uzrok raspada OSPF susedstva iz Koraka 13.
Dodatni izazov
Dodajte Cloud čvor vezan za VirtualBox Host-only adapter i povežite ga sa trećim interfejsom na R2, tako da R2 može da rutira ka Ubuntu Server VM-u iz Modula 18. Proverite da PC1 može da otvori nginx stranicu te VM-e (VPCS ne podržava HTTP — za ovaj test zamenite PC1 lakim Docker kontejnerom, npr. Alpine sa curl-om). Ako imate EVE-NG Community, ponovite osnovnu topologiju u EVE-NG-u i uporedite tok rada.
Rešenje
Kompletno rešenje ove vežbe nalazi se u /resenja/modul-22/04-laboratorijska-vezba-resenje.md.
📖 Prikaži rešenje
Rešenje laboratorijske vežbe – Modul 22
Kompletna konfiguracija – R1
set system host-name R1
set interfaces ethernet eth0 address 10.0.12.1/30
set interfaces ethernet eth1 address 192.168.1.1/24
set interfaces ethernet eth2 address dhcp
set protocols ospf area 0 network 10.0.12.0/30
set protocols ospf area 0 network 192.168.1.0/24
set protocols ospf passive-interface eth1
set protocols ospf default-information originate always
set nat source rule 10 outbound-interface name eth2
set nat source rule 10 source address 192.168.0.0/16
set nat source rule 10 translation address masquerade
(izlaz show configuration commands, skraćeno na relevantne linije)
Kompletna konfiguracija – R2
set system host-name R2
set interfaces ethernet eth0 address 10.0.12.2/30
set interfaces ethernet eth1 address 192.168.2.1/24
set protocols ospf area 0 network 10.0.12.0/30
set protocols ospf area 0 network 192.168.2.0/24
set protocols ospf passive-interface eth1
VPCS
PC1> ip 192.168.1.10/24 192.168.1.1
PC2> ip 192.168.2.10/24 192.168.2.1
Očekivani rezultati
vyos@R1:~$ show ip ospf neighbor
Neighbor ID Pri State Dead Time Address Interface
10.0.12.2 1 Full/DR 35.1s 10.0.12.2 eth0:10.0.12.1
vyos@R2:~$ show ip route
O>* 0.0.0.0/0 [110/1] via 10.0.12.1, eth0
O>* 192.168.1.0/24 [110/2] via 10.0.12.1, eth0
C>* 192.168.2.0/24 is directly connected, eth1
(Router ID i DR/BDR uloge mogu se razlikovati zavisno od redosleda pokretanja — oba rutera u stanju Full je ključna potvrda.)
PC1> ping 192.168.2.10
84 bytes from 192.168.2.10 icmp_seq=1 ttl=62 time=2.1 ms
PC2> ping 8.8.8.8
84 bytes from 8.8.8.8 icmp_seq=1 ttl=113 time=18.4 ms
TTL=62 potvrđuje dva skoka (R2 i R1) između PC1 i PC2.
Korak 9 – Snimak OSPF-a
Filter ospf prikazuje Hello pakete na svakih 10 sekundi od oba rutera, upućene na multicast adresu 224.0.0.5. U detaljima paketa: Hello Interval = 10, Router Dead Interval = 40, Area ID = 0.0.0.0, Router ID pošiljaoca.
Korak 13 – Dijagnostička vežba
Nakon postavljanja hello-interval 5 na R2:
show ip ospf neighborna R1 posle najviše 40 sekundi ne prikazuje suseda.- U snimku: Hello paketi od R1 imaju Hello Interval = 10, od R2 = 5.
Objašnjenje: OSPF zahteva da Hello i Dead intervali budu identični na oba kraja da bi se susedstvo formiralo (Modul 12). Kada se razlikuju, svaki ruter odbacuje Hello pakete suseda, Dead timer ističe i susedstvo se raspada. Snimak saobraćaja je uzrok pokazao direktno — vrednost polja „Hello Interval" u paketima oba rutera — umesto nagađanja na osnovu simptoma „nema suseda", koji može imati i druge uzroke (pogrešan area ID, maska, autentifikacija).
Rešenje dodatnog izazova
Na R2 treći interfejs eth2 povezan na Cloud čvor vezan za Host-only adapter (npr. mreža 192.168.56.0/24):
set interfaces ethernet eth2 address 192.168.56.2/24
set protocols ospf area 0 network 192.168.56.0/24
set protocols ospf passive-interface eth2
Na Ubuntu Server VM iz Modula 18 dodaje se ruta ka laboratoriji:
sudo ip route add 192.168.1.0/24 via 192.168.56.2
Sa Alpine kontejnera na mestu PC1: apk add curl && curl http://192.168.56.20 vraća nginx stranicu, pod uslovom da UFW na toj VM dozvoljava port 80 (Modul 18).