Datanet Obligatorisk opgave 3: IP og ICMP. René Hardi Hansen Michael Falcke Nilou Anders Bjerg Pedersen Hold 1 26. september 2007



Relaterede dokumenter
Datanet Obligatorisk opgave 2: TCP. René Hansen Michael Nilou Anders Bjerg Pedersen Hold september 2007

Internet Protokollen. - IP er arbejdshesten på næsten alle netværk! Netteknik 1

Internet Protocol (IP)

TCP & UDP. - de transportansvarlige på lag 4. Netteknik 1

ARP og ICMP. - service protokoller, som vi ikke kan undvære! Netteknik 1

IP version 6. Kapitel 3: IPv6 in Depth Baseret på bogen: Cisco Self-study: Implementing Cisco IPv6 Networks Henrik Thomsen V1.0.

IPv6 sameksistens med IPv4. af Laurent Flindt Muller & Jakob Pedersen

Ethereal Intro && Ethereal HTTP. René Hansen Anders Bjerg Pedersen Michael Nilou Hold 1 September 12, 2007

Netkit Dokumentation

IP version 6. Kapitel 2: IPv6 adresser. Baseret på bogen: Cisco Self-study: Implementing Cisco IPv6 Networks Henrik Thomsen V1.0.

QoS Design overblik. QoS på L3

QoS. - prioritering af pakketransporten! Netteknik 1

Network. Grundlæggende netværk. Region Syd Grundlæggende netværk

Oplæg om IPv6 den 4/ v. Jacob Jensen og Mathias Hollensen

Computer netværk og TCP/IP protokoller. dcomnet 1

dmasark Aflevering - Uge 50

Notater til Computernetværk og Distribuerede Systemer Del 2. Vidar Jon Bauge 2006

Netværksmålinger. - en introduktion! Netteknik. TCP - IP - Ethernet

Netværksmålinger. - en introduktion! Netteknik

SIP. Session Initiation Protocol. TDC IP telefoni Scale

QoS Design overblik. Agenda. QoS på L3. Trafiktyper. QoS principper. Voice Best-Effort. Klassifikation og mærkning Policing Queing

NETVÆRKSKURSUS Oktober November jmt

IP version 6. Kapitel 1:Introduktion til IPv6. Ikke flere IP adresser?

Net Videre TCP/IP repetition Øvelse

Hæfte til kurset Netværk Videregående 1

Computer netværk og TCP/IP protokoller. dcomnet 1

H.323. Protocol suite. En ITU standard til VoIP

BGP Peers Opbygning af BGP Peers/Neighbors

Netværkslaget Rutning og sammenkobling

Workshops om netværk

SIP. Session Initiation Protocol TDC IP telefoni Scale. SIP design mål

QoS Design overblik Kapitel 2

Network. Grundlæggende netværk. Region Syd Grundlæggende netværk

PNI/GRN - 1. kursusgang

Netteknik 1. AMU kursus nr Netværk grundlæggende ( AMU Netteknik 1 ) - anvendelse af teknologier og begreber. Formålet med kursus

Opbygning af firewall regler. Overvejelser med mere

TCP/IP stakken. TCP/IP Protokollen består af 5 lag:

Basal TCP/IP fejlfinding

IT Support Guide. Opsætning af netværksinformationer i printere

Netteknik 1. - anvendelse af teknologier og begreber. AMU kursus nr

VoIP. Voice over IP & IP-Telefoni. Lars Christensen & René Truelsen, Dec. 2004

SNMP Simple Network Management Protocol. Henrik Thomsen/EUC MIDT 2007

Undgå DNS Amplification attacks

Spørgsmål/svar til Sip2-profil

Bilag til OLA med RMnet

Vejledning til anvendelse af MeMo og SMTP. Næste generation Digital Post Maj 2018, version 0.9

IPv6 Hvor er vi i dag? Erik Løth el@nworks.dk

Netværksovervågning og -administration

Netteknik 1. AMU kursus nr Netteknik 1 (AMU 44947) - anvendelse af teknologier og begreber. Formålet med kursus

IPT Netværk. IPT netværks protokoller. TDC IP telefoni Scale

Network management. - hvad sker der på mit netværk?! Netteknik 1

VLAN, Trunk & VTP. VLAN: Virtual Local Area Network

