A legelterjedtebb protokollok áttekintése
A Unix/Linux szerverek üzemeltetése wikiből
(Változatok közti eltérés)
(v0.01) |
(SMTP hozzáadva) |
||
(egy szerkesztő 4 közbeeső változata nincs mutatva) | |||
1. sor: | 1. sor: | ||
Nézzük meg röviden, mit muszáj mindenképpen tudnunk az Internet alapvető protokolljairól. |
Nézzük meg röviden, mit muszáj mindenképpen tudnunk az Internet alapvető protokolljairól. |
||
− | == DNS == |
+ | * [[A DNS működése]] |
− | + | * [[A HTTP működése]] |
|
− | A DNS, mint azt tudjuk, az a protokoll, ami az IP-címekhez neveket rendel, és fordítva. |
+ | * [[Az SMTP működése]] |
− | Ennél persze többről van szó. |
||
− | |||
− | Fontos fogalom: ''autoritatív szerver''. Két megközelítés: |
||
− | * Saját magát autoritatívnak gondolja, ha rendelkezik egy olyan adatbázissal, amelyben egy zóna (~domain) tartalma megtalálható. |
||
− | * Mások autoritatívnak gondolják, ha a hierarchiában felette álló szerverek hozzá delegálnak egy domainre vonatkozó kérdéseket. |
||
− | |||
− | === A DNS-feloldás menete === |
||
− | |||
− | Legyen mondjuk az a kérdés, mi a <tt>www.bme.hu</tt> IP-címe. Hogy kezdjünk neki? |
||
− | |||
− | Mit jelent egyáltalán az, hogy a <tt>www.bme.hu</tt> IP-címe ez és ez? |
||
− | |||
− | Azt, hogy van valahol egy autoritatív szerver, amelyben a <tt>www.bme.hu</tt> névnek van egy <tt>A</tt> rekordja; a rekord tartalma az IP-cím. |
||
− | |||
− | A feloldás a következőképpen történik: |
||
− | |||
− | # Küldünk egy query-t (kérdést) az egyik root szervernek (amelynek a címét mindenki "tudja"), amelyben megkérdezzük, hogy <tt>A? www.bme.hu</tt>. |
||
− | #* Erre ő, ha tudná a választ, mondhatná, hogy "hohó, ídös fiam, a www.bme.hu A rekordja nem más, mint 152.66.115.35". |
||
− | #* De nem tudja, mert az ő feladata nem az, hogy minden gép címét tudja, hanem az, hogy tudja, kit kell megkérdezni. |
||
− | #* Ezzel együtt fontos tudnunk, hogy akár meg is mondhatná a választ; ez a DNS egyik gyenge pontja. Bővebben később. |
||
− | # A root szerver azt mondja, hogy ő nem tudja, de kérdezzük meg valamelyik .hu szervert, amelyeknek a nevét meg is mondja. |
||
− | #* Emellett megmondja a nevekhez tartozó IP-ket is, ez a ''glue''. |
||
− | #* Ha nem mondaná meg, esetleg bajban lennénk, mert a .hu szerverek neveit ugyan tudjuk, de a nekik küldendő DNS queryt az IP-címükre kell küldeni, amit valahonnan meg kell tudni... |
||
− | # Megkérdezzük valamelyik .hu szervertől, mondjuk az ns.nic.hu-tól (193.239.148.62), hogy <tt>A? www.bme.hu</tt>. |
||
− | #* Erre ő, ha tudná a választ, mondhatná, hogy "hohó, ídös fiam, a www.bme.hu A rekordja nem más, mint 152.66.115.35". |
||
− | #* De nem tudja, mert az ő feladata nem az, hogy minden .hu alatti gép címét tudja, hanem az, hogy tudja, kit kell megkérdezni. |
||
− | #* Ezzel együtt fontos tudnunk, hogy akár meg is mondhatná a választ; ez a DNS egyik gyenge pontja. Bővebben később. |
||
− | # Az ns.nic.hu azt mondja, hogy ő nem tudja, de kérdezzük meg valamelyik bme.hu szervert, amelyeknek a nevét meg is mondja. |
||
− | #* glue mint fent. |
||
− | # Megkérdezzük valamelyik bme.hu szervertől, mondjuk a nic.bme.hu-tól (152.66.115.1), hogy <tt>A? www.bme.hu</tt>. |
||
− | # A nic.bme.hu benyúl az adatbázisába, és azt mondja, hogy "hohó, ídös fiam, a www.bme.hu A rekordja nem más, mint 152.66.115.35, de ezt legfeljebb 4 óráig jegyezd meg!". |
||
− | #* Merthogy minden DNS-rekordnak van egy TTL értéke, ennyi ideig szabad cache-elni. |
||
− | |||
− | Lássuk ugyanezt a parancssorból. |
||
− | |||
− | Előszőr használjuk a hagyományos mosóport, a host(1) programot: |
||
− | |||
− | <pre> |
||
− | chardonnay:~% host -vvv -t a www.bme.hu 198.41.0.4 |
||
− | Trying "www.bme.hu" |
||
− | Using domain server: |
||
− | Name: 198.41.0.4 |
||
− | Address: 198.41.0.4#53 |
||
− | Aliases: |
||
− | |||
− | ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 59973 |
||
− | ;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 6, ADDITIONAL: 6 |
||
− | |||
− | ;; QUESTION SECTION: |
||
− | ;www.bme.hu. IN A |
||
− | |||
− | ;; AUTHORITY SECTION: |
||
− | hu. 172800 IN NS NS.NIC.hu. |
||
− | hu. 172800 IN NS NS2.NIC.FR. |
||
− | hu. 172800 IN NS SUNIC.SUNET.SE. |
||
− | hu. 172800 IN NS NS1.NIC.hu. |
||
− | hu. 172800 IN NS NS2.NIC.hu. |
||
− | hu. 172800 IN NS NS3.NIC.hu. |
||
− | |||
− | ;; ADDITIONAL SECTION: |
||
− | NS.NIC.hu. 172800 IN A 193.239.148.62 |
||
− | NS2.NIC.FR. 172800 IN A 192.93.0.4 |
||
− | SUNIC.SUNET.SE. 172800 IN A 192.36.125.2 |
||
− | NS1.NIC.hu. 172800 IN A 193.239.149.3 |
||
− | NS2.NIC.hu. 172800 IN A 193.6.16.1 |
||
− | NS3.NIC.hu. 172800 IN A 195.70.35.250 |
||
− | |||
− | Received 251 bytes from 198.41.0.4#53 in 114 ms |
||
− | </pre> |
||
− | |||
− | Látható, hogy megtudtuk, merre kell tovább érdeklődnünk, de magát a választ nem. |
||
− | Nézzük tovább: |
||
− | |||
− | <pre> |
||
− | chardonnay:~% host -vvv -t a www.bme.hu 193.239.148.62 |
||
− | Trying "www.bme.hu" |
||
− | Using domain server: |
||
− | Name: 193.239.148.62 |
||
− | Address: 193.239.148.62#53 |
||
− | Aliases: |
||
− | |||
− | ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 50701 |
||
− | ;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 3, ADDITIONAL: 3 |
||
− | |||
− | ;; QUESTION SECTION: |
||
− | ;www.bme.hu. IN A |
||
− | |||
− | ;; AUTHORITY SECTION: |
||
− | bme.hu. 86400 IN NS ns.bme.hu. |
||
− | bme.hu. 86400 IN NS nic.bme.hu. |
||
− | bme.hu. 86400 IN NS ns2.pantel.net. |
||
− | |||
− | ;; ADDITIONAL SECTION: |
||
− | ns.bme.hu. 86400 IN AAAA 2001:738:2001:8001::2 |
||
− | nic.bme.hu. 86400 IN A 152.66.115.1 |
||
− | nic.bme.hu. 86400 IN AAAA 2001:738:2001:2001::2 |
||
− | |||
− | Received 163 bytes from 193.239.148.62#53 in 2 ms |
||
− | </pre> |
||
− | |||
− | Közeledünk, közeledünk. Végül: |
||
− | |||
− | <pre> |
||
− | chardonnay:~# host -vvv -t a www.bme.hu 152.66.115.1 |
||
− | Trying "www.bme.hu" |
||
− | Using domain server: |
||
− | Name: 152.66.115.1 |
||
− | Address: 152.66.115.1#53 |
||
− | Aliases: |
||
− | |||
− | ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 13192 |
||
− | ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 3, ADDITIONAL: 5 |
||
− | |||
− | ;; QUESTION SECTION: |
||
− | ;www.bme.hu. IN A |
||
− | |||
− | ;; ANSWER SECTION: |
||
− | www.bme.hu. 14400 IN A 152.66.115.35 |
||
− | |||
− | ;; AUTHORITY SECTION: |
||
− | bme.hu. 14400 IN NS ns2.pantel.net. |
||
− | bme.hu. 14400 IN NS ns.bme.hu. |
||
− | bme.hu. 14400 IN NS nic.bme.hu. |
||
− | |||
− | ;; ADDITIONAL SECTION: |
||
− | ns.bme.hu. 14400 IN A 152.66.116.1 |
||
− | ns.bme.hu. 14400 IN AAAA 2001:738:2001:8001::2 |
||
− | nic.bme.hu. 14400 IN A 152.66.115.1 |
||
− | nic.bme.hu. 14400 IN AAAA 2001:738:2001:2001::2 |
||
− | ns2.pantel.net. 35857 IN A 212.24.160.1 |
||
− | |||
− | Received 211 bytes from 152.66.115.1#53 in 1 ms |
||
− | </pre> |
||
− | |||
− | Most próbáljuk meg ugyanezt egy kevésbé ismert eszközzel, a dnsq nevűvel (a djbdns csomagban van): |
||
− | |||
− | <pre> |
||
− | chardonnay:~% dnsq a www.bme.hu 198.41.0.4 |
||
− | 1 www.bme.hu: |
||
− | 251 bytes, 1+0+6+6 records, response, noerror |
||
− | query: 1 www.bme.hu |
||
− | authority: hu 172800 NS ns.nic.hu |
||
− | authority: hu 172800 NS ns2.nic.fr |
||
− | authority: hu 172800 NS sunic.sunet.se |
||
− | authority: hu 172800 NS ns1.nic.hu |
||
− | authority: hu 172800 NS ns2.nic.hu |
||
− | authority: hu 172800 NS ns3.nic.hu |
||
− | additional: ns.nic.hu 172800 A 193.239.148.62 |
||
− | additional: ns2.nic.fr 172800 A 192.93.0.4 |
||
− | additional: sunic.sunet.se 172800 A 192.36.125.2 |
||
− | additional: ns1.nic.hu 172800 A 193.239.149.3 |
||
− | additional: ns2.nic.hu 172800 A 193.6.16.1 |
||
− | additional: ns3.nic.hu 172800 A 195.70.35.250 |
||
− | |||
− | chardonnay:~% dnsq a www.bme.hu 193.239.148.62 |
||
− | 1 www.bme.hu: |
||
− | 163 bytes, 1+0+3+3 records, response, noerror |
||
− | query: 1 www.bme.hu |
||
− | authority: bme.hu 86400 NS ns.bme.hu |
||
− | authority: bme.hu 86400 NS nic.bme.hu |
||
− | authority: bme.hu 86400 NS ns2.pantel.net |
||
− | additional: ns.bme.hu 86400 28 \040\001\0078\040\001\200\001\000\000\000\000\000\000\000\002 |
||
− | additional: nic.bme.hu 86400 A 152.66.115.1 |
||
− | additional: nic.bme.hu 86400 28 \040\001\0078\040\001\040\001\000\000\000\000\000\000\000\002 |
||
− | |||
− | chardonnay:~% dnsq a www.bme.hu 152.66.115.1 |
||
− | 1 www.bme.hu: |
||
− | 211 bytes, 1+1+3+5 records, response, authoritative, weird ra, noerror |
||
− | query: 1 www.bme.hu |
||
− | answer: www.bme.hu 14400 A 152.66.115.35 |
||
− | authority: bme.hu 14400 NS ns2.pantel.net |
||
− | authority: bme.hu 14400 NS ns.bme.hu |
||
− | authority: bme.hu 14400 NS nic.bme.hu |
||
− | additional: ns.bme.hu 14400 A 152.66.116.1 |
||
− | additional: ns.bme.hu 14400 28 \040\001\0078\040\001\200\001\000\000\000\000\000\000\000\002 |
||
− | additional: nic.bme.hu 14400 A 152.66.115.1 |
||
− | additional: nic.bme.hu 14400 28 \040\001\0078\040\001\040\001\000\000\000\000\000\000\000\002 |
||
− | additional: ns2.pantel.net 35704 A 212.24.160.1 |
||
− | </pre> |
||
− | |||
− | Talán látszik, hogy ennek az outputja scriptből könnyebben feldolgozható. |
A lap jelenlegi, 2006. szeptember 15., 00:53-kori változata
Nézzük meg röviden, mit muszáj mindenképpen tudnunk az Internet alapvető protokolljairól.