aplikacijski sloj interneta. aplikacijski sloj.pdf · • elektronička pošta. 3 mreže računala...

31
1 Mreže računala Aplikacijski sloj Interneta Stjepan Groš

Upload: others

Post on 07-Oct-2020

3 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Aplikacijski sloj Interneta. Aplikacijski sloj.pdf · • Elektronička pošta. 3 Mreže računala Sustava DNS • Definicija problema • Temeljna usluga DNS-a: pretvaranje imena

1

Mreže računala

Aplikacijski sloj Interneta

Stjepan Groš

Page 2: Aplikacijski sloj Interneta. Aplikacijski sloj.pdf · • Elektronička pošta. 3 Mreže računala Sustava DNS • Definicija problema • Temeljna usluga DNS-a: pretvaranje imena

222Mreže računala

Sadržaj

• Sustav DNS

• Elektronička pošta

Page 3: Aplikacijski sloj Interneta. Aplikacijski sloj.pdf · • Elektronička pošta. 3 Mreže računala Sustava DNS • Definicija problema • Temeljna usluga DNS-a: pretvaranje imena

333Mreže računala

Sustava DNS

• Definicija problema

• Temeljna usluga DNS-a: pretvaranje imena u IP adrese

• Hijerarhijska organizacija DNS sustava

• Poslužitelji u sustavu DNS

• DNS baze sa podacima (o imenima)

• Slanje upita DNS poslužiteljima

Page 4: Aplikacijski sloj Interneta. Aplikacijski sloj.pdf · • Elektronička pošta. 3 Mreže računala Sustava DNS • Definicija problema • Temeljna usluga DNS-a: pretvaranje imena

444Mreže računala

Definicija problema

• Ljudima je teško pamtiti brojeve• IP adrese su samo brojevi

• Puno prirodnije je pamtiti imena

• Međutim, rad s nizovima znakova je neefikasan

• Dodatni problemi• vrlo česte promjene

• stalno dodavanje i uklanjanje računala

• ogromne količine promjena

Page 5: Aplikacijski sloj Interneta. Aplikacijski sloj.pdf · • Elektronička pošta. 3 Mreže računala Sustava DNS • Definicija problema • Temeljna usluga DNS-a: pretvaranje imena

555Mreže računala

Usluga pretvaranja imena u IP adrese

• Ideja je svim IP mrežama dati ime• Hijerarhija IP mreža se oslikava u hijerarhiji domena

• Na temelju ideje izgrađena raspodijeljena baza• Temeljna namjena pretvaranje imena u adresu

• Baza i protokol za razmjenu podataka se nazivaju DNS

• Domain Name System

• Dvosmislenost! Kontekst je bitan!

• Raspodjeljena zbog nemogućnosti održavanja centralizirane baze!

Page 6: Aplikacijski sloj Interneta. Aplikacijski sloj.pdf · • Elektronička pošta. 3 Mreže računala Sustava DNS • Definicija problema • Temeljna usluga DNS-a: pretvaranje imena

666Mreže računala

Organizacija DNS-a

• Sva imena organizirana su u stablo• Svaki čvor pokazuje na svoje podčvorove

• Iznimka je isključivo korijen stabla

• Nalazi se na fiksnim, unaprijed predefiniranim, IP adresama

• U svakom čvoru stabla nalazi se baza sa sljedećim podacima

• Imena koja su unutar domene

• Pokazivači na poddomene

• Puno ime domene/računala dobija se čitanjem odozdo prema gore

• To se često naziva FQDN

Page 7: Aplikacijski sloj Interneta. Aplikacijski sloj.pdf · • Elektronička pošta. 3 Mreže računala Sustava DNS • Definicija problema • Temeljna usluga DNS-a: pretvaranje imena

777Mreže računala

Primjer hijerarhije

hrcomnet milinfo

google fer www

cc zea zemris

wwwsmtp pop3

zone

domene

• Neka imena:net.

google.hr.

www.hr.

www.zemris.fer.hr.

pop3.zemris.fer.hr.

Page 8: Aplikacijski sloj Interneta. Aplikacijski sloj.pdf · • Elektronička pošta. 3 Mreže računala Sustava DNS • Definicija problema • Temeljna usluga DNS-a: pretvaranje imena