Distributed Denial-of-Service (DDoS) Attack - og hvordan man forsvarer sig imod det. Bo Lindhøj Artavazd Hakhverdyan May 21, 2012

Introduktion til Quality of Service

Hvad er VoIP og fordelene ved det?

Vejledning i opsætning af MQ

IT Support Guide. Installation af netværksprinter (direkte IP print)

Quality of Service. - en introduktion! IP telefoni kursus

Internettet Netværk. Hvad er netværk?

Firewalls vs. Tunnels & Covert Channels

Bilag C. Tekniske specifikationer

Justitsministeriet Civil- og Politiafdelingen

IPConfig Event Viewer Ping NSLookUp. Netstat NBTstat (LM)Host file WINIPCFG. Route Tracert Arp WNTIPCFG

Forår Firewalls

Netværksprojekt. Projektdeltagere: Henrik Hansen. Kristjan Nielsen. Martin Gertsen. Ognjen Grgic. Rasmus Dal

VLAN. VLAN og Trunks. Region Syd Grundlæggende netværk

MPLS konfiguration. Scenarie hold 1 & 2

Routeren. - og lag 3 switchen! Netteknik 1

VLAN - Virtual Local Area Network

Dynamisk Routing OSPF. Rasmus Elmholt V1.0

Håndbog Til CPR services. Bilag 5 Logon og generel brug af CPR-services; programmeringsvejledning

Introduktion til BGP 4 Border Gateway Protocol version 4

Kaminsky DNS exploit

Rådgivning når viden gør en forskel

M A D S L A R S E N, A S G E R B A L L E G A A R D & J O N A S K R O N B O R G R O S K I L D E T E K N I S K E G Y M N A S I U M.

Navn: Søren Guldbrand Pedersen Klasse: 2i Fag: Applikationer Opgave: Eksamens-spørgsmål Lære: Kim Rundblad Side 1 af 9 Dato:

Simpel Network Management Protocol SNMP

Bilag 1. Tekniske Specifikationer

Cisco ASA Vejledning. Opsætning af DMZ-zone

Network Services Location Manager. Håndbog for netværksadministratorer

Indholdsfortegnelse: Firewall Erhvervsakademi Midtjylland

FairSSL Fair priser fair support

Ethernet & OSI modellen

Computer Networks Specielt om Infrastrukturer og Teknologi

VLAN. - mange logiske net på ét fysisk! Netteknik 1

Ethernets placering i OSI modellen

Introduktion til MPLS

EN DEL AF DANSK INDUSTRI ELEKTRONISK INFRASTRUKTUR VIRKSOMHEDENS IT-SIKRE PLACERING

Support og fejlsøgning. Allan Dukat, UNI-C

Oprettelse af DNS Records i Hostnordic Selfcare

Sektornet VPN. Opsætning af Novell 5.1 server og klient på. Windows 2000/NT/XP

Indholdsfortegnelse Netværk...2 Netværk i den virkelige verden...2 LAN, WAN og MAN...2 OSI-modellen...3 Talsystemer...3 Bits og bytes...

MM Hul-Igennem-Test i Prod. Information til kunder

Det Danske Filminstitut byder velkommen til vores UDP Server. Pligtaflevering - Version 2.0

Indhold Kapitel 1 Computernetværk og internettet

Dynamisk Routing OSPF. Rasmus Elmholt V1.0

Et netværk bliver til

FairSSL Fair priser fair support

Netteknik 1 Byg et netværk med SO-HO router Øvelse

Transkript:

Datanet Obligatorisk opgave 3: IP og ICMP René Hardi Hansen Michael Falcke Nilou Anders Bjerg Pedersen Hold 1 26. september 2007 1

Indledning Denne opgave går ud på at analysere IP-protokollen ved at betragte IP-datagrammer transmitteret under udførelse af programmet Traceroute. Endvidere ser vi på programmet ping, på IP-fragmentering og på ICMP-protokollen. Wireshark Lab: IP 2. A look at the captured trace Q1: Vi anvender tracet, der er udgivet sammen med opgaven, og finder klientens IPadresse i TCP-pakke nr. 8, der er den første pakke, der sendes ud fra tracerouteprogrammet (se screenshot nedenfor): Src: 192.168.1.102 (192.168.1.102). Q2: Værdien i protocol-feltet er: (se samme screenshot): Protocol: ICMP (0x01). Q3: Der er 20 bytes i IP-headeren. Der er 64 bytes data. Disse tal kan findes ved at trække længden af headeren fra den totale længde af IP-datagrammet, eller ved at tælle antallet af bytes i ICMP-protokollen i den pågældende pakke. Q4: IP-datagrammet er ikke fragmenteret. Offset er 0, og flaget for flere fragmenter er ikke sat (se nedenstående screenshot). 2

