Kako radi internet: IP adrese, DNS, domeni i URL
Kako pregledač od reči svetprogramiranja.com stigne do pravog računara negde u svetu? U ovoj lekciji su IP adrese, paketi, DNS, domeni i delovi URL adrese – i šta se tačno dešava od trenutka kada pritisneš Enter do prikaza stranice.
Kako da učiš: svaki primer isprobaj u pregledaču ili komandnoj liniji i uradi vežbe iz lekcije. Primeri su u HTML-u, JavaScript-u i Python-u; za većinu je dovoljan pregledač, a za Python primere instaliran Python 3.
IP adrese i paketi
Svaki uređaj na internetu ima IP adresu – broj po kome se pronalazi, kao kućna adresa. Postoje dve verzije:
| Verzija | Izgled | Koliko adresa |
|---|---|---|
| IPv4 | 216.24.57.1 – četiri broja od 0 do 255 | oko 4,3 milijarde (premalo za sve uređaje) |
| IPv6 | 2001:db8:85a3::8a2e:370:7334 – heksadekadni zapis | praktično neograničeno (2128) |
Podaci ne putuju u jednom komadu, nego se dele na male pakete. Svaki paket ima adresu pošiljaoca i primaoca i može ići drugim putem kroz mrežu (preko rutera); na odredištu se ponovo slažu po redu. O tome brine protokol TCP, a o adresiranju IP – zajedno TCP/IP.
U kućnoj mreži uređaji imaju lokalne adrese (npr. 192.168.1.50), a ruter ih predstavlja internetu jednom javnom adresom. Adresa 127.0.0.1 (ili ime localhost) uvek označava sopstveni računar.
DNS: imenik interneta
Ljudi pamte imena, a računari brojeve. DNS (Domain Name System) prevodi ime domena u IP adresu:
svetprogramiranja.com ──DNS──▶ 216.24.57.1
- Pregledač prvo pogleda da li je adresu već skoro tražio (keš).
- Ako nije, pita DNS server (obično od internet provajdera ili javni, kao 1.1.1.1 i 8.8.8.8).
- DNS server, ako ne zna odgovor, pita redom: korenske servere → server za
.com→ server zadužen zasvetprogramiranja.com. - Odgovor (IP adresa) se pamti neko vreme da sledeći put ide brže.
U DNS-u se čuvaju i drugi zapisi: A (IP adresa sajta), CNAME (drugo ime), MX (gde stiže pošta za domen), TXT (potvrde i bezbednosna podešavanja).
cmd) ukucaj nslookup svetprogramiranja.com – dobićeš IP adresu sajta. Komanda ping meri koliko traje put paketa do servera i nazad, a tracert (Linux/Mac: traceroute) pokazuje kroz koje rutere paket prolazi.Domen i hosting
| Pojam | Šta je | Primer |
|---|---|---|
| domen | ime sajta koje se zakupljuje (obično na godinu dana) kod registra | svetprogramiranja.com |
| domen najvišeg nivoa (TLD) | poslednji deo imena | .com, .rs, .срб, .org, .edu |
| poddomen | deo ispred glavnog imena, bira ga vlasnik domena | www.svetprogramiranja.com, takprog.petlja.org |
| hosting | server na kome „žive“ fajlovi i program sajta | Render, Netlify, GitHub Pages, školski server |
Domen i hosting su dve odvojene stvari: domen kaže kako se sajt zove, a DNS zapis povezuje to ime sa serverom (hostingom) na kome se sajt nalazi.
Delovi URL adrese
https://www.primer.rs:443/lekcije/petlje?razred=7&strana=2#zadaci
└─┬─┘ └─────┬─────┘└┬─┘└──────┬──────┘└───────┬────────┘└──┬──┘
│ │ │ │ │ │
protokol domen port putanja parametri sidro
| Deo | Značenje |
|---|---|
https | protokol – kako se komunicira (https je šifrovani http) |
www.primer.rs | domen (ime servera) |
:443 | port – „vrata“ servera; za https je podrazumevano 443, za http 80, pa se obično ne piše |
/lekcije/petlje | putanja – koja stranica ili fajl na serveru |
?razred=7&strana=2 | parametri upita – dodatni podaci za server, parovi ime=vrednost odvojeni sa & |
#zadaci | sidro – deo stranice na koji pregledač skroluje (ne šalje se serveru) |
Primer sa ovog sajta: /binarna_pretraga#program otvara lekciju i skroluje do odeljka „Program“.
Ceo put: od Enter-a do stranice
| Korak | Šta se dešava | Lekcija |
|---|---|---|
| 1 | pregledač rastavi URL na delove | ova lekcija |
| 2 | DNS: ime domena → IP adresa | ova lekcija |
| 3 | TCP veza sa serverom (port 443) | ova lekcija |
| 4 | TLS: dogovor o šifrovanju, provera sertifikata (katanac u adresnoj liniji) | Bezbednost |
| 5 | HTTP zahtev GET /putanja | HTTP protokol |
| 6 | server obradi zahtev i vrati odgovor sa HTML-om | Web server |
| 7 | pregledač čita HTML, šalje nove zahteve za CSS, JS i slike | HTTP protokol |
| 8 | iscrtavanje stranice i izvršavanje JavaScript-a | Frontend i backend |
- IP adresa je „broj“ uređaja, domen je „ime“ – DNS ih povezuje.
localhosti127.0.0.1su uvek tvoj računar – koristiće ti kada pokreneš sopstveni server.- Sidro (#…) ostaje u pregledaču, a parametri (?…) idu serveru.
Proveri znanje
Otvori kviz
Kako radi internet
1. Čemu služi DNS?
2. Šta označava adresa 127.0.0.1?
3. U adresi https://primer.rs/zadaci?strana=3#resenje, šta je „strana=3“?
4. Koji port se podrazumeva za HTTPS?
