Föreläsning 9. Transportskiktet. User Datagram Protocol (1/2) Introduktion till modern telekommunikation 15.11.2004. Gunnar Karlsson, Bengt Sahlin 1



Relevanta dokument
Föreläsning 9 Transportprotokoll UDP TCP

Föreläsning 6 Mål. Mänskor och IP adresser. Domain Name System (1/3) Numeriska adresser används i Internet

Föreläsning 5. Vägval. Vägval: önskvärda egenskaper. Mål:

Datakommunika,on på Internet

Grundläggande datavetenskap, 4p

Mattias Wiggberg 1. Orientera på Internet. IP-adress. IP-adresserna räcker inte... Mer om IP-adresser

Datakommunika,on på Internet

Objektorienterad Programkonstruktion. Föreläsning 10 7 dec 2015

TCP/IP och Internetadressering

Nätverk och Java, grunder Föreläsning 0: 0: Introduktion till Internet

IT för personligt arbete F2

Grundläggande nätverksteknik. F2: Kapitel 2 och 3

DNS. Linuxadministration I 1DV417

Internet. Internet hur kom det till? Internets framväxt. Ett hierarkiskt uppbyggt telenät Kretskopplat/circuit switching

Datasäkerhet och integritet

DIG IN TO Nätverksteknologier

Webbteknik II. Föreläsning 4. Watching the river flow. John Häggerud, 2011

WWW. Exempel på klientsidan. Överföring av en html-fil. Snyggare variant. Verkligt format. Meddelandeformat för begäran HTTP

Olika slags datornätverk. Föreläsning 5 Internet ARPANET, Internet började med ARPANET

Nätverk grunder Föreläsning 1: 1: Introduktion till Internet

DIG IN TO Nätverksteknologier

Hur Internet fungerar?

Protokoll i flera skikt Fragmentering Vägval DNS. Jens A Andersson

KomSys Hela kursen på en föreläsning ;-) Jens A Andersson

Grundläggande nätverksteknik. F3: Kapitel 4 och 5

Kihl & Andersson: Kapitel 6 (+ introduktioner från kap 7, men följ slides) Stallings: 9.5, 14.1, 14.2, Introduktion i 14.3, 16.1

Transportskiktets uppgifter. Transportskiktet UDP. UDP-kapning (DNS) DNS-sökning, Ethernet-ram <#>

Karlstads universitet Institutionen för Informationsteknologi Datavetenskap

5 Internet, TCP/IP och Tillämpningar

Webbservrar, severskript & webbproduktion

Kapitel 6, 7, o 8: IP DNS Vägval Från användare till användare Jens A Andersson (Maria Kihl) Att skicka data över flera länkar.

Administration: Grundläggande internetprogrammering

Transportskiktet. Sidorna , i boken

Tentamen i Datorkommunikation den 10 mars 2014

Internetprotokollen. Maria Kihl

IP Från användare till användare Vägval DNS Jens A Andersson (Maria Kihl) Att skicka data över flera länkar. Nätprotokoll

Webbteknik II. Föreläsning 5. Restless farewell. John Häggerud, 2011

Vad är DNS? DNS. Vad är DNS? (forts.) Vad är DNS utåt? Vad är DNS internt? Vad är DNS internt? (forts.)

Kapitel 6, 7, o 8: IP DNS. Från användare till användare. Jens A Andersson

Webbteknik. Innehåll. Historisk återblick Teknisk beskrivning Märkspråk Standardisering Trender. En kort introduktion

Föreläsning 5: ARP (hur hitta MAC-adress) Från applikation till applikation

DNS laboration report Wilhelm Käll YYYY-MM-DD (the date the report was finished)

Christer Scheja TAC AB

Domain Name System DNS

Protokoll i flera skikt Fragmentering Vägval DNS. Jens A Andersson

DNS-test. Patrik Fältström. Ulf Vedenbrant.

Tilläggs dokumentation 4069 Dns

Kihl & Andersson: , Stallings: , , DHCP beskrivs även bra på

Föreläsning 5: ARP (hur hitta MAC-adress) IPv4, IPv6 Transportprotokoll (TCP) Jens A Andersson