Q5: Ved at traversere pakkerne i Wireshark ser vi, at følgende felter i IP datagrammet altid ændrer værdi: Time to live: TTL, Header checksum samt Identification. Q6: I besvarelsen af dette spørgsmål, begrænser vi os til at betragte IP headeren. Ved at traversere pakkerne i Wireshark ser vi, at følgende felter i IP datagrammet er konstante: Version: 4, Header length: 20, Differentiated services field, Protocol: ICMP (0x01). Følgende felter i IP-datagrammet skal være konstante (så længe vi anvender IPv4 og laver traceroute): Version: 4 (dog kan man med f.eks. tunnelling undgå, at denne skal holdes konstant), Protocol: ICMP (alt andet ville ikke være en del af traceroute-programmet). Følgende felter i IP datagrammet skal variere: Time to live: TTL og Header checksum. TTL varierer, fordi specifikationen af traceroute (RFC 2151) anvender TTL-værdien til at finde navnet på den n te router. Traceroute starter med at udsende 3 pakker med TTL=1. Disse pakker medfører, at den nærmeste router (1 hop) svarer tilbage med en type 11 code 0 warning message: TTL expired, samt navn og IP-adresse på routeren. Dernæst øger traceroute TTL-værdien med 1, indtil den søgte host svarer tilbage med en ICMP type 3 code 3 (destination port unreachable). Denne meddelelse skyldes, at traceroute forsøger at aflevere et UDP-segment til en ugyldig port hos den søgte host. Q7: Vi ser, at pakkens identifikationsnummer tælles op med 1, for hver pakke der afsendes, indtil pakkerne fragmenteres, da bevares det samme identifikationsnummer på samtlige fragmenter. Identification number. Q8: Identifikationsnummeret i IP-delen af svaret fra routeren er: Identification: 0x9d7c (40316). TTL er 255. Q9: For ICMP-delen af svaret, vil returneringen altid rumme en TTL på 1, da routeren ikke trækker yderligere fra i TTL, da den allerede har nået minimum, men 3

blot returnerer en ICMP type 11 code 0 warning message: TTL expired. Identification ændrer sig hver gang, da der er tale om nye pakker, som (hvis de skulle fragmenteres) skulle være mulige at skelne fra hinanden. 3. Fragmentation Q10: Ja, IP-datagrammet består af 2 fragmenter. Pakke nr 92 og 93 i tracet. Q11: Se nedenstående screenshot. Ja, IP-datagrammet består af 2 fragmenter (pakke nr. 92 og 93 i tracet). I headeren til datagrammet er flaget for flere fragmenter sat. Når flaget for flere fragmenter er sat samtidig med at fragment offset = 0 så er der tale om det første fragment. Vi tager længden af IP-segmentet minus headeren for begge pakker: (1500 20) + (548 20) = 2008bytes. Dette er det samme tal, som Wireshark i den anden pakke præsenterer i bunden, hvor programmet tilbyder at samle IPv4-pakken for os. Q12: Der er henvist til et fragment offset > 0. Heraf ses, at der er tale om et fragment. Der er ikke flere fragmenter, da flaget for flere fragmenter ikke er sat. 4

Q13: Følgende felter forandrer indhold fra 1. til 2. fragment: Total Length, Flags:..0. = More fragments, Fragment offset, og Header checksum. De interessante felter er her: Flags og Fragment offset. Total length behøver ikke nødvendigvis at ændre sig, og checksummen vil altid forandres ved forandring af pakken. Q14: Der bliver dannet 3 fragmenter af det oprindelige datagram: Frame 216, 217 og 218. Q15: Der henvises til besvarelsen af Q13. Endvidere ses, at Total Length sættes til maximum (1500 bytes), så længe der kan dannes fragmenter af denne længde. I den sidste pakke tilpasses Total Length til kun at indeholde den resterende datamængde. Wireshark Lab: ICMP 1. ICMP and Ping Screenshot af ping-programmet kørt i en UNIX-terminal: 5

