Föreläsning 9 Transportprotokoll UDP TCP Domain Name System (DNS) DHCP Tillämpningar 2002-11-06 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 2002-11-06 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 2002-11-06 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 2002-11-06 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 2002-11-06 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 2002-11-06 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 2002-11-06 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. 2002-11-06 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 2002-11-06 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 2002-11-06 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 2002-11-06 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 2002-11-06 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 2002-11-06 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... 2002-11-06 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) 2002-11-06 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 2002-11-06 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) 2002-11-06 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 2002-11-06 Gunnar Karlsson, Bengt Sahlin 18 Gunnar Karlsson, Bengt Sahlin 6
8. IP address Introduktion till modern telekommunikation 2002-11-06 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?.com name server 7. IP address machine.hut.fi cnn.com name server 2002-11-06 Gunnar Karlsson, Bengt Sahlin 19 Zon versus domän domän (namn) -.fi, hut.fi, www.hut.fi) zon en kontinuerling del a domänträdet, för vilken en namnserver har komplett information Zon hut.fi Domain hut.fi Zon tml.hut.fi 2002-11-06 Gunnar Karlsson, Bengt Sahlin 20 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 2002-11-06 Gunnar Karlsson, Bengt Sahlin 21 Gunnar Karlsson, Bengt Sahlin 7
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 2002-11-06 Gunnar Karlsson, Bengt Sahlin 22 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 2002-11-06 Gunnar Karlsson, Bengt Sahlin 23 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? 2002-11-06 Gunnar Karlsson, Bengt Sahlin 24 Gunnar Karlsson, Bengt Sahlin 8
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 2002-11-06 Gunnar Karlsson, Bengt Sahlin 25 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 2002-11-06 Gunnar Karlsson, Bengt Sahlin 26 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 2002-11-06 Gunnar Karlsson, Bengt Sahlin 27 Gunnar Karlsson, Bengt Sahlin 9