888Mreže računala

Poslužitelji u DNS sustavu (1)

• Za svaku domenu postoji barem jedan poslužitelj• Radi raspoloživosti ima ih obično dva ili tri

• Poslužitelj može biti zadužen i za više domena!• Primjer je poslužitelj zadužen za fer.hr, cc.fer.hr i

zea.fer.hr domene

• Poslužitelj ne mora biti nužno u IP mreži u kojoj je domena

• Na prethodnoj slici poslužitelj fer.hr, cc.fer.hr i zea.fer.hr domena se nalazi u cc.fer.hr domeni

• Poslužitelj sadrži pokazivače na poslužitelje poddomena

Page 9: Aplikacijski sloj Interneta. Aplikacijski sloj.pdf · • Elektronička pošta. 3 Mreže računala Sustava DNS • Definicija problema • Temeljna usluga DNS-a: pretvaranje imena

999Mreže računala

Poslužitelji u DNS sustavu (2)

• Zona• Zona je skup domena za koju je zadužen isti DNS

poslužitelj

• Autoritativni poslužitelj• Poslužitelj(i) zaduženi za pojedinu zonu/domenu

• Pomoćni (slave) poslužitelji• Sadrže kopiju DNS baze

• Periodički sinkroniziraju bazu s primarnim poslužiteljem

Page 10: Aplikacijski sloj Interneta. Aplikacijski sloj.pdf · • Elektronička pošta. 3 Mreže računala Sustava DNS • Definicija problema • Temeljna usluga DNS-a: pretvaranje imena

101010Mreže računala

DNS baze

• Tekstualna baza se sastoji od zapisa• Svaki zapis (uglavnom) jedna linija

• Nekoliko bitnih zapisa koje ćemo koristiti• SOA (Start of Authority)

• Definira temeljne podatke o domeni

• A i AAAA• Definira IPv4 (IPv6) adresu za neko ime

• NS• Definira poslužitelj domene

• CNAME

• Definira alias za neko postojeće ime

Page 11: Aplikacijski sloj Interneta. Aplikacijski sloj.pdf · • Elektronička pošta. 3 Mreže računala Sustava DNS • Definicija problema • Temeljna usluga DNS-a: pretvaranje imena

111111Mreže računala

Primjeri zapisa u DNS bazi (1)

• SOA zapis za domenu zemris.fer.hr@ 360000 IN SOA Iluvatar postmaster ( 2007111101 ; Serial 10800 ; Refresh 3600 ; Retry 432000 ; Expire 86400) ; Minimum

• Većina podataka u ovom zapisu odnosi se na pomoćne poslužitelje

Page 12: Aplikacijski sloj Interneta. Aplikacijski sloj.pdf · • Elektronička pošta. 3 Mreže računala Sustava DNS • Definicija problema • Temeljna usluga DNS-a: pretvaranje imena

121212Mreže računala

Primjeri zapisa u DNS bazi (2)

• A zapis računala iluvatar.zemris.fer.hriluvatar 86400 IN A 161.53.65.13

• U primjerima ćemo A zapis pisati na sljedeći način:

(<ime računala>, <ip adresa>, A [, <ttl vrijednost>])

• Odnos imena i IP adresa je 1:n ili m:1• Za jedno ime može biti više IP adresa

• Jedna IP adresa se može koristiti za više imena

Page 13: Aplikacijski sloj Interneta. Aplikacijski sloj.pdf · • Elektronička pošta. 3 Mreže računala Sustava DNS • Definicija problema • Temeljna usluga DNS-a: pretvaranje imena

131313Mreže računala

Primjeri zapisa u DNS bazi (3)

• NS zapisa• Koristi se za dvije namjene

• Definira poslužitelj za tekuću domenu/zonu

• Primjer poslužitelja zemris.fer.hr domene

zemris.fer.hr. 86400 IN NS gandalf.zemris.fer.hr.

• Zapis u primjerima

(<domena>, <poslužitelj>, NS [, <ttl vrijednost>])