Tips: Titta på relevanta genomgångar på webbplatsen

TNMK30 - Elektronisk publicering

Övningar - Datorkommunikation

Internetprotokollen. Maria Kihl

Mattias Wiggberg 1. Datorkommunikation, grundbegrepp. Skiktade kommunikationsprotokoll

Föreläsning 1. På klientsidan... Allmänt. På serversidan... Och dessutom... DD1389 Internetprogrammering 6 hp

Föreläsning 5: Stora datanät Från användare till användare ARP

Stora datanät. Maria Kihl

Föreläsning 4. Föreläsning 4. Från länk till nät

DNS. Måns Nilsson

Följande signaler har kodats med Manchester. Hur ser bitströmmen ut om den inleds med en 0:a?

Föreläsning 8. Historia. Grundprinciper. Introduktion ARPANET

Vad är Internet? - Flera olika slags nät - Vill kunna kommunicera över dessa nät - Vad gör man?

5 Internet, TCP/IP och Applikationer

Från användare till användare ARP. (Maria Kihl)

Internetdagarna NIC-SE Network Information Centre Sweden AB

Voice over IP / SIP. Switching Costs SIP. Motivation for VoIP. Internet Telephony as PBX replacement. Internet Telephony Modes.

DNSSec. Garanterar ett säkert internet

TCP och UDP-nivån. Portnummer

Hur hänger det ihop? För att kunna kommunicera krävs ett protokoll tcp/ip, http, ftp För att veta var man skall skicka

Instuderingsfrågor ETS052 Datorkommuniktion

Modul 6 Webbsäkerhet

1 PROTOKOLL. Nätverk. Agenda. Jonas Sjöström

DNSSEC-grunder. Rickard Bellgrim [ ]

ITK:P2 F1. Hemsidor med HTML HTML. FTP, HTTP, HTML, XML och XHTML

Statistik från webbplatser

Kihl & Andersson: , 4.5 Stallings: , , (7.3)

Avancerad DNS - Laborationer

Att bygga VPN. Agenda. Kenneth Löfstrand, IP-Solutions AB. Olika VPN scenarios. IPsec LAN - LAN. IPsec host - host SSH

Idag. Webben och HTML. Webbens funk3on. URL och websidor. Moment F om webben och HTML startar nu

IP-baserade program. Telnet

Denna genomgång behandlar följande: IP (v4) Nätmasken ARP Adresstilldelning och DHCP

Webbserver och HTML-sidor i E1000 KI

NSL Manager. Handbok för nätverksadministratörer

Skärmbilden i Netscape Navigator

Stora datanät Från användare till användare. Jens A Andersson

RUTINBESKRIVNING FÖR INSTALLATION AV KAMERA

Hur integrera Active Directory och DNS? Rolf Åberg, Simplex System

Rotadministration och serverroller

5. Internet, TCP/IP tillämpningar och säkerhet

Swedbank Mobile Loadtesting. LoadRunner Mobile App protocol

DIG IN TO Nätverksteknologier

Unix-Säkerhet. Övningsprov. Frågorna skall besvaras på ett sådant sätt att en insatt kollega skall känna sig informerad.

Datakursen PRO Veberöd våren 2011 internet

IP-adresser, DNS och BIND

DNSSEC DET NÄRMAR SIG...

Hyperlänkar. I HTML skapar man en hyperlänk med taggen <a> </a>, som är en förkortning av ordet ankare, på (engelska anchor).

Karlstads universitet Institutionen för Informationsteknologi Datavetenskap

Snabbguide webbhotellstjänster v 1.0

Signalering. Vad är signalering

5. Internet, TCP/IP och Applikationer

Transkript:

Föreläsning 9 Mål Förstå grundfunktionaliteten i TCP och UDP Först skillnaderna mellan TCP och UDP Förstå betydelsen av DNS Förstå grundstrukturen i DNS Förse en kort översikt av DHCP Förse en kort översikt av tillämpningar 15.11.2004 Gunnar Karlsson, Bengt Sahlin 1 Transportskiktet Transportprotokoll otillförlitlig överföring: User Datagram Protocol (UDP) tillförlitlig överföring: Transmission Control Protocol (TCP) Tillämpningar inom en värddator nås genom portar möjliggör kommunikation mellan processer IP adress + portnummer identifierar en socket reserverade portar (används av servrar) 1-1023 exempel SSH 22 DNS 53 HTTP 80 tillfälliga portar (ephemeral ports) portar som används tillfälligt under en session 15.11.2004 Gunnar Karlsson, Bengt Sahlin 2 User Datagram Protocol (1/2) Otillförlitlig överföring inga bekräftelser, UDP meddelanden kan förloras förbindelsefri inga sekvensnummer UDP meddelanden kan anlända i oordning ingen flödeskontroll enkelt protokoll Tillämpningar som använder UDP måste ta dessa egenskaper i beaktande 15.11.2004 Gunnar Karlsson, Bengt Sahlin 3 Gunnar Karlsson, Bengt Sahlin 1

User Datagram Protocol (2/2) Enkelt huvud portarna längd: inkluderar UDP huvudet och nyttolasten kontrollsumman inte obligatorisk räknas över UDP pseudo-huvudet (bl a IP adresserna inkluderade), UDP huvudet och nyttolasten 0 16 31 Sändarport Längd Mottagarport Kontrollsumma 15.11.2004 Gunnar Karlsson, Bengt Sahlin 4 Transmission Control Protocol (1/2) Tillförlitlig överföring positiva bekräftelser och omsändning används paket bekräftas med sekvensnummer, anger numret på nästa oktett av data som förväntas (positiv bekräftelse) om ett segment av data inte bekräftas inom en tidsfrist så skickas det på nytt tidsfristen kan ändra dynamiskt via uppskattningar av rundresetiden sändfönster används för att få bättre genomströmning sändfönstrets storlek kan minskas vid stockning TCP delar upp tillämpningens data i segment 15.11.2004 Gunnar Karlsson, Bengt Sahlin 5 Transmission Control Protocol (2/2) förbindelse etableras mellan sändare och mottagare förbindelsen identifieras av dess ändpunkter genom (värddator adress, port nummer) Till exempel (128.3.4.2, 3444) - (45.234.1.90, 5000) Ett socketpar TCP erbjuder flödeskontroll mellan ändpunkterna sköts genom att ändra fönsterstorleken 15.11.2004 Gunnar Karlsson, Bengt Sahlin 6 Gunnar Karlsson, Bengt Sahlin 2

TCP huvudet HL Sändarport Reserverat Kodbitar Kontrollsumma Tillval Sekvensnummer Bekräftelse Mottagarport Fönsterstorlek Brådskande Utfyllnad 15.11.2004 Gunnar Karlsson, Bengt Sahlin 7 TCP huvudets fält (1/2) portar Sekvensnummer: sekvensnummer för den första oktetten i segmentet Bekräftelse: sekvensnummer för nästa oktett som förväntas HL: Huvudlängd Kodbitar (flaggor) URG: brådskande fältet bör beaktas ACK: paketet bekräftar mottagen information PSH: datan borde skickas direkt till mottagaren. 15.11.2004 Gunnar Karlsson, Bengt Sahlin 8 TCP huvudets fält (2/2) RST: reset SYN: indikerar synkronisering (sekvensnummer bör synkroniseras) FIN: avslutar förbindelsen Fönsterstorlek: anges i antal oktetter som mottagaren är villig att acceptera Kontrollsumma: samma princip som i UDP Brådskande: data kan betecknas som brådskande Tillval: bl. a. en option för att indikera maximal segmentstorlek 15.11.2004 Gunnar Karlsson, Bengt Sahlin 9 Gunnar Karlsson, Bengt Sahlin 3