BEMÆRK: Opgaverne er besvaret ud fra Wireshark-tracet og ikke ud fra ovenstående kørsel af ping-programmet i UNIX. Q1: Source og Destination kan aflæses af IP-datagrammet (f.eks. fra pakke 3): Internet Protocol, Src: 192.168.1.101 (192.168.1.101), Dst: 143.89.14.34 (143.89.14.34). Q2: ICMP er en protokol, der kun benyttes i netværkslaget (men rent principielt ligger lige over IP). Der er ikke tale om kommunikation mellem processer, og derfor er der ikke brug for portnumre på hverken source eller destination. Q3: ICMP Type: 8 (Echo (ping) request) ICMP Code: 0 Ud over disse felter findes felterne: Checksum, Identifier, Sequence Number og Data. ICMP Checksum: ICMP Identifier: ICMP Sequence Number: 2 bytes 2 bytes 2 bytes Hvert hexadecimaltal repræsenteres af 4 bits. 4 hex-tal efter hvert felt må så betyde 2 bytes per felt. 6

Q4: Reply-pakkerne indeholder nøjagtig det samme, bortset fra, at ICMP code er 0 i stedet for 8. Se derfor Q3 for feltstørrelser og andet. 2. ICMP and Traceroute Screenshot af traceroute-programmet kørt i en UNIX-terminal mod www.ust.hk: BEMÆRK: Opgaverne er primært besvaret ud fra Wireshark-tracet og ikke ud fra ovenstående kørsel af traceroute-programmet i UNIX. Q5: Source og Destination får vi igen fra IP-protokollen: Internet Protocol, Src: 192.168.1.101 (192.168.1.101), Dst: 143.89.14.34 (143.89.14.34). Q6: Nej, protokolnummeret er nu 11 for UDP, men der returneres stadig et ICMPsegment. På tracet fra ovenstående screenshot kommer der skiftevis UDP- og ICMP-pakker. Q7: Payload-størrelsen på vores ping-requests er 32 bytes, hvorimod den i vores tracerouterequests er 64 bytes. Desuden er indholdet af payload også forskelligt (jævnfør at størrelsen er forskellig...). 7

Q8: ICMP-fejlpakken indeholder det IP-datagram (inkl. ICMP-segmentet), som fejlen udsprang fra. Dermed kan modtageren se, hvilken pakke der gik galt. Desuden har fejlpakken Type: 11 (Time-to-live exceeded) og Code: 0 (Time to live exceeded in transit). Q9: Traceroute sender altid 3 ping-requests til hver router, derfor de sidste 3 pakker. Disse 3 pakker er nået frem til den host, der skulle traceroutes til, derfor svarer destinationen med et almindeligt ping-reply på de 3 pakker. Dette betyder, at de sidste 3 pakker (når de når frem til destinationen) stadig har et tilstrækkelig højt TTL-nummer til, at serveren blot kan svare på dem uden at gå i TTL Expiresmode. Dette gælder dog kun, fordi tracet er kørt på en Windows-maskine. På vores eget trace på UNIX giver de sidste pakker en Type: 3 (Destination unreachable), Code: 3 (Port unreachable) retur. Dette skyldes, at UNIX sender UDP-datagrammer til en fiktiv port på serveren (se screenshot nedenfor). Q10: Der ses et spring i responstiden fra hop nummer 9 til nummer 10 fra gennemsnitligt 24ms til 97ms. Det er her, forbindelsen hopper over atlanten fra New York (attgw.nyc.opentransit.net) til Frankrig (P4-0.PASCR1.Pastourelle.opentransit.net). Konklusion Vi har i denne opgave set nærmere på, hvordan IP-protokollen bruges til at sende data over Internettet, både som hele og fragmenterede segmenter. Vi har også undersøgt, hvordan ICMP-protokollen i samspil med IP-protokollen kan bruges til at fejlfinde f.eks. tabte pakker eller dårlige modtageradresser og -porte. Til sidst har vi set, hvordan forskellene mellem forskellige platformes brug af Traceroute-programmet mht. UDP- eller ICMP-pakker. 8