• Definiranje poddomene i njenog poslužitelja• Primjer zapisa u fer.hr domeni za zemris.fer.hr domenu

zemris.fer.hr. 86400 IN NS gandalf.zemris.fer.hr.gandalf.zemris.fer.hr. IN A 161.53.65.11

Page 14: Aplikacijski sloj Interneta. Aplikacijski sloj.pdf · • Elektronička pošta. 3 Mreže računala Sustava DNS • Definicija problema • Temeljna usluga DNS-a: pretvaranje imena

141414Mreže računala

Slanje upita DNS sustavu

• Naredba nslookup• Postoji i na Unixu i na Windowsima

• Najčešća sintaksa

nslookup [-type=tip_zapisa] atribut [dns poslužitelj]

• Primjer saznavanja IP adrese# nslookup www.carnet.hrServer: 161.53.65.13Address: 161.53.65.13#53

Non-authoritative answer:Name: www.carnet.hrAddress: 161.53.160.25

Page 15: Aplikacijski sloj Interneta. Aplikacijski sloj.pdf · • Elektronička pošta. 3 Mreže računala Sustava DNS • Definicija problema • Temeljna usluga DNS-a: pretvaranje imena

151515Mreže računala

Pretraživanje DNS baza (1)

• Rekurzivno razrješavanje imena• Klijent pošalje upit DNS poslužitelju koji potom

razrješava ime dok ne dođe do konačnog odgovora

• Iterativno razrješavanje imena• Klijent pošalje upit DNS poslužitelju koji šalje podatke

o DNS poslužitelju kojeg idućeg treba pitati

• DNS poslužitelji imaju isključivo informaciju o korijenu hijerarhije!

• Prilikom pretraživanja moguće je ići samo "prema dolje"

Page 16: Aplikacijski sloj Interneta. Aplikacijski sloj.pdf · • Elektronička pošta. 3 Mreže računala Sustava DNS • Definicija problema • Temeljna usluga DNS-a: pretvaranje imena

161616Mreže računala

Pretraživanje DNS baza (2)

• Naredba dig• Slanje upita DNS poslužiteljima

• Više mogućnosti od nslookup naredbe

• Oblik naredbe

dig [opcije] [-t tip_zapisa] atribut [@dns_poslužitelj]

• Korisna opcija +trace

Page 17: Aplikacijski sloj Interneta. Aplikacijski sloj.pdf · • Elektronička pošta. 3 Mreže računala Sustava DNS • Definicija problema • Temeljna usluga DNS-a: pretvaranje imena

171717Mreže računala

Neke krive upotrebe DNS poslužitelja

• Neke krive upotrebe DNS poslužitelja• Balansiranje opterećenja

• Mail poslužitelj da dinamičkim adresama

• Upravljanje prometom

• Sigurnost DNS sustava• Radi se o kritičnoj komponenti s vrlo lošom

sigurnošću

• Postoji DNSSEC ali nije (još) zaživio

Page 18: Aplikacijski sloj Interneta. Aplikacijski sloj.pdf · • Elektronička pošta. 3 Mreže računala Sustava DNS • Definicija problema • Temeljna usluga DNS-a: pretvaranje imena

181818Mreže računala

Elektronička pošta

• Arhitektura i komponente sustava

• Isporuka pošte lokalnim i udaljenim korisnicima

• DNS i elektronička pošta

• SMTP protokol

• Dohvat elektroničke pošte

• Sigurnost elektroničke pošte

Page 19: Aplikacijski sloj Interneta. Aplikacijski sloj.pdf · • Elektronička pošta. 3 Mreže računala Sustava DNS • Definicija problema • Temeljna usluga DNS-a: pretvaranje imena

191919Mreže računala

Sustav elektroničke pošte

• Arhitektura sustava elektroničke pošte

MTAMUA

MDA

MTA

MDA

MUA

FilePOP3IMAP

FilePOP3IMAP

SMTP SMTP SMTP

Page 20: Aplikacijski sloj Interneta. Aplikacijski sloj.pdf · • Elektronička pošta. 3 Mreže računala Sustava DNS • Definicija problema • Temeljna usluga DNS-a: pretvaranje imena

202020Mreže računala