TCP och UDP UDP är ett enkelt protokoll UDP lämpar sig för överföring av små mängder data TCP kräver synkroniseringsmeddelanden (SYN) i början och meddelanden om att kommunikationen avslutas (FIN) Det är viktigt att känna till hur UDP och TCP när man bygger en tillämpning val av transportprotokoll bör baseras på trafikkarakteristiken för tillämpningen 15.11.2004 Gunnar Karlsson, Bengt Sahlin 10 Mänskor och IP adresser Numeriska adresser används i Internet exempel: 10.0.0.1 (IPv4), fe80::a0a1:46ff:fe06:61ee (IPv6) Mänskor minns namn bättre än nummersekvenser I Internet har namn använts ända från början 15.11.2004 Gunnar Karlsson, Bengt Sahlin 11 Domain Name System (1/3) Historia: i början hade man alla DNS data i en fil: hosts.txt blev opraktiskt när Internet växte Lösningen var DNS Huvuduppgifter: mapping mellan namn och IP adress, och vice versa kontrollerar e-postöverföring domännamn: absolut: Fully Qualified Domain Name (FQDN) slutar alltid med beteckningen för rotnoden (.) t. ex. www.hut.fi. Relativt t. ex. www eller www.hut 15.11.2004 Gunnar Karlsson, Bengt Sahlin 12 Gunnar Karlsson, Bengt Sahlin 4

Domain Name System (2/3) DNS databasen är: global globalt unika namn och adresser distribuerad ingen nod har fullständig information en organisation kan sköta sin egen lokala DNS data hierarkisk organiserat som ett träd med en rotnod, som Unix filsystem domäner och zoner 15.11.2004 Gunnar Karlsson, Bengt Sahlin 13 Domain Name System (3/3) Noderna kallas för domäner t. ex. hut.fi toppnivådomäner: organisatoriska arpa, com, edu, gov, int, mil, net, org nya:.name (registrations by individuals),.biz (for business),.info (unrestricted use) geografiska fi, se, uk, us, nu, go, etc... 15.11.2004 Gunnar Karlsson, Bengt Sahlin 14 Struktur Global hierarkisk distribuerad Rot nod, rot namn servrar (13) Toppnivådomäner (com, edu, fi, se, uk) Lägre nivå domäner (hut.fi) Löv (www.hut.fi -> 130.233.220.31) 15.11.2004 Gunnar Karlsson, Bengt Sahlin 15 Gunnar Karlsson, Bengt Sahlin 5

DNS begrepp (1/3) namnserver master (primary, master) den server där datan administreras slav (secondary, slave) har auktoritativ data om en viss zon laddar ny data från primären med jämna mellanrum medelst zonöverföring (zone transfer) Buffertminne (cache) en namnserver kan spara DNS data den fått via förfrågningar för en viss tid BIND (Berkeley Internet Name Daemon) mest använda namnbetjänten fritt distribuerbar mjukvara 15.11.2004 Gunnar Karlsson, Bengt Sahlin 16 DNS begrepp (2/3) Resolver: klienten i DNS kan göra namnförfrågningar t. ex. nslookup eller dig Resolution processen bestående av en eller flera förfrågningar för att få en viss information namnservrar måste känna till de servrar som är ansvariga för rotnoden: rotnamnserver (root name server) 15.11.2004 Gunnar Karlsson, Bengt Sahlin 17 DNS begrepp (3/3) delegering: ansvaret för en underdomän ges åt en ny namnbetjänt in-addr.arpa: den del av trädet som innehåller adress-till-namn information 15.11.2004 Gunnar Karlsson, Bengt Sahlin 18 Gunnar Karlsson, Bengt Sahlin 6

8. IP address Introduktion till modern telekommunikation 15.11.2004 Resolution 2. www.cnn.com? Root name server Hut namnserver 3. referral (.com) 4. www.cnn.com? 1. www.cnn.com? 5. referral (cnn.com) 6. www.cnn.com? 7. IP address.com name server machine.hut.fi cnn.com name server 15.11.2004 Gunnar Karlsson, Bengt Sahlin 19 Domain Name System (6/6) Informationen måste sparas i ett visst fastlagt format RR (resource record) A: namn till adress PTR: adress till namn NS: information om namnservers för en viss zon CNAME: alias MX: mail exchanger, information om vilka maskiner emottar elpost för en maskin eller en zon SOA: Start Of Authority, varje zon har en SOA 15.11.2004 Gunnar Karlsson, Bengt Sahlin 20 Exempel telkom.example. IN SOA ns.telkom.example. bos.tcm.hut.fi. ( 6 28800 7200 604800 86400 ) IN NS ns.telkom.example. IN MX 10 mail.telkom.example $ORIGIN telkom.example. localhost IN A 127.0.0.1 ns IN A 10.10.10.1 mail IN A 10.10.10.2 www IN A 10.10.10.3 IN TXT "Our web server" ftp IN CNAME mail.telkom.example 15.11.2004 Gunnar Karlsson, Bengt Sahlin 21 Gunnar Karlsson, Bengt Sahlin 7

Problem i DNS Komplicerat protokoll DNS administration dåligt dokumenterat Master file format: formatet som används för att spara DNS information känsligt för felkonfigurationer: fatalt att t. ex. glömma bort en punkt i ett absolut domännamn En undersökning av Men and Mice November 2000 : 80 % av zonerna innehåller felaktig information som kan leda till problem Säkerhet Crackers samlar ofta DNS information som förberedelse för attacker DNS implementationerna har haft många svagheter 15.11.2004 Gunnar Karlsson, Bengt Sahlin 22 Nya krav IPv6 stöd DNS behöver datasäkerhetsmekanismer många attacker utnyttjar svagheter i DNS DNS Security Extensions (DNSSEC) dynamisk uppdatering dynamic DNS update, dyndns Internationell DNS? 15.11.2004 Gunnar Karlsson, Bengt Sahlin 23 Dynamic Host Configuration Protocol Mål att underlätta konfigurationsprocessen när en ny maskin kopplas till nätet nätkonfigurationen sker automatiskt den nya som maskinen kopplas till nätet kör en DHCP klient en DHCP server i nätet tilldelar maskinen en address för en viss tid (lease) dyndns gör det möjligt för en DHCP server att konfigurera DNS automatiskt då en ny maskin kopplas till nätet 15.11.2004 Gunnar Karlsson, Bengt Sahlin 24 Gunnar Karlsson, Bengt Sahlin 8

Tillämpningar (1/2) Telnet, Rlogin, rsh för fjärrkontakt till en annan maskin ssh borde användas i stället för dessa rcp kopiering till en annan maskin scp bör användas för säker kopiering File transfer protocol (FTP) Filöverföring Scp eller sftp bör användas för säker filöverföring 15.11.2004 Gunnar Karlsson, Bengt Sahlin 25 Tillämpningar (2/2) E-post Simple Mail Transfer Protocol (SMTP, RFC822) MIME (stöder teckenuppsättningen ISO Latin-1) sendmail: program som sköter e-postöverföring invecklat, har innehållit många säkerhetshål PGP (eller GPG) för säker e-postöverföring Simple Network Management Protocol (SNMP) används för nätverksadministration nyare versioner har datasäkerhetsmekanismer World-wide web (WWW) HTTP (HyperText Transfer Protocol) används 15.11.2004 Gunnar Karlsson, Bengt Sahlin 26 WWW (1/3) klient-server-modellen överföringsprotokoll HTTP olika representationer av text: HTML, XML Standard Generalized Markup Language (SGML) metaspråk internationell standard annoterad text för att göra det möjligt att bestämma hur en test skall se ut (t. ex. då texten printas) deskriptiv annotation dokumenttyper systemoberoende 15.11.2004 Gunnar Karlsson, Bengt Sahlin 27 Gunnar Karlsson, Bengt Sahlin 9