Komponente sustava (1)

• MTA (Mail Transfer Agent)• Komponenta zadužena za slanje elektroničke pošte

• postfix, sendmail, qmail, Exchange(!), ...

• Na temelju adrese

• proslijeđuje poruku udaljenom stroju

• vrši lokalnu isporuku

• MDA (Mail Delivery Agent)• Komponenta koja doista vrši lokalnu isporuku

• procmail

• Lokalna isporuka znači pisanje u datoteke i/ili baze

Page 21: Aplikacijski sloj Interneta. Aplikacijski sloj.pdf · • Elektronička pošta. 3 Mreže računala Sustava DNS • Definicija problema • Temeljna usluga DNS-a: pretvaranje imena

212121Mreže računala

Komponente sustava (2)

• MUA (Mail User Agent)• Klijentski program

• Thunderbird, Outlook, Outlook Express, Eudora, Evolution, ...

• U njega je upisan odlazni poslužitelj elektroničke pošte (MTA)

• IP adresa ili ime

• MTA preuzima poruku nakon što se odabere opcija Send

• Također je definiran i dolazni poslužitelj elektroničke pošte

• Moguć pristup porukama direktno ili putem različitih protokola

Page 22: Aplikacijski sloj Interneta. Aplikacijski sloj.pdf · • Elektronička pošta. 3 Mreže računala Sustava DNS • Definicija problema • Temeljna usluga DNS-a: pretvaranje imena

222222Mreže računala

Isporuka poruka lokalnim korisnicima

• Primjer slanja lokalnom korisniku

• Prima: [email protected]

• Šalje: [email protected]

• Koraci• korisnikA priprema poruku u

MUA

• MUA koristeći SMTP šalje poruku svom lokalnom MTA

• MTA isporučuje poruku kroz MDA u sandućić od korisnika B

MTAMUA

MDA

[email protected]

Page 23: Aplikacijski sloj Interneta. Aplikacijski sloj.pdf · • Elektronička pošta. 3 Mreže računala Sustava DNS • Definicija problema • Temeljna usluga DNS-a: pretvaranje imena

232323Mreže računala

Isporuka poruka udaljenim korisnicima (1)

• Primjer slanja poruke od [email protected] korisniku [email protected]

MTAMUA

MDA

korisnikA

@primjer.com

MTA

@primjer.hr

DNS usluga

12

34

6

5

Page 24: Aplikacijski sloj Interneta. Aplikacijski sloj.pdf · • Elektronička pošta. 3 Mreže računala Sustava DNS • Definicija problema • Temeljna usluga DNS-a: pretvaranje imena

242424Mreže računala

Isporuka poruka udaljenim korisnicima (2)

• Tijek isporuke1. korisnikA priprema poruku u svom MUA

2. putem SMTP protokola šalje poruku svom MTA

3. MTA putem DNS protokola saznaje odredišni MTA• Traži MX zapis za domenu u adresi elektroničke poruke

• U našem primjeru to je MX zapis za primjer.hr domenu

4. DNS vraća ime i adresu odredišnog MTA

5. Protokolom SMTP šalje poruku odredišnom MTA

6. Odredišni MTA isporučuje poruku lokalnom korisniku koristeći MDA

Page 25: Aplikacijski sloj Interneta. Aplikacijski sloj.pdf · • Elektronička pošta. 3 Mreže računala Sustava DNS • Definicija problema • Temeljna usluga DNS-a: pretvaranje imena

252525Mreže računala

MX zapisi u DNS bazi (1)

• Temelj usmjeravanja pošte na Internetu• Određuje koji stroj prihvaća poštu za pojedinu

domenu!

• MX zapis u DNS-u domene primjer.hrmail 86400 IN A 192.168.0.10....primjer.hr 86400 IN MX 10 mail.primjer.hr

• U primjerima ćemo MX zapis pisati na sljedeći način:

(<ime domene>, <prioritet poslužitelj>, MX[, <ttl vrijednost>])

Page 26: Aplikacijski sloj Interneta. Aplikacijski sloj.pdf · • Elektronička pošta. 3 Mreže računala Sustava DNS • Definicija problema • Temeljna usluga DNS-a: pretvaranje imena