WWW (2/3) HyperText Markup Language (HTML) ett metaspråk för att göra hypertextdokument som är portabla från en platform till annan följer SGML-standarden (en tillämpning av SGML), dvs syntaxen för HTML definieras med SGML och en DTD (document type definition) <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"> 15.11.2004 Gunnar Karlsson, Bengt Sahlin 28 WWW (3/3) exstensible Markup Language (XML) rekommendation för att göra WWW till ett mångsidigare redskap erbjuder mer flexibilitet: möjligt att göra saker som inte kan göras eller är svåra att göra med HTMLHTML erbjuder en definierad, fast mängd annotationssymboler (tags) XML ger möjlighet att definiera nya symboler (t. ex. <PHONENUM>) och beroendeförhållanden mellan olika symboler 15.11.2004 Gunnar Karlsson, Bengt Sahlin 29 Hypertext Transfer Protocol (1/3) protokoll för kommunikation mellan en WWW klient (browser) och en WWW server port 80 används vanligen enkelt protokoll två typer av meddelanden: begäran (request) och svar (response) URI (Uniform Resource Identifier) URL (Uniform Resource Locator) URN (Universal Resource Names) 15.11.2004 Gunnar Karlsson, Bengt Sahlin 30 Gunnar Karlsson, Bengt Sahlin 10

HTTP (2/3) begäran, format: request-line: Method request-uri HTTP-version headers <blank line> body GET ger som svar informationen som identifieras i URI i begäran HEAD ger endats huvudet som svar POST används för att posta e-post, nyheter eller för att sända informationen i en ifyll blankett 15.11.2004 Gunnar Karlsson, Bengt Sahlin 31 HTTP (3/3) svar, format status-line: HTTP-version response-code response-phrase headers <blank line> body svarkoder Framgångsrikt resultat, redirect, klientfel, serverfel 200: OK, request succeeded 301: requested resource has been assigned a new permanent URL 404: Not found 503: Service temporarily unavailable HTTP proxy CGI (Common Gateway Inteface) www-sidor kan genereras medelst kod skriptar kan byggas för att behandla information (POST) 15.11.2004 Gunnar Karlsson, Bengt Sahlin 32 Exempel (1/3) morphine ~ 35 % telnet www.hut.fi 80 Trying 130.233.220.31... Connected to www.hut.fi. Escape character is '^]'. HEAD /index.html HTTP/1.1 Host: www.hut.fi HTTP/1.1 200 OK Date: Wed, 24 Nov 1999 08:46:27 GMT Server: Apache/1.3.9 (Unix) Last-Modified: Tue, 23 Nov 1999 15:24:03 GMT ETag: "17b4f-148f-383ab193" Accept-Ranges: bytes Content-Length: 5263 Content-Type: text/html;charset=iso-8859-1 15.11.2004 Gunnar Karlsson, Bengt Sahlin 33 Gunnar Karlsson, Bengt Sahlin 11

Exempel (2/3) morphine ~ 36 % telnet www.hut.fi 80 Trying 130.233.220.31... Connected to www.hut.fi. Escape character is '^]'. GET /index.html HTTP/1.1 Host: www.hut.fi HTTP/1.1 200 OK Date: Wed, 24 Nov 1999 08:48:24 GMT Server: Apache/1.3.9 (Unix) Last-Modified: Tue, 23 Nov 1999 15:24:03 GMT ETag: "17b4f-148f-383ab193" Accept-Ranges: bytes Content-Length: 5263 Content-Type: text/html;charset=iso-8859-1 15.11.2004 Gunnar Karlsson, Bengt Sahlin 34 Exempel (3/3) <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"> <html> <head> <title>teknillinen korkeakoulu</title> <link rev="made" href="mailto:webmaster@hut.fi"> <!-- (v4.6 13.2.1998, v4.6.1 23.11.1998, v4.6.2 27.1.1999) v4.7 26.4.1999 --> </head>... <tr><td colspan=2> </td><td align=left colspan=3><small>sivusta vastaa <a href="mailto:www-ryhma@hut.fi">www-ryhma@hut.fi</a>. Päivitetty 8.10.1999.</small></td></tr> </table> </center> </body> </html> Connection closed by foreign host. morphine ~ 37 % 15.11.2004 Gunnar Karlsson, Bengt Sahlin 35 Framtid Ny version av HTTP-protokollet (1.1) innehåller nya primitiv PUT DELETE TRACE CONNECT OPTIONS interaktivitet i WWW javascript Java ActiveX trafikkarakteristiken ett aktivt forskningsområde 15.11.2004 Gunnar Karlsson, Bengt Sahlin 36 Gunnar Karlsson, Bengt Sahlin 12