262626Mreže računala

MX zapisi u DNS bazi (2)

• Ispitivanje MX zapisa, primjeri$ nslookup -type=mx fer.hrServer: 161.53.65.11Address: 161.53.65.11#53

Non-authoritative answer:fer.hr mail exchanger = 10 labs3.cc.fer.hr.

$ dig -t mx gmail.com....

Page 27: Aplikacijski sloj Interneta. Aplikacijski sloj.pdf · • Elektronička pošta. 3 Mreže računala Sustava DNS • Definicija problema • Temeljna usluga DNS-a: pretvaranje imena

272727Mreže računala

Primjer slanja poruke protokolom SMTP

• Primjer slanja porukeS: 220 mail.primjer.hr ESMTP WelcomeC: EHLO 10.0.0.10S: 250-mail.primjer.hrS: 250 SIZE 10240000C: MAIL FROM: <[email protected]>S: 250 OkC: RCPT TO: <[email protected]>S: 250 OkC: DATAS: 354 End data with <CR><LF>.<CR><LF>C: To: Korisnik B <[email protected]>C: Subject: TestC:C: Ovo je testC: .S: 250 Ok: queued as 172D2100034C: QUITS: 221 Bye

Page 28: Aplikacijski sloj Interneta. Aplikacijski sloj.pdf · • Elektronička pošta. 3 Mreže računala Sustava DNS • Definicija problema • Temeljna usluga DNS-a: pretvaranje imena

282828Mreže računala

Dohvat elektroničke pošte

• Zajedničke karakteristike• Jednostavni aplikacijski protokoli temeljeni na

razmjeni tekstualnih APDU-ova

• Koriste TCP za prijenos

• Protokol POP3• Jednostavniji protokol za dohvat elektroničke pošte

• Protokol IMAP• Osim dohvata omogućava i postavljanje poruka na

poslužitelj• Ne i slanje poruka!

Page 29: Aplikacijski sloj Interneta. Aplikacijski sloj.pdf · • Elektronička pošta. 3 Mreže računala Sustava DNS • Definicija problema • Temeljna usluga DNS-a: pretvaranje imena

292929Mreže računala

Primjer dohvata poruke protokolom POP3

S: +OK Hello there.C: USER korisnikBS: +OK Password required.C: PASS lozinkaS: +OK logged in.C: LISTS: 1 968S: .C: RETR 1S: +OK 968 octets follow.S: <poruka>S: .C: DELE 1S: +OK Deleted.C: DELE 1S: -ERR Invalid message number.C: QUITS: +OK Bye-bye.

Page 30: Aplikacijski sloj Interneta. Aplikacijski sloj.pdf · • Elektronička pošta. 3 Mreže računala Sustava DNS • Definicija problema • Temeljna usluga DNS-a: pretvaranje imena

303030Mreže računala

Izgled poruke elektroničke pošte

• Poruka se sastoji od zaglavlja (do prve prazne linije) i tijela porukeReturn-Path: <[email protected]>X-Original-To: [email protected]: [email protected]: from 10.0.0.10 (mail.primjer.com [10.0.0.10]) by mail.primjer.hr (Postfix) with ESMTP id 172D2100034 for <[email protected]>; Mon, 17 Dec 2007 19:28:21 +0100 (CET)To: Korisnik B <[email protected]>Subject: TestMessage-Id: <[email protected]>Date: Mon, 17 Dec 2007 19:28:21 +0100 (CET)From: [email protected]

Ovo je test.

Page 31: Aplikacijski sloj Interneta. Aplikacijski sloj.pdf · • Elektronička pošta. 3 Mreže računala Sustava DNS • Definicija problema • Temeljna usluga DNS-a: pretvaranje imena

313131Mreže računala

Sigurnost elektroničke pošte

• Slanje elektroničke pošte• Neprovjeravanje (ili loša provjera) izvorišne adrese

• Otvoreni prijenos (relay) poruka• MTA koji prihvaća mailove od vanjskih korisnika za vanjske

korisnike

• Dohvat elektroničke pošte• Prijenos lozinki u otvorenom tekstu