Datacommunicatie en netwerken

Datacommunicatie en netwerken
Paul Cobbaut
Datacommunicatie en netwerken
Paul Cobbaut
lt-0.9
Published Sun Feb 13 00:01:56 2011
Abstract
Deze cursus wordt gemaakt als leidraad voor de studenten die de module "Datacommunicatie en Netwerken"
volgen aan het cvotsm in Mechelen.
Deze cursus wordt op vrijwillige basis gemaakt, en bevat misschien niet de volledige leerstof. Vergeet dus niet
te noteren tijdens de les.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free
Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no
Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section
entitled 'GNU Free Documentation License'.
Copyright 2010-2011 Paul Cobbaut
paul.cobbaut@gmail.com - paulc@cvotsm-leren.be
XKCD images (c) http://xkcd.com/license.html
Table of Contents
1. inleiding .............................................................................................................. 1
1.1. kennismaking ........................................................................................... 1
1.2. terminologiebad ........................................................................................ 9
1.3. operating system .................................................................................... 10
1.4. geschiedenis internet .............................................................................. 13
2. terminologie ..................................................................................................... 19
2.1. bit ........................................................................................................... 19
2.2. byte ......................................................................................................... 19
2.3. kilobyte ................................................................................................... 20
2.4. zender en ontvangers ............................................................................. 23
2.5. lan-wan-man ........................................................................................... 25
2.6. topologie van een netwerk ..................................................................... 27
2.7. telefoon en data ...................................................................................... 29
2.8. oefening .................................................................................................. 31
3. derde les ........................................................................................................... 32
3.1. OSI model .............................................................................................. 32
3.2. OSI-model versus DoD .......................................................................... 35
3.3. sniffer ..................................................................................................... 36
3.4. op de computer ...................................................................................... 38
3.5. toestellen en lagen ................................................................................. 40
4. vierde les .......................................................................................................... 43
4.1. onze data op reis .................................................................................... 43
4.2. onze data onderweg ............................................................................... 45
4.3. bestemming bereikt ................................................................................ 46
4.4. er komt antwoord ................................................................................... 46
4.5. lagen oefening ........................................................................................ 48
4.6. tcp en udp .............................................................................................. 49
4.7. ping en arp ............................................................................................. 51
4.8. packetjes ................................................................................................. 52
5. weergave getallen ............................................................................................ 53
5.1. leren tellen ............................................................................................. 53
5.2. veel voorkomende getallen .................................................................... 57
5.3. machten van twee .................................................................................. 57
6. ip-adressen ....................................................................................................... 59
6.1. oefening .................................................................................................. 59
6.2. ip-adressen .............................................................................................. 61
6.3. private en publieke adressen .................................................................. 61
6.4. ip-adres klassen ...................................................................................... 63
6.5. oefening ip-adres klassen ....................................................................... 63
6.6. default subnet masks .............................................................................. 64
6.7. oefening default subnet masks ............................................................... 64
6.8. network id en host id ............................................................................. 65
6.9. oefening network id en host id .............................................................. 66
6.10. lokale computer of niet ? ..................................................................... 67
6.11. oefening lokale computer of niet? ....................................................... 68
6.12. subnet notatie ....................................................................................... 69
iii
Datacommunicatie en netwerken
6.13. computers in een netwerk tellen .......................................................... 69
7. 4 miljard ip-adressen ...................................................................................... 70
7.1. te weinig ip-adressen ? ........................................................................... 70
7.2. ip-adressen verdelen ............................................................................... 70
7.3. probleem voor de routing tables ............................................................ 70
7.4. Is nat een oplossing ? ............................................................................. 71
8. van subnet naar supernet ............................................................................... 72
8.1. binaire subnets ....................................................................................... 72
8.2. supernetting ............................................................................................ 73
8.3. binaire subnets decimaal voorstellen ..................................................... 75
8.4. 32 binaire subnet masks ......................................................................... 76
8.5. aantal computers .................................................................................... 77
8.6. network id en host id vinden ................................................................. 78
8.7. voorbeeldoefening binaire subnets ......................................................... 79
8.8. oefeningen binaire subnets ..................................................................... 81
8.9. zelfde of ander netwerk ? ....................................................................... 83
8.10. subnetworks .......................................................................................... 84
9. toets ................................................................................................................... 85
9.1. tussentijdse toets 20101010 ................................................................... 85
9.2. antwoorden toets 20101010 ................................................................... 89
10. inleiding tot routers ...................................................................................... 91
10.1. router tussen twee netwerken ............................................................... 91
10.2. twee routers met elkaar verbinden ....................................................... 95
10.3. lokale routing tables ............................................................................. 96
10.4. nat ......................................................................................................... 97
10.5. dnat ....................................................................................................... 98
10.6. dnat en internet .................................................................................... 99
10.7. port forwarding en pat ......................................................................... 99
10.8. snat ..................................................................................................... 100
10.9. snat en internet ................................................................................... 100
11. naamresolutie en DNS ................................................................................ 101
11.1. inleiding .............................................................................................. 101
11.2. logische DNS structuur ...................................................................... 104
11.3. DNS caching ...................................................................................... 105
11.4. praktijkvoorbeeld ............................................................................... 106
11.5. DNS records ....................................................................................... 106
11.6. DNS reverse lookup ........................................................................... 106
11.7. zone .................................................................................................... 106
11.8. DNS server software .......................................................................... 107
11.9. name resolving ................................................................................... 107
11.10. DNS IDN ......................................................................................... 107
11.11. Domeinnamen registreren ................................................................ 107
11.12. DNS round robin .............................................................................. 107
11.13. tekening DNS ................................................................................... 107
11.14. tekening DNS en routerke ............................................................... 110
11.15. screenshots DNS in actie ................................................................. 111
12. negende les ................................................................................................... 124
12.1. oefeningen DNS ................................................................................. 124
iv
Datacommunicatie en netwerken
13.
14.
15.
16.
17.
18.
19.
12.2. demo DNS ..........................................................................................
12.3. oefening DHCP ..................................................................................
12.4. demo DHCP .......................................................................................
tiende les ......................................................................................................
13.1. extra oefeningen .................................................................................
Test 9 en 10 november ...............................................................................
14.1. de vragen ............................................................................................
14.2. de antwoorden ....................................................................................
modems ........................................................................................................
15.1. over modems ......................................................................................
15.2. over DSL ............................................................................................
15.3. over kabelmodems .............................................................................
15.4. over bandbreedte ................................................................................
draadloze netwerken ...................................................................................
16.1. wireless ...............................................................................................
16.2. frequentie ............................................................................................
16.3. spectrum .............................................................................................
16.4. amplitude ............................................................................................
16.5. fase .....................................................................................................
16.6. golflengte ............................................................................................
16.7. IEEE 802.11 .......................................................................................
16.8. WiMAX ..............................................................................................
16.9. Wi-fi ...................................................................................................
16.10. Access Point .....................................................................................
16.11. hotspot ..............................................................................................
16.12. draadloze beveiliging .......................................................................
16.13. wardriving ........................................................................................
16.14. bluetooth ...........................................................................................
16.15. Denial of Service .............................................................................
praktijk netwerk bouwen ...........................................................................
17.1. hubs ....................................................................................................
17.2. switches ..............................................................................................
17.3. routers .................................................................................................
17.4. kabels .................................................................................................
17.5. demo console switch ..........................................................................
17.6. stp .......................................................................................................
demo dhcp ....................................................................................................
18.1. inleiding ..............................................................................................
18.2. vier broadcasts ...................................................................................
18.3. dhcp server op windows ....................................................................
18.4. tekening DHCP ..................................................................................
18.5. dhcp server op Linux .........................................................................
18.6. dhcp client ..........................................................................................
demo webserver ...........................................................................................
19.1. inleiding ..............................................................................................
19.2. simpele websites ................................................................................
19.3. de webservers .....................................................................................
19.4. tekening http ......................................................................................
v
126
126
126
127
127
133
133
136
138
138
139
142
142
144
144
144
145
145
145
146
146
147
148
148
148
148
149
150
150
151
151
151
151
151
153
155
159
159
159
160
162
164
164
166
166
166
168
169
Datacommunicatie en netwerken
20. e-mail ............................................................................................................
20.1. tekening pop3 .....................................................................................
20.2. tekening smtp (deel 1) .......................................................................
20.3. tekening smtp (deel 2) .......................................................................
A. GNU FDL ......................................................................................................
Index ....................................................................................................................
vi
171
171
172
173
175
176
List of Tables
1.1. ms-dos vs windows nt ................................................................................... 10
2.1. de waarden van een bit .................................................................................. 19
2.2. de byte en zijn verwanten .............................................................................. 20
2.3. veelvouden van 1000 of 1024 ....................................................................... 21
2.4. megabytes en meer ........................................................................................ 22
2.5. mebibytes en meer ......................................................................................... 22
2.6. isdn in kb en kB ............................................................................................ 30
2.7. weinig data over netwerken ........................................................................... 31
2.8. veel data over netwerken ............................................................................... 31
3.1. OSI model ...................................................................................................... 32
3.2. DoD of tcp/ip model ...................................................................................... 35
5.1. talstelsels naast elkaar .................................................................................... 54
5.2. oefening talstelsels ......................................................................................... 56
5.3. machten van twee .......................................................................................... 57
5.4. grote machten van twee ................................................................................. 58
6.1. private ip-adressen ......................................................................................... 61
6.2. oefening gereserveerde ip-adressen ............................................................... 62
6.3. ip address classes ........................................................................................... 63
6.4. oefening classful ip addressing ...................................................................... 63
6.5. default subnet mask ....................................................................................... 64
6.6. oefening default subnet masks ....................................................................... 64
6.7. network id en host id ..................................................................................... 65
6.8. local or remote computer? ............................................................................. 67
6.9. cidr notatie ..................................................................................................... 69
6.10. aantal computers in een subnet .................................................................... 69
8.1. binary classful subnets ................................................................................... 72
8.2. max computers classful subnets ..................................................................... 72
8.3. /24 netwerk in de klas .................................................................................... 73
8.4. /25 netwerk in de klas .................................................................................... 73
8.5. /25 binair bekijken ......................................................................................... 74
8.6. /26 binair bekijken ......................................................................................... 74
8.7. decimale waarde binaire subnet bytes ........................................................... 75
8.8. 31 binaire subnets .......................................................................................... 76
8.9. aantal computers in binaire subnets ............................................................... 77
8.10. oefening 192.168.234.234/17 ....................................................................... 79
8.11. oplossing 192.168.234.234/17 ..................................................................... 79
8.12. andere helft van 192.168.234.234/17 ........................................................... 80
8.13. oplossing andere helft 192.168.234.234/17 ................................................. 80
8.14. lege tabel 168.186.240.192/11 ..................................................................... 81
8.15. lege tabel 192.168.248.234/17 ..................................................................... 81
8.16. lege tabel 168.190.248.199/27 ..................................................................... 82
8.17. oplossing 168.186.240.192/11 ..................................................................... 83
8.18. oplossing 192.168.248.234/17 ..................................................................... 83
8.19. oplossing 168.190.248.199/27 ..................................................................... 83
8.20. echt supernetten ........................................................................................... 84
14.1. TCP of UDP .............................................................................................. 135
vii
Datacommunicatie en netwerken
14.2. TCP of UDP .............................................................................................. 137
viii
Chapter 1. inleiding
Table of Contents
1.1.
1.2.
1.3.
1.4.
kennismaking ................................................................................................... 1
terminologiebad ................................................................................................ 9
operating system ............................................................................................ 10
geschiedenis internet ...................................................................................... 13
1.1. kennismaking
1.1.1. voorstelling leerlingen
1. Wie ben je ?
2. Welke informaticakennis heb je al ?
3. Welke netwerkenkennis heb je al ?
4. Waarom ben je hier ?
5. Welke onderwerpen wil je in deze cursus ?
1.1.2. voorstelling leraar
1. Wie ben je ?
online:
cobbaut.blogspot.com
www.cobbaut.be
linkedin.com/in/cobbaut
facebook.com/cobbaut
offline:
Antwerpenaar
schaken op terrasjes met een pintje
zaakvoerder
consultant
leraar
fantasy
1
inleiding
2
inleiding
2. Welke informaticakennis heb je al ?
jaren
jaren
sinds
sinds
sinds
80: machinetaal 68000, computerclubs
90: diploma KULeuven, C, C++, IBM
1997: zelfstandig consultant
1999: zaakvoerder, privé-leraar voor bedrijven
2009: ambtenaar, cvotsm
systeembeheer:
1994 tot 1998: IBM OS/2
1997 tot 2005: MS Windows NT/2000/2003
sinds 2000: Linux/RHEL/Debian
sinds 2003: Solaris 9/10
3. Welke netwerkenkennis heb je al ?
jaren 80: modems, bbs, ccc, nulmodem
jaren 90: SNA, ipx/spx, coax, LAN, WAN
jaren 00: tcp/ip, dns, dhcp
4. Waarom ben je hier ?
lesgeven
kennis overdragen
niet om boek te maken ;-)
3
inleiding
5. Welke onderwerpen wil je in deze cursus ?
tcp/ip
dns
dhcp
standaard protocols voor internet (rfc's)
onafhankelijk van bedrijfseigen (proprietary) systemen
Alle vragen i.v.m. systeembeheer en netwerk (dns, dhcp, tcp/ip, internet) zou ik
moeten kunnen beantwoorden!
4
inleiding
1.1.3. leerplan van de overheid
De overheid voorziet een leerplan dat u hier http://ond.vsko.be/dbs/plsql/
vwo_ho_m$.startup kan vinden.
Het leerplan ziet er als volgt uit:
Instapvereisten:
Vertrouwd zijn met de werking van een operating system en met het
gebruik van internet.
Verplichte voorafgaande modules:
geen
Studieduur:
60 Lt TV
Doelstellingen:
de cursist:
-kent de termen en afkortingen in gebruik bij communicatiesystemen
-kent de basiselementen van datatransmissie
-kan de parameters capaciteit, snelheid en de beperkingen van een
communicatiekanaal situeren;
-kan de principes van modulatie en de bijbehorende normen benoemen en
beschrijven;
-kan de multiplexeringstechnieken om een communicatiekanaal optimaal
te gebruiken benoemen en beschrijven;
-kan de verschillende communicatiestructuren (topologieën): van
punt-tot-punt tot het gebruik van een gemeenschappelijk kanaal (in
een Lan, Man, Wan) en hun toepassingen beschrijven;
-kent de technieken waarbij computers communiceren in een lokaal
netwerk via een gemeenschappelijk kanaal (bv. Ethernet) en kan een
lokaal netwerk op basis van een gemeenschappelijk kanaal samenstellen;
-kan de voordelen en noodzakelijkheden van het gebruik van
lagenmodellen in datacommunicatie opnoemen en kan o.m. het klassieke
OSI-model beschrijven;
-kan de structuur en de evolutie en de toepassingen van het Internet
schetsen;
-kent het verschil tussen fysische en logische adressering en kan
IP-adressen catalogeren en aanpassen (sub- en supernetten);
-de verschillende functionaliteiten tussen een server en werkstations
weergeven;
-kan verschillende aspecten van netwerkbeveiliging onderscheiden;
-onderkent de voordelen en mogelijkheden van internet, extranet en
intranet.
Leerinhouden:
Datacommunicatiemodel:
-basisbegrippen
-basiselementen datatransmissie
-verband tussen bandbreedte en capaciteit
-fysieke media en hun eigenschappen.
-snelheid
-beperkingen
-modulatie en codering
-multiplexen
-topologiën:
-point-to-point
-multipoint met gemeenschappelijk kanaal
-voorbeelden van topologiën:
-point-to-point: bv. RS-232-C
-multipoint: bv. Ethernet
5
inleiding
Leerinhouden:
Voorbeelden aan de hand van de TCP/IP protocolsuite.
-Adressering (IP-adressen):
-IP-adres, netmask, netwerkadres, broadcast-adres
-sub- en supernetting
-Werking van de TCP en IP protocollen.
-packetswitching: IP
-virtual circuitswitching: TCP
Leerinhouden:
Datacommunicatie in de praktijk.
-Het OSI-model in de praktijk
-ontstaan en evolutie van Internet
-verschil internet, extranet en intranet
-netwerkbeveiliging
-servers en werkstations
Methodologische wenken:
Deze module dient een inleiding te vormen in de datacommunicatiewereld.
In de modules Netwerkbeheer 1 en 2 (A.10 - N.2) wordt de opgedane
kennis aan de praktijk getoetst.
Het is echter niet de bedoeling een zuiver theoretische cursus te
geven.
Praktijkvoorbeelden kunnen veel duidelijk maken: bijvoorbeeld
-traces van een packetsniffer
-verschillende interfaces
6
inleiding
1.1.4. boeken
Dit leerplan wordt bijna volledig besproken in het boek computernetwerken van
Andrew S. Tanenbaum ISBN 90 395 0557 8 (in het Engels: Computer Networks,
ISBN 0-13-066102-3).
Ook Cisco heeft boeken (ter voorbereiding van hun CCNA examens) die de materie
uit het leerplan in detail bespreken.
Laat me ook nog Communications Systems and Networks vermelden van Ray
Horak (ISBN 0 7645 7522 8), ook dit boek behandelt grotendeels de materie uit het
leerplan.
Je bent niet verplicht om deze boeken aan te schaffen!
7
inleiding
1.1.5. wikipedia
De meeste begrippen die in deze cursus besproken worden, worden ook vrij goed
uitgelegd op wikipedia.
Wikipedia is niet altijd betrouwbaar, maar dan gaat het vooral over informatie
betreffende personen, bedrijven, regeringen, politiek, religie, economie enz. Wat
betreft informatica en computernetwerken, is wikipedia over het algemeen correct.
De Engelstalige wikipedia is meestal wel vollediger dan de Nederlandstalige.
8
inleiding
1.2. terminologiebad
Er gaat een blad rond, met daarop de volgende woorden. Iedere student kiest een
woord en legt dit uit aan de klas. Andere studenten mogen op deze uitleg reageren.
802.11
arpanet
broadcast
bsd
dhcp
dns
e-mail
ethernet
http
hub
internet
intranet
ip-adres
ipsec
isdn
kilobyte
lan - wan
layer 2 switch
leerplan
linux
loopback
mac
modem
multicast
nic
operating system
osi-model
packet switching
peer-to-peer
pop3
port 80
rfc
rfc 2131
router
server
smtp
sniffer
solaris
T1
unicast
unix
vpn
wep
wikipedia
windows nt
zeroconf
9
inleiding
1.3. operating system
Het leerplan vraagt dat u vertrouwd bent met de werking van een operating system.
1.3.1. besturingssysteem
Het Engelse woord operating system wordt in het Nederlands vertaald als
besturingssysteem.
Een besturingssysteem is zelf software, geschreven door programmeurs. Meer
informatie vindt u op wikipedia http://nl.wikipedia.org/wiki/Besturingssysteem.
Een besturingssysteem bestaat uit een kernel omringd door applicaties en gegevens.
Deze kernel is software die geschreven is om de hardware te besturen, het geheugen
te beheren en applicaties te beheren.
Onder hardware verstaan we toestellen zoals een toetsenbord, een scherm, een muis,
maar ook interne onderdelen zoals cpu's, pci devices, scsi en ide harde schijven en
nog veel meer.
Moderne kernels zoals Linux, Solaris en NT (Windows) herkennen heel wat
hardware en schermen die volledig af van applicaties en gebruikers.
1.3.2. Microsoft Windows
Hieronder een overzicht van (recente) Microsoft besturingssystemen. Deze kunnen
grotendeels onderverdeeld worden in de (verouderde) opvolgers van ms-dos en de
evolutie van windows nt.
Table 1.1. ms-dos vs windows nt
jaar
MS-DOS
Windows NT
1991
MS-DOS 5.0 + Windows 3.1
OS/2 3.00
1993
Windows NT 3.1
1994
MS-DOS 6.22 + Windows 3.11
Windows NT 3.5
1995
Windows 95
Windows NT 3.51
1997
Windows 98
Windows NT 4.0
2000
Windows ME
Windows 2000 (NT 5.0)
2001
Windows XP (NT 5.1)
2007
Windows Vista (NT 6.0)
2009
Windows 7 (NT 6.1)
De ms-dos lijn eindigde met windows me, maar deze versie werd door bijna iedereen
snel van de computer afgegooid en weer vervangen door het immens populaire
windows 98.
10
inleiding
Wat de NT lijn betreft is windows xp nog steeds veruit de meest gebruikte, meer dan
dubbel zoveel als windows vista en windows 7 tesamen.
IBM en Microsoft werkten in de jaren tachtig samen aan OS/2. Toen IBM werkte aan
OS/2 2.0 en Microsoft bezig was met OS/2 versie 3.00 eindigde de samenwerking.
Even later in 1993 bracht Microsoft OS/2 3.00 uit onder de naam Windows NT 3.1
(gelijklopend met Windows 3.1).
Enkele links:
http://nl.wikipedia.org/wiki/OS/2
http://nl.wikipedia.org/wiki/Windows
http://nl.wikipedia.org/wiki/MS-DOS
http://www.microsoft.com
1.3.3. Unix
Unix werd in 1969 ontwikkeld door Dennis Ritchie, Ken Thompson en Douglas
McIlroy, onder de naam UNICS (Uniplexed Information and Computing System)
in de befaamde Bell Labs.
In de jaren tachtig maakte zowat elke grote firma zijn eigen versie van Unix (IBM
AIX, HP HP-UX, Sun SunOS (later Solaris), Microsoft Xenix, etc). Vanaf midden
jaren 70 was er een dispuut met de universitaire ontwikkelaars uit California. Deze
hippies noemden hun Unix BSD, wat we vandaag nog terugvinden in OpenBSD,
FreeBSD en NetBSD (ook MacOSX en Solaris hebben BSD-wortels).
Wil je meer weten, google dan gerust op 'Unix history' of surf naar wikipedia of lees
de inleiding over Unix op www.linux-training.be.
11
inleiding
1.3.4. GNU/Linux
Sinds 1991 is er Linux, of zeggen we beter GNU/Linux ?
Het verhaal van Linux begint eigenlijk in de jaren 80 bij Richard Stallman. Hij vond
het niet zo leuk dat de open samenwerking van begin jaren 70 in de Unix wereld moest
plaats ruimen voor een gesloten 'ieder voor zich' mentaliteit. Hij wou een operating
system dat vrij was : vrij om te gebruiken, vrij om te bestuderen, vrij om te wijzigen
en vrij om te kopiëren. Het duurde tot de winter van 1991, toen Linus Torvalds de
Linux kernel schreef, vooraleer GNU/Linux geboren was.
Richard schreef in de jaren 80 een licentie genaamd GNU GPL die bepaalt dat je
software mag kopiëren zoveel je maar wil. Je mag GPL software ook verkopen,
maar de persoon die dat koopt krijgt dezelfde rechten. Je mag ook sleutelen aan de
broncode van gpl software, op voorwaarde dat je jouw aanpassingen ook onder de
gpl licentie naar buiten brengt.
Deze software noemt men ook wel eens vrije software, dit in tegenstelling tot
gesloten software zoals Microsoft producten (waar je geen broncode krijgt, niets mag
kopiëren en niets mag aanpassen aan de software).
Meer weten hierover (strikt genomen behoort het niet tot het leerplan), surf dan naar:
http://nl.wikipedia.org/wiki/Vrije_software
http://nl.wikipedia.org/wiki/Richard_M._Stallman
http://nl.wikipedia.org/wiki/GNU_General_Public_License
http://people.mech.kuleuven.be/~bruyninc/ictvisie.html
http://nl.wikipedia.org/wiki/Linux
12
inleiding
1.4. geschiedenis internet
Het internet is meer dan de blauwe e op de Windows desktop. Het internet bestaat
sinds 1969 en omvat behalve het World Wide Web ook diensten zoals smtp (email), nntp (usenet/nieuwsgroepen) en de laatste jaren vooral torrents voor het
downloaden van vele gigabytes en terabytes.
1.4.1. 1969 arpanet
Het arpanet was het eerste netwerk van computers dat gebruik maakte van packet
switching technologie. Eind 1969 waren vier computers verbonden op dit internetwork.
Het arpanet groeide tot honderden verbonden computers in 1983 (toen werd het
opgesplitst in het publieke arpanet en het militaire milnet).
1.4.2. packet switching
Ter vervanging van vast toegewezen communicatiekanalen werd in de jaren
60 een nieuwe techniek ontwikkeld die alle gegevens die over een netwerk
moeten getransporteerd worden opdeelt in kleine packetjes. Elk packetje bepaalt
onafhankelijk van alle andere packetjes zijn route naar zijn bestemming. Dit laat
toe dat meerdere computers tegelijkertijd gebruik maken van dezelfde (fysische)
communicatiekanalen.
13
inleiding
Beknopte uitleg op de Nederlandstalige wikipedia pagina, uitgebreide uitleg in het
Engels.
http://nl.wikipedia.org/wiki/Packet_switching
http://en.wikipedia.org/wiki/Packet_switching
1.4.3. jaren 70
De jaren 70 zagen ook de creatie van het X.25 netwerk, fidonet, compuserve,
bulletin board systems en uucp. Al deze netwerken zijn vandaag volledig opgegaan
in het internet en tcp/ip.
1.4.4. tcp/ip
De jaren 70 waren ook de start voor het tcp/ip protocol. Deze protocol stack zullen
we later uitgebreid bespreken.
Vandaag gebruikt 99 procent van het internet ipv4 (Internet Protocol versie 4). De
opvolger ipv6 is klaar, maar breekt nauwelijks door.
1.4.5. ncp en osi
Op 1 januari 1983, ook gekend als flag day, werd het ncp protocol op internet
vervangen door tcp/ip. Van dan af zal tcp/ip, een protocol-stack waarvan de
ontwikkeling begon in 1969, het internet domineren. Dit ondanks pogingen eind jaren
80 om het nieuwe osi protocol als standaard door te voeren.
14
inleiding
Terzijde ook even vermelden dat in de jaren 80 zowat elke grote computerfirma
begon met een eigen protocol ; IBM met SNA, Novell met IPX/SPX, Microsoft
met NetBEUI, Apple met Appletalk en Banyan met Vines. Maar al deze protocols
werden van de kaart geveegd door het oudere en open tcp/ip.
1.4.6. e-mail
Reeds in 1965 bestond er e-mail op mainframe computers. Het @ teken dateert uit
1971. In de jaren 70 kon je e-mailen tussen verschillende netwerken zoals arpanet,
vnet(ibm), bitnet, nsfnet en alle computers die uucp of ncp spraken.
Sinds 1982 bestaat e-mail als SMTP (Simple Mail Transfer Protocol), gedefineerd
oorspronkelijk in rfc 821 (later meermaals uitgebreid).
http://nl.wikipedia.org/wiki/SMTP
http://en.wikipedia.org/wiki/SMTP
http://www.rfc-editor.org/rfc/rfc821.txt
http://www.rfc-editor.org/rfc/rfc5321.txt
1.4.7. rfc
Sinds 1969 maakt men voor elk internet protocol een rfc (Request for Comments).
Een rfc is een (ascii) tekstbestand en bepaalt de werking van alle protocols op het
internet. Deze tekstbestanden zijn vrij te raadplegen en te implementeren. Enkele
voorbeelden van protocols die bepaald zijn door een rfc zijn tcp, ip, ftp, udp, dns,
smtp, ntp, dhcp, http en duizenden anderen.
Op www.rfc-editor.org vind je alle rfc's. Je kan ook rechtstreeks naar de tekstversie
gaan als je de rfc nummer kent (zoals 2131 voor dhcp) via :
http://www.rfc-editor.org/rfc/rfc2131.txt
Elke rfc bevat o.a. een datum, opgepast voor humor als je 1 april ziet.
1.4.8. www
Tim Berners Lee vond dat gopher en ftp niet volstonden, dus kwam hij in 1989 op
de proppen met het World Wide Web. Toch was het nog wachten tot de release van
eerst de mosaic browser en nadien netscape navigator alvorens dit www populair
werd. In de jaren 1996-1997 surft 90 procent van de internetbevolking met Netscape
Navigator op het world wide web.
In 1995 kwam Spyglass, Inc met de internet explorer browser op de markt.
Deze browser werkte op Windows 95 (zat in het Plus pack) en werd nadien
gebundeld met Windows 98. Tussen 2001 en 2005 surft meer dan 90 procent van de
internetbevolking met de blauwe e van Internet Explorer 6 op het world wide web.
15
inleiding
Na jaren van Netscape dominantie en jaren van Internet Explorer 6 dominantie is
de browser wereld nu verdeeld. De cijfers voor 2010 volgens NetApplications, W3C
en StatCounter:
NA
Internet Explorer 6 : 16%
Internet Explorer 7 : 10%
Internet Explorer 8 : 28%
Moilla Firefox
: 23%
Google Chrome
: 8%
Safari
: 5%
Opera
: 3%
W3C
7%
8%
16%
46%
17%
4%
2%
SC
25%
18%
11%
31%
8%
4%
2%
Altijd opletten met statistieken!
1.4.9. web 2.0
Sinds de opkomst van myspace, orkut, linkedin en zeker facebook is het al web
2.0 wat de klok slaat. We noemen deze nieuwe trend van vriendjes maken in het
Engels social networking, soms ongelukkig vertaald in het Nederlands als sociale
netwerken.
De strijd om de gebruiker, die gewonnen leek door Microsoft met hun bijna
monopolistische aandeel op de eindgebruikers' desktop, speelt zich nu vooral online
af. Google, Microsoft, Yahoo en vele anderen proberen nu ook met web 2.0
technieken om het succes van Facebook te bereiken.
1.4.10. Wie bestuurt het internet ?
IETF
De Internet Engineering Task Force is een organisatie die rfc's kan goedkeuren als
zijnde een internet standard protocol.
ICANN
De Internet Corporation for Assigned Names and Numbers is een Amerikaanse
organisatie die beslist over domeinnamen (DNS) en controle heeft over IANA. De
voorganger van ICANN was InterNIC.
IANA
De Internet Assigned Numbers Authority beslist wereldwijd over wie welke ipadressen krijgt (via de RIR's), beheert de DNS root servers en controleert MIMEtypes.
16
inleiding
Hieronder een kaartje van de ip-adressen zoals ze verdeeld zijn. Dit is getekend door
XKCD (een cartoonist).
RIR
Elke Regional Internet Registry krijgt ip-adressen van IANA en verdeelt die over
een regio. Er zijn vijf van deze RIR in de wereld:
17
inleiding
ARIN : USA + Canada
RIPE : Europa + USSR + Midden-Oosten
AFRINIC : Africa
LACNIC : Latijns Amerika
APNIC : Oceanie + Asia (zonder USSR/Midden Oosten)
1.4.11. mensen
Vint Cerf
Vinton Gray Cerf werkte van 1976 tot 1982 bij DARPA aan de ontwikkeling van
tcp/ip. Sinds 2005 werkt hij voor Google. Hij is medeoprichter van ICANN en de
uitvinder van de EOF byte en de ASCII tabel. Hij is ook auteur van heel wat RFC's,
onder andere rfc2468. Samen met Kahn, Kleinrock en Roberts vormt hij de vier
vaders van het internet.
Jon Postel
Jon Postel is de man die in 1969 gestart was met de RFC's. Hij beheerde ook tot zijn
dood in 1998 de IANA.
Jon Postel is ook de man achter de uitspraak "wees conservatief in wat je zegt, en
liberaal in wat je aanvaardt".
http://tools.ietf.org/html/rfc2468
http://www.postel.org/postel.html
Tim Berners Lee
Sir Tim Berners Lee is de uitvinder van het www (samen met de onbekende Belg
Robert Cailliau).
http://en.wikipedia.org/wiki/Tim_Berners_Lee
http://en.wikipedia.org/wiki/Robert_Cailliau
Al Gore
Ondanks de misplaatste grappen rond zijn uitspraak "I invented the internet" tijdens
de presidentsverkiezingen van 2000 hoort Al Gore toch thuis in dit rijtje omdat hij
tijdens de jaren 70, 80 en 90 de grote drijfveer was achter de commercialisatie van
het internet.
1.4.12. internet servers
In tegenstelling tot de desktop markt waar Microsoft dominant is, draaien de
overgrote meerderheid van internet webservers, internet dns-servers en internet
routers een of andere vorm van Unix.
18
Chapter 2. terminologie
Table of Contents
2.1.
2.2.
2.3.
2.4.
2.5.
2.6.
2.7.
2.8.
bit ...................................................................................................................
byte .................................................................................................................
kilobyte ...........................................................................................................
zender en ontvangers .....................................................................................
lan-wan-man ...................................................................................................
topologie van een netwerk .............................................................................
telefoon en data ..............................................................................................
oefening ..........................................................................................................
19
19
20
23
25
27
29
31
2.1. bit
Een bit is de kleinste eenheid van informatie in de informaticawereld. Een bit kan
twee waarden aannemen : nul of een. Hieronder een tabel met alle mogelijk waarden
van een bit en de manier waarop deze worden voorgesteld.
Table 2.1. de waarden van een bit
waarde
voorstelling
nul
0
een
1
2.2. byte
Een byte is acht bits wordt wel eens gezegd. Maar zo eenvoudig is het niet. Toen
Werner Buchholz de term in 1956 voor het eerst gebruikte bedoelde hij letterlijk
"een reeks bits die de computer kan verwerken" (of bijten). Heden is een byte altijd
gelijk aan acht bits, maar in de jaren zeventig waren er computers met bytes van 4
tot 36 bits (de PDP 10 uit 1966 had 36-bit bytes).
Een byte wordt ook wel een octet genoemd. De volgende tabel toont termen die wel
eens gebruikt worden in relatie tot een byte.
19
terminologie
Table 2.2. de byte en zijn verwanten
naam
aantal bits
nibble
4
byte
8
word (x86)
16
word (meestal)
8, 16 of 32
word (andere)
9, 12, 18, 24, 36, 39, 40, 48 of 60
dword (x86)
32
long word (68k)
32
De term dword staat voor double word en is op de Intel architectuur gelijk aan 32
bits. Dit ondanks dat de fysische word-grootte nu 32 bits of zelfs 64 bits is.
Het long word was eind jaren 80 32 bits lang op de Apple en Commodore Amiga
computers met 68k processor.
Wat deze cursus betreft is een byte steeds 8 bits. Verder spreken we niet over een
word of zijn varianten, maar zullen we steeds het aantal bits aanduiden.
2.3. kilobyte
2.3.1. 1000 of 1024
Hoeveel bytes is een kilobyte ? Sinds de beginjaren van de informatica was het
antwoord hierop eenduidig 1024 bytes, toch als we praten over harde schijven en
computer geheugen. (In de telecommunicatie en netwerkterminologie was een kilo
gelijk aan 1000. Zo is de kilo in kilobits per seconde gelijk aan 1000.)
Maar eind jaren negentig beginnen enkele makers van harde schijven veelvouden
van 1000 te gebruiken i.p.v. 1024. Als voorbeeld drie harde schijven in mijn desktop
computer. De eerste is een 60GB Seagate, de tweede een 80GB Maxtor en de derde
een 200GB Western Digital. In veelvouden van 1000 geeft dit:
ST: 60.0 GB, 60022480896 bytes
Maxtor: 81.9 GB, 81964302336 bytes
WDC: 200.0 GB, 200049647616 bytes
In veelvouden van 1024 kom je op respectievelijk 56GB, 76GB en 186GB.
De reden om 1000 te gebruiken i.p.v. 1024 is simpele marketing: hoe groter de harde
schijven, hoe groter het verschil!
20
terminologie
Table 2.3. veelvouden van 1000 of 1024
1000
1024
verschil
1000
1024
2,4 procent
1000000
1048576
4,9 procent
1000000000
1073741824
7,4 procent
1000000000000
1099511627776
10 procent
2.3.2. kibibyte
Er kwam een einde aan de verwarring (not!) toen de IEC in 1999 (met update in 2000
en tweede update in 2005) begon met een standaard die in 2008 samen met de IEEE,
de ISO en het SI het volgende besliste: kilo = 1000 en kibi = 1024, behalve voor
RAM geheugen en cache geheugen (en SD-kaartjes....).
In de praktijk wordt nog steeds gesproken over 1024 bytes in elke kilobyte, tenzij
je een harde schijf koopt.
21
terminologie
2.3.3. megabytes en meer
Een megabyte is dus 1000 maal 1000 bytes, een gigabyte is 1000 megabyte, en een
terabyte is 1000 gigabyte. Toch als we de nieuwe standaard volgen. In de prakrijk
wordt nog wel eens 1024 gebruikt i.p.v. 1000.
Het rijtje gaat verder zoals je in deze tabellen kan zien.
Table 2.4. megabytes en meer
aantal bytes
juiste term
1000
kilobyte
1000 kilo
megabyte
1000 mega
gigabyte
1000 giga
terabyte
1000 tera
petabyte
1000 peta
exabyte
1000 exa
zettabyte
1000 zetta
yottabyte
Table 2.5. mebibytes en meer
aantal bytes
juiste term
1024
kibibyte
1024 kilo
mebibyte
1024 mega
gibibyte
1024 giga
tebibyte
1024 tera
pebibyte
1024 peta
exbibyte
1024 exa
zebibyte
1024 zetta
yobibyte
Wikipedia heeft een uitgebreid overzicht van de kilo-1000 versus kilo-1024
geschiedenis en de geboorte van kibibytes en zebibytes.
http://en.wikipedia.org/wiki/Binary_prefix
22
terminologie
2.4. zender en ontvangers
Alle vier deze termen worden regelmatig gebruikt in datacommunicatie en netwerken
om aan te duiden welk bereik een zender heeft. (Met dank aan een anonieme
weldoener om deze tekeningen gratis en onvoorwaardelijk in de public domain los
te laten.)
2.4.1. unicast
Gaat een signaal naar een eenduidige unieke bestemming, dan is dit een unicast. Heel
wat datacommunicatie bestaat uit unicast berichten tussen twee computers.
Voorbeelden van een unicast zijn frames op laag 2 naar een specifiek mac-adres en
packets op laag 3 naar een ip-adres (dat niet het broadcast adres is).
2.4.2. multicast
Is het signaal bedoeld voor leden van een welbepaalde groep, dan spreken we over
een multicast.
23
terminologie
Voorbeelden van multicast zijn Realplayer (voor .sdp bestanden) en RIPv2 (zie later
bij routers).
2.4.3. broadcast
Wanneer een signaal gestuurd wordt naar iedereen heet dit broadcast. Let wel op dat
je duidelijk bepaalt wie 'iedereen' is. Als we de klas even beschouwen als 'iedereen',
dan is een bericht dat de hele klas bereikt een broadcast in de klas. Als we echter
alle klassen in de school beschouwen als 'iedereen', dan is een bericht dat de hele klas
bereikt, maar niet de hele school, geen broadcast.
Typisch voorbeeld hier is de BBC (British Broadcasting Corporation) die uitzendt
over de hele wereld. In datacommunicatie is broadcast meestal beperkt tot de LAN.
2.4.4. anycast
Nieuw tegenwoordig, en in de praktijk gebruikt door de root name servers van
internet is de anycast. Een anycast is een signaal naar de dichtstbijzijnde van een
groep.
24
terminologie
2.5. lan-wan-man
2.5.1. lan
Een lan (Local Area Network) is een lokaal netwerk. Dit kan een klaslokaal zijn, of
een verdieping, of zelfs een gebouw. Men spreekt over een lan omdat de computers
dicht bij elkaar staan. Heden wordt een lan meestal bepaald doordat de computers
verbonden zijn met ethernet.
Een lan kan bestaan uit meerdere kleine lan's. In deze tekening zie je een voorbeeld
van een netwerk van een school, bestaande uit drie lan's.
2.5.2. man
Een man (Metropolitan Area Network) is een term die soms gebruikt wordt voor een
netwerk dat meerdere gebouwen in dezelfde agglomeratie omvat.
2.5.3. wan
Een wan (Wide Area Network) is een netwerk waar de computers ver uit elkaar staan.
Deze computers zijn dikwijls verbonden via gehuurde lijnen. Een wan is dus het
omgekeerde van een lan. Een wan gebruikt geen ethernet maar andere protocols
zoals FDDI, Frame Relay, ATM of X.25 om computers te verbinden die enkele of
enkele duizenden kilometers van elkaar verwijderd zijn.
Hieronder een voorstelling van een bijkantoor dat via Frame Relay verbonden is met
het hoofdkwartier.
25
terminologie
De term wan wordt ook gebruikt voor netwerken die een groot oppervlak bestrijken,
zoals het internet, ook al gebruiken deze netwerken tcp/ip.
Cisco is vooral gekend voor wan technologie, zij maken routers die onder andere
lan netwerken verbinden via wan protocols.
2.5.4. pan-can-wpan
Heel soms wordt er gesproken over een pan (Personal Area Network) of een can
(Campus Area Network). Een draadloze pan is een wpan.
26
terminologie
2.6. topologie van een netwerk
Meer info en mooie tekeningen op Wikipedia:
http://nl.wikipedia.org/wiki/Netwerktopologie
http://en.wikipedia.org/wiki/Network_topology
2.6.1. punt tot punt
De eenvoudigste topologie van een netwerk is een point-to-point verbinding tussen
twee toestellen. Bijvoorbeeld een telefoonverbinding op het oude telefoonnetwerk
(circuit switched). Deze verbinding is meestal dynamisch, maar kan ook permanent
zijn, zoals de rode telefoon.
We spreken ook van een punt-tot-punt verbinding als je twee computers verbindt
met een seriële of een parallelle kabel, of als je de netwerkkaarten rechtstreeks
verbindt. Ook een klassieke modem verbinding tussen twee computers is een punttot-punt verbinding.
Niet te verwarren met peer-to-peer waar een applicatie zorgt voor overzicht tussen
de peers.
2.6.2. bus
In een bus netwerk is elke computer verbonden met dezelfde kabel (meestal een coax
kabel). Aan de twee eindes van de bus zit dan een terminator. Met T-stukjes kan je
dan computers bij op de kabel plaatsen. Er kan slechts één computer tegelijk gebruik
maken van de bus. Als twee computers tegelijk zenden, dan botsen de signalen tegen
elkaar. Deze botsing heet een collision.
2.6.3. ster
Van zodra we een centraal toestel hebben zoals een hub, switch of MAU spreken we
van een ster netwerk. Elke computer heeft een eigen kabel naar dit centrale toestel.
In theorie kan je de point-to-point topologie beschouwen als een ster met één arm.
2.6.4. ring
Een ring topologie bestaat uit toestellen die elk met twee andere toestellen verbonden
zijn, en wel zo dat ze een ring vormen. Gegevens gaan van de ene node naar de
volgende, en zo de hele ring rond. Een probleem met één verbinding kan de hele ring
platleggen.
Typisch voorbeeld hier is een Token Ring netwerk. Deze technologie van IBM
bestond fysisch uit een ster topologie met centrale MAU (Multistation Access Unit)
27
terminologie
en speciale token ring kabels naar elke computer. Logisch gezien vormden de
computers een ring. Telkens was er één computer die het token had, deze computer
kon zenden op de ring.
2.6.5. tree
Een netwerk kan ook hierarchisch georganiseerd zijn, zoals een boomstructuur. We
spreken dan van een tree met een root node aan de top van de boomstructuur. Type
voorbeeld is de logische structuur van DNS servers op internet.
2.6.6. mesh
Elke computer in een mesh kan met vele (of alle) andere computers verbonden zijn.
Een mesh netwerk bestaat dus uit computers die allen dienst kunnen doen als router.
2.6.7. hybride
Elke combinatie van bovenstaande architecturen die niet onder één van deze valt,
noemt men een hybride netwerk.
28
terminologie
2.7. telefoon en data
2.7.1. pstn
In tegenstelling tot het internet is het originele pstn (Public Switched Telephone
Network) een circuit-switched netwerk. Elk telefoongesprek eiste een nagenoeg
fysieke verbinding tussen de twee sprekers.
Dit oude analoge telefoonnetwerk, ook wel pots (Plain Old Telephone Service)
genoemd, werd gebouwd met simpele twisted pair koperdraden om de menselijke
stem over te brengen. Dit netwerk draagt golven tussen 300 en 3400 Hertz, wat
overeenkomt met een bandbreedte van 3100 Hertz.
Omdat dit netwerk (geluids)golven rechtstreeks als communicatie gebruikt, noemt
men dit een analoog netwerk.
2.7.2. twisted pair ?
Deze oude twisted pair is een paar koperdraden waar af en toe een draai in zit. Niet
te verwarren met moderne stp of utp kabels die heel wat meer twists bevatten.
2.7.3. modem
Een modem is een toestel dat een digitaal apparaat, bijvoorbeeld een computer,
verbindt met het analoge telefoonnetwerk. Aan de andere kant staat eveneens een
modem die het geluid op het telefoonnetwerk weer omzet in (digitale) bytes. Op die
manier kunnen twee computers verbonden worden.
Tegenwoordig zijn er ook modems die niet met geluid werken, zoals adsl-modems
en kabelmodems. Later volgt er een les die meer uitlegt geeft over allerhande
modems.
2.7.4. ppp
Het Point-to-Point Protocol zit in laag 2 van het OSI Model en kan twee computers
met elkaar verbinden via het telefoonnetwerk of via een seriële kabel. ppp werd veel
gebruikt voor dial up toegang tot internet.
Het ppp protocol is ontworpen om behalve met ip ook te werken met ipx/spx en
appletalk. Meer info op Wikipedia of rfc-editor.org.
http://www.rfc-editor.org/rfc/rfc1661.txt
Voor ppp was er slip om ip packetjes in te pakken zodat ze over een seriële kabel
of modem konden verstuurd worden. De meeste Unix computers ondersteunen dit
nog steeds.
29
terminologie
http://www.rfc-editor.org/rfc/rfc1055.txt
2.7.5. isdn
Het isdn of Integrated Services Digital Network is recenter dan pots en is digitaal.
Oorspronkelijk was isdn enkel te verkrijgen in stedelijke gebieden, de dag van
vandaag is het (voor thuisgebruikers) overbodig gemaakt door (a)dsl en internet via
de kabel.
Een isdn bearer(B) kanaal heeft een bandbreedte van 64kb/s, en wordt met de letter
B aangegeven. De meest courante isdn connecties werden genoteerd als 2B+D, wat
betekent dat er twee bearer kanalen van 64kb/s voorzien zijn, samen met een 16kB/
s data(D). Deze 16kB/s link wordt ook bri of Basic Rate Interface genoemd.
Table 2.6. isdn in kb en kB
isdn type
bits/s
Bytes/s
kb/s
kB/s
bearer B
64000
8000
64
8
2B
128000
16000
128
16
D kanaal
16000
2000
16
2
2B+D
144000
18000
144
18
2.7.6. kb of kB ?
Noteer even dat kb hier de afkorting is van kilobits en kB staat voor kiloBytes. In
beide gevallen staat de k of kilo voor 1000, dat was vroeger al zo, en is volgens de
nieuwe regels nog steeds zo.
Als je b(bits) en B(bytes) verwarring wil vermijden, gebruik dan steeds kilobits of
kilobytes i.p.v. van kb of kB.
2.7.7. T1
Een T1 is een 23B+D isdn verbinding in de Verenigde Staten. En ook al spreekt men
van een T1 in de rest van de wereld, eigenlijk gebruikt men dan een E1 ofte 30B+D.
Een T1/E1 noemt men ook een PRI (Primary Rate Interface).
2.7.8. T3
Een T3 lijn is een gehuurde lijn met een bandbreedte van 44.736 Mbit
per seconde. Dit type verbinding wordt meestal gebruikt tussen providers en
telefoonmaatschappijen onderling.
30
terminologie
2.8. oefening
Als oefening rekenen we even de totale bandbreedte van deze verbindingen.
Hoe lang duurt het om een bestand van 1 kilobyte, 1 megabyte, 1 gigabyte en 1
gibibyte te kopiëren langs een 9.6 kilobits/s modem, een 64 kilobits/s isdn modem,
een T1, een E1, een 10Mbit LAN, een 100Mbit LAN en een 1gigabit LAN ?
Table 2.7. weinig data over netwerken
medium
1 KB
1 MB
1 GB
1 GiB
9.6 modem
0,83"
13'53"
9d15u28'
10d8u33'
isdn modem
0,13"
2'5"
34u43'20"
37u16'58"
T1
5,43"
1u30'35"
1u37'16"
E1
4,17"
1u09'27"
1u14'34"
10Mbit LAN
0,8"
13'20"
14'19"
100Mbit LAN
1'20"
1'25"
1Gbit LAN
8"
8,59"
Idem voor een terabyte, een exabyte en een zettabyte (veelvouden van duizend dus).
Table 2.8. veel data over netwerken
medium
1 TB
1 EB
1 ZB
9.6 modem
26 jaar 155 dagen
26,4 miljoen jaar
26,4 miljard jaar
isdn modem
3jaar 351 dagen
3,9 miljoen jaar
3,9 miljard jaar
T1
62 dagen 21 uur
172 duizend jaar
172 miljoen jaar
E1
48 dagen 5 uur
132 duizend jaar
132 miljoen jaar
10Mbit LAN
9d6u13'
25 duizend jaar
25 miljoen jaar
100Mbit LAN
22u13'20"
2536 jaar
2,536 miljoen jaar
1Gbit LAN
2u13'20"
238j8m5d
253 duizend jaar
31
Chapter 3. derde les
Table of Contents
3.1.
3.2.
3.3.
3.4.
3.5.
OSI model ......................................................................................................
OSI-model versus DoD ..................................................................................
sniffer .............................................................................................................
op de computer ..............................................................................................
toestellen en lagen .........................................................................................
32
35
36
38
40
3.1. OSI model
Elke cursus over datacommunicatie en netwerken bespreekt het OSI-model, deze
cursus is daarop geen uitzondering.
In 1977 richtte de ISO (International Organization for Standardization) het OSI
(Open Systems Interconnection) op. Het OSI ontwierp een zeven-lagen model om
de werking van computernetwerken te beschrijven. De zeven lagen zijn (van 7 naar
1) Application, Presentation, Session, Transport, Network, Data Link en Physical.
Er is heden geen populair protocol dat de zeven lagen ook effectief correct
implementeert. In de praktijk worden vooral de lagen twee en drie vernoemd om
toestellen duidelijk te onderscheiden.
Table 3.1. OSI model
laag
protocols
opmerking
7. Application
dns http dhcp smtp putty
applicatieprotocols
6. Presentation
mime aes 3des ascii tls ssl
dataformaten,
compressie, versleuteling
5. Session
nfs rpc smb OS sshv2
sessie dialoog naamgeving
4. Transport
tcp udp
fragmentatie
3. Network
ip icmp ipsec rip
ip-adres, router
2. Data Link
ethernet atm ppp stp
mac-adres, bridge, switch
1. Physical
nic wlan glasvezel fddi adsl
kabels, hub, netwerkkaart
We bespreken elke laag (layer) even apart.
3.1.1. layer 7: application
De application layer beschrijft applicaties. Op het internet vandaag betekent dat
protocols zoals dns, http, ntp, smtp, snmp, ssh, ftp, X, pop3, imap, irc, telnet en tftp.
Dit is de laag die de gebruiker 'ziet' in de vorm van toepassingen.
32
derde les
3.1.2. layer 6: presentation
De presentation layer beschrijft data-formaten. De presentatielaag zorgt bij de
ontvanger dat de data wordt samengesteld in een formaat dat de applicatie begrijpt.
Het MIME protocol (rfc2046) dat toelaat om bestandsformaten (die meekomen met
e-mail of websites) te identificeren hoort ook in deze laag. Dankzij MIME komt je
applicatie te weten of de attachment een jpeg foto of een mp3 geluidje is.
3.1.3. layer 5: session
De session layer beschrijft sessies tussen hosts. Als je een website bezoekt, dan heeft
jouw computer een sessie met de webserver.
Een host op internet kan omschreven worden als elk toestel dat een ip-adres heeft,
maar zelf geen router is.
3.1.4. layer 4: transport
De transport layer beschrijft het knip- en plakwerk om data te segmenteren in
segmenten (of datagrams). Typisch vandaag vind je hier de tcp en udp protocollen.
Deze laag zorgt dat elk stukje data genummerd is, zodat de zender de in stukjes
geknipte data mooi terug kan opbouwen.
3.1.5. layer 3: network
Met de network layer komen we in een boeiende materie. Het IP protocol nestelt
zich in deze laag en zal in de cursus uitgebreid besproken worden. We zullen ook
IpSec, icmp en igmp kort bespreken en demonstreren.
Deze laag is verantwoordelijk voor de adressering van individuele packetjes, en zorgt
ervoor dat packetjes van de bron tot aan de bestemming komen (bijvoorbeeld van je
laptop naar een webserver).
3.1.6. layer 2: data link
Ook de data link layer gaat regelmatig onze aandacht opeisen. Deze laag zorgt voor
de communicatie tussen computers (of nodes) die rechtstreeks met elkaar verbonden
zijn (zoals de computers in deze klas, of nodes aan beide uiteinden van een T1 leased
line).
We bespreken in de les later het arp protocol van deze laag. We zullen zien dat arp
de verbinding is tussen laag 3 (ip) en laag 2(mac).
33
derde les
In deze laag vinden we ook het mac-adres van onze ethernet netwerkkaart. Het
ethernet protocol zelf zit ook in deze laag, en zorgt voor de link naar laag 1.
Ook isdn, ppp, slip, fddi, frame relay en ATM vinden we hier terug.
3.1.7. layer 1: physical
De physical layer beschrijft stekkers en elektromagnetische signalen van een fysieke
verbinding tussen nodes.
In deze laag vinden we bijvoorbeeld ethernet, wi-fi, twisted pair en modems, adsl,
isdn, T1, gsm, bluetooth, firewire, usb en irda.
Sommige protocols komen voor in meer dan 1 laag, omdat ze functionaliteiten hebben
die op meerdere lagen van toepassing zijn. Zo beschrijft onder andere het ATM
protocol zowel laag 1 als laag 2.
34
derde les
3.2. OSI-model versus DoD
Het zeven-lagen model van het OSI is verdrongen door het vier-lagen model
van tcp/ip. Deze protocol stack is vooral in de jaren zeventig ontwikkeld door
DARPA(Defense Advanced Research Projects Agency), een onderdeel van het
Amerikaanse Department of Defense (DoD). Vandaar dat het tcp/ip model ook wel
het DoD model wordt genoemd.
De vier lagen van dit model zijn : Application (ongeveer laag 5-6-7 osi), Transport
(ongeveer laag 4), Internet (osi laag 3) en Link Layer (osi laag 2). Op het internet
zijn heel wat grafiekjes te vinden die beide lagen naast elkaar zetten, sommige doen
dit correcter dan anderen.
Table 3.2. DoD of tcp/ip model
laag
protocols
Application
dns http dhcp smtp putty ssh ssl
Transport
tcp udp
Internet
ip icmp ipsec rip
Link Layer
ethernet token ring atm ppp stp
35
derde les
3.3. sniffer
Op het netwerk, op de bekabeling, reizen vele packetjes (hopelijk) naar hun
bestemming. Als je een sniffer gebruikt, dan kan je al deze packetjes zien (en
bewaren). Een sniffer is dus een software die toelaat dat je alles ziet wat er gebeurt
op het netwerk.
De gekendste en meest gebruikte sniffer heet wireshark (vroeger ethereal). We
zullen deze sniffer in de klas gebruiken om meer inzicht te krijgen in een netwerk.
3.3.1. interface selectie
Als je de eerste keer wireshark start, dan moet je een interface selecteren.
3.3.2. begin te snuffelen
In dit voorbeeld hebben we een ping besnuffeld tussen twee computers. Het bovenste
paneel van wireshark toont je dat het icmp protocol wordt herkend.
3.3.3. in de packetjes kijken
In het middelste paneel kan je de verschillende tcp/ip lagen open klikken. Als je in het
middelste paneel een lijn selecteert, dan zie je de positie van deze data in het packetje
in het onderste paneel.
36
derde les
3.3.4. filters
Soms verlies je de weg in de vele packetjes. Een eenvoudigde oplossing is om filters
te gebruiken, zo zie je enkel de packetjes die je interesseren. Als je arp intikt en dan
op apply klikt, dan zie je enkel arp packetjes.
Je kan twee protocols combineren met een logische of door het Engelse or ertussen
te zetten. Het voorbeeld hieronder toont hoe je arp en bootp (of dhcp) packetjes kan
bekijken.
En hier een voorbeeld van dns verkeer voor een welbepaald ip-adres.
!!!! Vraag toelating alvorens op een bedrijfsnetwerk een sniffer te gebruiken !!!!
37
derde les
3.4. op de computer
1. Installeer wireshark op de computer (google voor wireshark).
2. Open via "Start - cmd" een command prompt op Windows, of open een shell op
Unix. Laat deze open staan, we zullen er later commando's in uitvoeren.
3. Noteer het ip-adres van jouw computer en van je buurman. Gebruik hiervoor
op Windows het commando ipconfig in een command prompt. Op Unix, Linux,
MacOSX kan je ifconfig gebruiken.
4. Start wireshark, en start in wireshark een capture.
5. Open een website en controleer dat je vanalles ziet in wireshark (roep anders de
leraar). Zo weet je zeker dat wireshark werkt. Je moet nog niet begrijpen wat je
allemaal ziet, we bespreken dat later stap voor stap.
6. Werk even samen met je buurman voor deze vraag. Start op beide computers een
nieuwe capture. Deze oefening is makkelijker als je geen browser (internet explorer
of firefox) hebt open staan (want dit zorgt soms voor veel packetjes in wireshark).
Gebruik het commando ping ip-adres-buurman op 1 van de computers (niet op
beide!), naar de andere computer.
7. Welke packetjes heb je in wireshark gezien door het uitvoeren van die ping ?
Normaal gezien moet er twee arp packetjes zijn voor de ping (icmp packetjes).
8. Doe een ping naar een onbestaand ip-adres (bv 192.168.0.109). Wat zie je nu in
wireshark ?
9. Je kan in wireshark een filter instellen om niet te veel packetjes te zien, bijvoorbeeld
arp or icmp. Je kan elke lijn in wireshark selecteren en dan onderaan meer details
zien. Kan je het ip-adres of het mac-adres vinden in de gesnuffelde packetjes ?
10. Wat zie je als je het commando arp (of arp -a) uitvoert ?
11. Doe een ping naar google.com. Wat zie je nu in de uitvoer van arp ?
12. Open nu het leerplatform, zorg dat je uitgelogd bent. Start een nieuwe capture en
log dan in op het leerplatform. Stop de capture en bestudeer de boeiende informatie
die je nu hebt zoals :
38
derde les
Naam van de website :
Besturingssysteem van de webserver :
Besturingssysteem van jouw pc :
MAC adres van jouw pc :
Webserver software :
Browser op jouw pc :
ip-adres van de webserver :
ip-adres van jouw pc :
De poort gebruikt om de webserver te bereiken :
De poort gebruikt om terug naar je client te gaan :
Jou gebruikersnaam :
Jou paswoord :
13. Waarom zie je het MAC-adres van de webserver niet ?
14. Welk ander MAC-adres zie je dan wel ?
Iedereen die met een sniffer tussen jouw pc en de webserver zit kan dezelfde
informatie zien. De mensen die de webserver beheren, beschikken ook over deze
informatie...
15. Probeer het paswoord te sniffen van een gmail of hotmail account. Waarom lukt
dit niet ?
16. Kopieer een tekstbestand van de ene computer naar de andere. Kan je dit bestand
ook lezen via de sniffer ?
17. Kan je ook tekstbestanden lezen die andere computers in de klas naar elkaar
sturen ? Waarom wel of waarom niet ?
39
derde les
3.5. toestellen en lagen
In een netwerk vinden we heel wat toestellen (devices). We zetten ze even laag per
laag op een rijtje.
3.5.1. physical
Toestellen in laag 1 zijn in principe onzichtbaar op ons netwerk. We kunnen ze
niet allemaal eenvoudig met software detecteren. We vinden hier onder andere de
netwerkkaart, de repeater, de hub en de modem.
Hieronder de voorstelling van een hub in een netwerkdiagram.
De netwerkkaart of nic (Network Interface Card) of ook network adapter is
tegenwoordig een vast onderdeel van elke computer. De netwerkkaart ontvangt
elektrische signalen en zet deze om in bytes (en omgekeerd). De netwerkkaart
controleert ook of een packetje van het netwerk wel voor haar is of niet. Indien niet,
dan gooit de netwerkkaart dit packetje weg (drop).
De meeste netwerkkaarten vandaag zijn ethernet kaarten met een 48-bit uniek macadres. Enkele jaren terug waren ook Token Ring kaarten courant in gebruik.
Een repeater is een versterker. Elektrische signalen verzwakken, dus als de
netwerkkabel te lang is, dan kan een repeater het signaal versterken.
Een hub wordt ook wel een multiport repeater genoemd. Net zoals een repeater zal
ook een hub het elektrische signaal versterken. Daar waar een repeater tussen twee
kabels zit, zit een hub tussen meerdere kabels, en versterkt hij het signaal naar alle
verbonden kabels.
Hubs kunnen actief of passief zijn. Een passieve hub versterkt het elektrische signaal,
en logischerwijs ook de ruis op het kanaal. Te veel passieve hubs achter elkaar zorgt
voor een te grote versterking van de ruis, waardoor het signaal verloren kan gaan.
Een actieve hub is slimmer dan een passieve hub. In plaats van het signaal gewoon
te versterken, leest een actieve hub de bits van een signaal, en stuurt deze bits naar
alle verbonden kanalen. Op deze manier treedt er geen ruisversterking op.
40
derde les
Een modem (modulator/demodulator) is een toestel dat (in het geval van een potsmodem) bits omzet in geluid, en omgekeerd aan de andere kant van de lijn dit geluid
weer omzet in dezelfde bits.
Een kabel modem zoals die van Telenet of Brutele vertaalt bits naar frequenties die
oorspronkelijk bedoeld waren om TV-signalen door te sturen. Ook ADSL modems
gebruiken een frequentie die buiten de menselijke stem liggen.
3.5.2. data link
In deze laag vinden we toestellen zoals een bridge en een switch. In dat laatste geval
uiteraard een layer 2 switch.
Hieronder de voorstelling van een switch in een netwerkdiagram.
Een bridge en switch zijn beide slimmer dan een hub of repeater, in de zin dat deze
laatste niet weten wat een mac-adres is. Een bridge en een switch interpreteren het
mac-adres om te weten of (in het geval van de bridge) en waar (in het geval van de
switch) ze het packetje doorsturen.
Een echte bridge is zeldzaam vandaag (want een switch kan alles wat een bridge kan).
3.5.3. network
De router en de layer 3 switch zijn typische layer 3 toestellen. Toestellen in deze
laag weten wat een ip-adres is, en kunnen uiteraard ook alles wat layer 2 devices
kunnen.
Hieronder de voorstelling van een router in een netwerkdiagram.
41
derde les
Een echte router verbindt netwerken (bijvoorbeeld ethernet met T1, of ADSL met
WiFi), maar de term wordt ook gebruikt voor ethernet-ethernet toestellen.
Een layer 3 switch kent bijvoorbeeld icmp en wordt ook gebruikt om sniffen van het
netwerk te verhinderen.
3.5.4. hogere lagen
Een gateway is een toestel dat protocols vertaalt, bijvoorbeeld NetBIOS naar tcp/ip.
42
Chapter 4. vierde les
Table of Contents
4.1.
4.2.
4.3.
4.4.
4.5.
4.6.
4.7.
4.8.
onze data op reis ............................................................................................
onze data onderweg .......................................................................................
bestemming bereikt ........................................................................................
er komt antwoord ...........................................................................................
lagen oefening ................................................................................................
tcp en udp ......................................................................................................
ping en arp .....................................................................................................
packetjes .........................................................................................................
43
45
46
46
48
49
51
52
4.1. onze data op reis
Dit hoofdstuk beschrijft zeer beknopt de weg die onze data bewandelt als we in een
browser zoals firefox een webpagina van de VRT (van teletekst) bekijken. Je kan
dit hoofdstuk bekijken als een beknopt overzicht van de hele cursus, alles wat we in
de cursus bekijken is wel ergens in dit verhaal te plaatsen.
4.1.1. laag 7: applicatie
De reis begint in de bovenste laag. Dat is laag 7, de applicatielaag. We gebruiken als
voorbeeld de applicatie genaamd firefox waarop pagina 525 van vrt teletekst open
staat. Uiteraard bevindt de applicatie firefox zich in de bovenste laag.
We klikten op het knopje toon om de pagina te verversen. Klikken op dat knopje
stuurt een http request naar de vrt teletekst webserver. Het layer 7 protocol waar
webservers en web clients (aka browsers) mee werken is http (hyper text transfer
protocol). Onze data zakt naar laag 6.
4.1.2. lagen 6 en 5: presentatie en sessie
Deze lagen zijn niet echt van toepassing omdat we met tcp/ip werken en niet met
een 7-lagig osi protocol. Je zou kunnen zeggen dat de browser in laag 6 een html
document ontvangt van de webserver. Dit html document kan bestaan uit ascii of
unicode karakters.
43
vierde les
4.1.3. laag 4: transport
In deze laag zien we hoe de tcp van tcp/ip een sessie opzet.
Zoals eerder al geschreven vindt er in deze laag wat knip- en plakwerk plaats. Alleen
is het nu net een geval waar er niet moet geknipt worden. We vragen een webpagina
aan een webserver, en deze vraag past perfect in een packetje, dus er moet niet
geknipt worden. Het protocol aan het werk hier is tcp (Transfer Control Protocol).
Maar er gebeurt toch nog iets meer dan enkel de vraag sturen van firefox naar de vrt
teletekst webserver. Het tcp protocol gaat eerst een tcp sessie opzetten met de vrt
webserver. We kunnen dit controleren door een sniffer op te starten.
Je ziet drie tcp packetjes voordat het http packetje (wat ook een tcp packetje is)
wordt verstuurd. tcp zet een sessie op door eerst een packetje te sturen met de vraag
om een sessie op te zetten (SYN), hierop komt een antwoord van de VRT webserver
(SYN,ACK) en als laatste wordt er vanuit mijn laptop nog een (ACK) gestuurd.
In het screenshot hierboven zie je een http GET van pagina 511 i.p.v. pagina 525,
maar dat heeft geen belang voor de theorie.
4.1.4. laag 3: netwerk
Onze vraag voor een webpagina moet terecht komen bij de webserver van de vrt.
Deze computer staat niet in onze klas (en ook niet bij mij thuis). Het ip protocol
zorgt voor de bezorging van het packetje ter plaatse in de Reyerslaan (waar deze vrt
webserver staat).
Om op de correcte plaats te geraken, is er een ip-adres nodig. Het ip-adres van de
vrt webserver is 193.191.175.137. We vinden dit terug in elke packetje dat we naar
de webserver van de vrt sturen, in de ruimte voorzien voor destination IP-address.
Als bron ip-adres wordt telkens het ip-adres van mijn laptop thuis gebruikt, in dit
geval 192.168.1.34.
Onze sniffer vertaalt de hexadecimale code die de computer gebruikt naar menselijk
leesbare decimale cijfers.
44
vierde les
Hoe kan onze computer het ip-adres van de webserver van vrt teletekst kennen ?
Daarvoor doet tcp/ip een beroep op dns. Indien je voor het eerst sinds een tijdje naar
de website van teletekst gaat op url http://teletekst.een.be, zal er een dns-query
gaan van onze computer naar onze lokale DNS server.
DNS (Domain Name System) wordt later uitgebreid besproken, maar het zou kunnen
dat je het volgende ziet in de sniffer.
4.1.5. laag 2: data link
De OSI data link layer is een deel van de DoD link layer van tcp/ip. In deze laag
maken we gebruik van het MAC adres van een netwerkkaart. Een mac adres is een
fysisch adres dat ingebrand is in de netwerkkaart.
Voordat ons eerste packetje kan vertrekken, moet het mac-adres van de lokale
bestemming gevonden worden. De webserver van vrt teletekst staat niet bij mij thuis,
dus de lokale bestemming is mijn router (aka de adsl modem). Deze heeft ip-adres
192.168.1.1.
Mijn laptop zal een arp broadcast uitvoeren om het mac-adres te vinden van de
computer met ip-adres 192.168.1.1. Mijn router zal hierop antwoorden. In een sniffer
ziet dit er als volgt uit.
4.1.6. laag 1: physical
De netwerkkaart is gelukkig als het packetje volledig is, en smijt het letterlijk op mijn
lokaal netwerk. Fysisch is dit een broadcast, alle computers in het lokale netwerk
ontvangen dit packetje, maar enkel de enige correcte bestemmeling zal het packetje
ook aanvaarden. Die correcte bestemming is mijn lokale router.
In de OSI wereld is dit een aparte laag, in de DoD wereld is dit een onderdeel van
de DoD link layer.
4.2. onze data onderweg
Onze http request voor een teletekst pagina is nu onderweg van centrum Antwerpen
naar de Reyerslaan in Brussel. Het packetje springt van router tot router, totdat het
op het netwerk van de webserver van de vrt zit.
Je kan deze weg (de routers) bekijken door een traceroute te doen. Hieronder zie je
de uitvoer van het traceroute commando op mijn laptop.
45
vierde les
traceroute to 193.191.175.137 (193.191.175.137), 30 hops max, 60 byte packets
1 illyria (192.168.1.1) 0.812 ms 1.285 ms 1.764 ms
2 213.219.148.1.adsl.dyn.edpnet.net (213.219.148.1) 26.453 ms 26.833 ms 27.216 ms
3 ndl2-rb01.edpnet.be (213.219.132.237) 27.655 ms 28.035 ms 28.412 ms
4 adslgwbe.edpnet.net (212.71.1.78) 28.924 ms 29.305 ms 29.798 ms
5 10ge.cr1.brueve.belnet.net (194.53.172.65) 30.165 ms 30.543 ms 30.888 ms
6 10ge.ar1.brucam.belnet.net (193.191.16.193) 31.991 ms 31.530 ms 31.960 ms
7 vrt.customer.brussels.belnet.net (193.191.4.189) 32.046 ms 9.004 ms 24.205 ms
8 * * *
9 * * *
Wat je ziet, is dat de eerste router illyria heet en 192.168.1.1 als ip-adres heeft. Dit
is mijn lokale adsl modem met ingebouwde router functie. Op de tweede lijn zie je
de andere kant van mijn adsl modem, de kant van mijn internet service provider
(ISP) genaamd edpnet.
Daarna passeren we enkele routers van edpnet, om vervolgens te reizen naar belnet.
Het Belgische belnet is een snel backbone netwerk waar o.a. universiteiten en
openbare instellingen op aangesloten zijn.
De laatste router die we zien heet vrt.customer.brussels.belnet.net. Uit deze naam
kan je afleiden dat de VRT een klant is van belnet in Brussel.
Nadien zien we enkel nog sterretjes, dat is omdat de systeembeheerder van de VRT
beslist heeft om geen traceroute door zijn firewall te laten. Onze http request mag
gelukkig wel door.
4.3. bestemming bereikt
Als alles goed gaat, dan bereikt onze data (of onze http request) zijn bestemming. De
laatste router gooit onze data op het lokale netwerk van de webserver van de VRT.
De netwerkkaart van deze server converteert de elektrische signalen in bytes, en
controleert of de eerste zes bytes wel overeenstemmen met haar MAC adres. Dat is
gelukkig juist, dus is het de beurt aan IP.
Het ip protocol controleert of het destination ip address wel correct is, en dat is
(gelukkig) weeral juist.
Verdere metadata in het packetje vertelt deze computer dat het een tcp packet is,
met als bestemming de http-server.
De http server (of webserver) zelf zoekt dan de gevraagde webpagina, en stuurt
deze webpagina als antwoord op onze vraag.
4.4. er komt antwoord
De webserver heeft de bewuste webpagina klaar en wil een antwoord sturen naar
mijn laptop. Deze computer kent mijn ip-adres omdat dit meegeleverd is in het
packetje als source ip-adres.
46
vierde les
We zakken weer van de applicatie-laag (ja ook een http-server is een applicatie) naar
beneden.
Tussen haakjes, de presentatie van deze data aan de browser gebeurt met een mime
type. Email berichten (en websites) bestaan al lang niet meer enkel uit ascii karakters,
maar bevatten ook andere karakters, foto's, geluid en film.
MIME (Multipurpose Internet Mail Extensions) defineert een mechanisme om
deze inhoud te versturen over e-mail (of zoals in ons voorbeeld over http). Je zou
mime in osi layer 6 kunnen zetten.
De tcp-sessie die mijn laptop heeft opgezet, die is er nog steeds. Het antwoord kan dus
onmiddellijk door de transport-laag naar ip, of toch bijna. De gevraagde webpagina
is immers te groot om in 1 packetje door te sturen, dus moet er geknipt en geplakt
worden door tcp. Dit kan je zien in de sniffer als een opeenvolging van tcp segment
packetjes, gevolgd door een tcp acknowledgement.
Het ip protocol zal zorgen voor de terugweg van Brussel naar Antwerpen, eventueel
via andere routers.
Eens het antwoord terug op ons netwerk is, gaat de data van onder naar boven door
de lagen, totdat onze browser de webpagina kan tonen.
4.4.1. vragen
1. Hoe weet de computer van de VRT dat het packetje naar de http-server moet ?
2. Hoe weet mijn laptop voor welke applicatie het packetje is ?
47
vierde les
4.5. lagen oefening
0. Kies een netwerk voor de volgende vragen : thuis, werk, klas
1. Maak een tekening (papier of pc) van je netwerk voor laag 1.
2. Maak een tekening (papier of pc) van je netwerk voor laag 2.
3. Maak een tekening (papier of pc) van je netwerk voor laag 3 (wanneer je een
website bezoekt).
4. Maak een tekening (papier of pc) van je netwerk voor laag 7 (wanneer je een
website bezoekt).
48
vierde les
4.6. tcp en udp
Behalve tcp vinden we in layer 4 ook nog udp. U hebt genoteerd dat alvorens een
http request verstuurd wordt, er eerst een tcp handshake plaatsvindt, maar dat er
voor de dns query helemaal geen handshake was. Dat komt omdat http gebruikt
maakt van tcp in layer 4, terwijl dns hier werkt bovenop udp.
4.6.1. tcp
tcp staat voor Transmission Control Protocol. Het is een protocol dat een connectie
opzet alvorens data te versturen. Als je zekerheid wil dat je packetjes aankomen, dan
is tcp het aangewezen protocol. In de tcp header zit heel wat overhead. Als een tcp
packetje niet aankomt, dan wordt het nogmaals verstuurd.
De huidige tcp standaard werd vastgelegd in rfc 793 van 1981.
De tcp triple handshake gaat steeds vooraf aan de tcp connectie. Dit wil zeggen dat
er minstens vier packetjes over het netwerk gaan.
4.6.2. udp
In tegenstelling tot tcp is er bij udp geen connectie, en ook geen handshake. Men
noemt udp een connectionless protocol.
udp heeft minder overhead dan tcp en is bijgevolg sneller voor het doorsturen van
data. Maar udp doet geen controle of een packetje ook wel degelijk aankomt. Als een
udp packetje zijn bestemming niet bereikt, dan ben je het kwijt.
49
vierde les
4.6.3. oefening
Bedenk zelf wanneer je udp zou gebruiken, en wanneer tcp.
e-mail van je manager ?
website van een klant ?
live radio uitzending van Clijsters tegen Henin ?
dns ?
50
vierde les
4.7. ping en arp
Het arp protocol is een layer 2 protocol dat een link legt tussen het ip-adres en het
mac-adres van een computer. We hebben in de klas deze werking aangetoond met
behulp van het ping commando en de wireshark sniffer. We hebben ook het arp
commando uitgevoerd om de arp-cache-table te bekijken.
51
vierde les
4.8. packetjes
Op het bord heb ik regelmatig 'packetjes' getekend. Technisch spreken we van een
ethernet frame en van een ip datagram. Het exacte formaat (per bit of byte) van
deze packetjes behoort niet tot de leerstof. Ik veronderstel hier enkel dat jullie weten
dat een ethernet netwerkkaart de eerste zes bytes, zijnde het bestemmings-mac-adres
vergelijkt met haar eigen mac-adres.
Hieronder een ethernet frame met de bytes op ware grootte en enige info op de juiste
positie.
Omdat we toch iets moeten kennen van mac-adressen, ip-adressen en poorten
om protocols en toestellen te begrijpen, gebruiken we onderstaande vereenvoudigde
voorstelling van een packetje op het netwerk.
52
Chapter 5. weergave getallen
Table of Contents
5.1. leren tellen ..................................................................................................... 53
5.2. veel voorkomende getallen ............................................................................ 57
5.3. machten van twee .......................................................................................... 57
5.1. leren tellen
5.1.1. decimaal of tientallig stelsel
In het decimaal stelsel zijn er tien cijfers waarmee we kunnen werken, dat zijn in
opklimmende volgorde 0, 1, 2, 3, 4, 5, 6, 7, 8 en 9. Met deze cijfers kunnen we van
nul tot negen tellen.
Als we nog verder willen tellen, dan moeten we twee cijfers combineren. Het eerste
cijfer heeft dan een grotere waarde dan het tweede. De waarde van het eerste cijfer
is het tienvoud van zijn nominale waarde.
Willen we nog verder, dan zetten we nog een extra cijfer voor de bestaande twee, en
vermenigvuldigen deze waarde met tien en nog eens tien.
5.1.2. binair of tweetallig stelsel
In het binair stelsel zijn er twee cijfers waarmee we kunnen werken, dat zijn in
opklimmende volgorde 0 en 1. Met deze cijfers kunnen we van nul tot een tellen.
Als we nog verder willen tellen, dan moeten we twee cijfers combineren. Het eerste
cijfer heeft dan een grotere waarde dan het tweede. De waarde van het eerste cijfer
is het tweevoud van zijn nominale waarde.
Willen we nog verder, dan zetten we nog een extra cijfer voor de bestaande twee, en
vermenigvuldigen deze waarde met twee en nog eens twee.
5.1.3. hexadecimaal of zestientallig stelsel
In het hexadecimaal stelsel zijn er zestien cijfers waarmee we kunnen werken, dat
zijn in opklimmende volgorde 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E en F. Met deze
cijfers kunnen we van nul tot F tellen.
Als we nog verder willen tellen, dan moeten we twee cijfers combineren. Het eerste
cijfer heeft dan een grotere waarde dan het tweede. De waarde van het eerste cijfer
is het zestienvoud van zijn nominale waarde.
53
weergave getallen
Willen we nog verder, dan zetten we nog een extra cijfer voor de bestaande twee, en
vermenigvuldigen deze waarde met zestien en nog eens zestien.
5.1.4. octaal of achttallig stelsel
In het octaal stelsel zijn er acht cijfers waarmee we kunnen werken, dat zijn in
opklimmende volgorde 0, 1, 2, 3, 4, 5, 6 en 7. Met deze cijfers kunnen we van nul
tot zeven tellen.
Als we nog verder willen tellen, dan moeten we twee cijfers combineren. Het eerste
cijfer heeft dan een grotere waarde dan het tweede. De waarde van het eerste cijfer
is het achtvoud van zijn nominale waarde.
Willen we nog verder, dan zetten we nog een extra cijfer voor de bestaande twee, en
vermenigvuldigen deze waarde met acht en nog eens acht.
5.1.5. talstelsels naast elkaar
We maken even een tabel om deze talstelsel naast elkaar te zetten.
Table 5.1. talstelsels naast elkaar
decimaal
binair
hexadecimaal
octaal
0
0
0
0
1
1
1
1
2
10
2
2
3
11
3
3
4
100
4
4
5
101
5
5
6
110
6
6
7
111
7
7
8
1000
8
10
9
1001
9
11
10
1010
A
12
11
1011
B
13
12
1100
C
14
13
1101
D
15
14
1110
E
16
15
1111
F
17
16
10000
10
20
17
10001
11
21
18
10010
12
22
54
weergave getallen
55
weergave getallen
5.1.6. oefening talstelsels
1. Vul de ontbrekende waarden in. (Octaal is niet belangrijk.)
Table 5.2. oefening talstelsels
decimaal
binair
hexadecimaal
octaal
5
100
FF
192
300
168
0A
33
101010
2. Schrijf de cijfers C0 A8 01 01 in decimale vorm.
3. Hoe schrijf je 255.255.255.0 in hexadecimale vorm ?
4. En nu een moeilijke vraag : Wanneer is 6 maal 9 gelijk aan 42 ?
56
weergave getallen
5.2. veel voorkomende getallen
Het layer 2 broadcast mac adres bestaat uit 48 eentjes, maar wordt altijd hexadecimaal
voorgesteld:
FF:FF:FF:FF:FF:FF
Standaard classful subnet masks (we bespreken dit later in detail) komen soms
decimaal, soms hexadecimaal voor in de uitvoer van systeembeheer programma's:
decimaal
255.0.0.0
255.255.0.0
255.255.255.0
hexadecimaal
FF000000
FFFF0000
FFFFFF00
Alle data en alle applicaties op de computer bestaan uit bits. Als je in een tekstbestand
het getal 42 wil bewaren, dan worden de volgende bits (in een volledige byte)
bewaard:
00101010
5.3. machten van twee
De map van het internet van pagina 16 bestaat uit exact 256 vakjes, in een byte
kunnen 8 bits, ip-adressen bestaan uit 32 bits, het aantal mogelijke waarden die je
in een byte kan steken is 256, heel wat encryptie werkt heden met sleutels van 128bits, niet toevallig allemaal machten van het getal twee!
Machten van twee zijn eenvoudiger te schrijven in het binaire of het hexadecimale
stelsel.
Table 5.3. machten van twee
decimaal
binair
hexadecimaal
2
10
2
4
100
4
8
1000
8
16
10000
10
32
100000
20
64
1000000
40
128
10000000
80
256
100000000
100
Ook grotere machten van twee worden gebruikt. Zo is de grootte van een sector op
harde schijven (voorlopig) 512 bytes, is het aantal tcp en udp poorten gelijk aan
65.536, is het aantal kleuren dat een truecolor videokaart kan tonen 16777256, is
de 640KB geheugen in oude computers niet toevallig 512KB + 128KB en is een
kilobyte (of kibibyte) exact 1024 bytes. De maximum grootte van variabelen in
57
weergave getallen
programmeertalen is ook een macht van twee (65536 of 4294967296), schermen
hebben wel eens een 1024x786 of 1280x1024 resolutie (768 = 512 + 256, 1280 = 1024
+ 256) en Microsoft Excel kan maximum 65536 of 1048576 kolommen bevatten.
Table 5.4. grote machten van twee
decimaal
hexadecimaal
256
100
512
200
1024
400
2048
800
4096
1000
65536
10000
16777216
1000000
4294967296
100000000
58
Chapter 6. ip-adressen
Table of Contents
6.1. oefening ..........................................................................................................
6.2. ip-adressen ......................................................................................................
6.3. private en publieke adressen ..........................................................................
6.4. ip-adres klassen ..............................................................................................
6.5. oefening ip-adres klassen ...............................................................................
6.6. default subnet masks ......................................................................................
6.7. oefening default subnet masks .......................................................................
6.8. network id en host id .....................................................................................
6.9. oefening network id en host id ......................................................................
6.10. lokale computer of niet ? .............................................................................
6.11. oefening lokale computer of niet? ...............................................................
6.12. subnet notatie ...............................................................................................
6.13. computers in een netwerk tellen ..................................................................
59
61
61
63
63
64
64
65
66
67
68
69
69
6.1. oefening
0. Sluit je browser, tijdens de oefening ben je even het internet kwijt.
1. Gebruik ipconfig op Microsoft of ifconfig op Unix om je eigen ip-adres te vinden.
Noteer het hier.
2. Zoek een partner en noteer zijn/haar ip-adres.
3. Test met ping dat jullie elkaar kunnen bereiken. Dit zou moeten werken.
ping ip-adres-partner
4. Test met ping dat jullie de router (192.168.0.4) en dnsserver (192.168.0.14) kunnen
bereiken. Dit zou moeten werken.
5. Zoek de grafische interface om de eigenschappen van je ip-configuratie aan te
passen, en noteer de informatie de je daar vindt. De kans is groot dat hier 'automatisch'
of 'dhcp' staat.
59
ip-adressen
6. Gebruik deze grafische interface en de informatie uit vraag 1 om het eerste cijfer
van je ip-adres aan te passen. Verander dit eerste cijfer in 10. Heb je nog steeds
verbinding met je buurman ? (Dit zou moeten werken als jullie allebei de aanpassing
gedaan hebben.)
7. Test met ping dat jullie nog steeds de router (192.168.0.4) en dnsserver
(192.168.0.14) kunnen bereiken. Dit zou niet mogen werken.
8. Lukt dit ook als je het eerste cijfer verandert in 11 ? Zou moeten werken.
9. Lukt dit ook als je het eerste cijfer verandert in 127 ? Zou niet mogen werken.
10. Verander de eerste twee cijfers van je ip-adres in 169.254, maar behoud de laatste
twee. Lukt dit ?
11. Verander je ip-adres in 192.168.1.259. Waarom lukt dit niet ?
12. Zet je ip-configuratie terug zoals ze stond voor de oefening. Test dat je terug
verbinding hebt met internet door te surfen naar www.linux-training.be ;-)
60
ip-adressen
6.2. ip-adressen
Een ip-adres is een 32-bit getal dat als logisch adres aan een computer wordt gegeven.
Een ip-adres is de unieke identificatie van een host op laag 3.
Theoretisch hebben we 4294967296 ip-adressen (256*256*256*256).
In decimale octetjes schrijven we dat van 0.0.0.0 tot 255.255.255.255,
in hexadecimale bytes is dat van 00:00:00:00 tot FF:FF:FF:FF
en
binair
is
dat
van
00000000.00000000.00000000.00000000
tot
11111111.11111111.11111111.11111111.
6.3. private en publieke adressen
Om een geldig ip-adres te hebben op het internet, moet je dit aankopen bij je lokale
RIR (Regional Internet Registry). Voor Europa is dit RIPE NCC (Réseaux IP
Européens Network Coordination Centre) in Amsterdam.
In de meeste gevallen is het de isp (Internet Service Provider) die deze aankoop
doet, eindgebruikers merken daar weinig van.
Niet alle ip-adressen zijn geldig op internet. Sommige reeksen zijn gereserveerd voor
speciale doeleinden.
6.3.1. private adressen
Er zijn drie reeksen gereserveerd voor privé-gebruik. Deze ip-adressen zijn niet
te gebruiken op internet (ze werken niet). Technisch kan je zeggen dat routers op
internet alle packetjes voor deze adresssen automatisch verwerpen.
De drie reeksen zijn:
Table 6.1. private ip-adressen
eerste ip-adres
laatste ip-adres
aantal adressen in de reeks
10.0.0.0
10.255.255.255
16777216 (+16 miljoen)
172.16.0.0
172.31.255.255
1048576 (+1 miljoen)
192.168.0.0
192.168.255.255
65536 (+65 duizend)
De volledige definitie van deze reeksen vindt u in rfc 1918.
http://www.rfc-editor.org/rfc/rfc1918.txt
6.3.2. loopback adressen
Elke tcp/ip stack heeft een virtuele loopback interface. Dit is een ip-adres dat
gebruikt wordt om naar de computer zelf te wijzen (en om te testen of je tcp/ip stack
werkt).
61
ip-adressen
Meestal is dit 127.0.0.1, vaak wijst de hele reeks echter naar ditzelfde adres.
van 127.0.0.0 tot 127.255.255.255
Meestal wordt localhost vertaald naar 127.0.0.1.
6.3.3. zeroconf adressen
Een zeroconf adres wordt ook wel een link local adres genoemd. Het is een ip-adres
dat begint met 169.254 en dan twee willekeurig gekozen bytes. Microsoft noemt dit
APIPA (Automatic Private IP Adddressing).
Een host die automatisch een ip-adres zou moeten krijgen van dhcp, maar dit niet
krijgt, kan zichzelf van een zeroconf adres voorzien. De host zal op het lokale netwerk
(de local link) eerst testen dat geen enkele andere host dit adres gebruikt, alvorens
het aan zichzelf toe te wijzen.
van 169.254.0.0 tot 169.254.255.255
Als een computer in de praktijk in een bedrijf een zeroconf adres heeft, dan wil dit
meestal zeggen dat de netwerkbekabeling van de computer onderbroken is. Soms
duidt zo'n adres op een probleem met de dhcp server.
6.3.4. oefening ip-adressen
Duid voor de volgende ip-adressen aan waarvoor ze dienen (privaat, publiek,
loopback of zeroconf)
Table 6.2. oefening gereserveerde ip-adressen
ip-adres
gereserveerd doel
192.168.244.16
privaat
195.238.2.21
169.254.33.42
127.0.0.1
9.33.42.12
10.11.12.13
171.191.42.33
172.18.33.42
62
ip-adressen
6.4. ip-adres klassen
IP-adressen zijn onderverdeeld in klassen. Een adres van klasse A begint binair met
als meest significante bit een 0. Een klasse B adres begint binair met 10, klasse C
met 110, klasse D met 1110 en tenslotte klasse E met 1111.
De eerste byte decimaal omgerekend, komen we tot de volgende indeling van ipadressen:
Table 6.3. ip address classes
class
first bit(s)
first decimal byte
A
0
0-127
B
10
128-191
C
110
192-223
D
1110
224-239
E
1111
240-255
Alle ip-adressen die beginnen met een getal lager dan 127 zijn dus klasse A adressen
(onthoud dat 127 zelf gereserveerd is voor de loopback adapter).
6.5. oefening ip-adres klassen
Duid voor de volgende ip-adressen steeds de correcte klasse aan:
Table 6.4. oefening classful ip addressing
ip-adres
klasse ?
192.168.42.33
9.101.12.01
A
188.33.42.33
9.42.12.33
230.19.4.42
11.19.6.200
191.192.193.194
134.0.0.42
63
ip-adressen
6.6. default subnet masks
Klasse A, B en C ip-adressen hebben een standaard subnet mask. Klasse A heeft een
subnet mask waar de eerste 8 bits gelijk zijn aan 1 (en de rest aan 0). Bij klasse B zijn
de eerste 16 bits een 1, en bij klasse C de eerste 24 bits.
Dit geeft ons de volgende tabel:
Table 6.5. default subnet mask
klasse
aantal bits op 1
default subnet mask
A
8
255.0.0.0
B
16
255.255.0.0
C
24
255.255.255.0
6.7. oefening default subnet masks
Schrijf voor de volgende ip-adressen steeds de default subnet mask op:
Table 6.6. oefening default subnet masks
ip-adres
mask ?
192.168.42.33
9.101.12.01
255.0.0.0
188.33.42.33
9.42.12.33
230.19.4.42
11.19.6.200
191.192.193.194
134.0.0.42
64
ip-adressen
6.8. network id en host id
Bij het uitvoeren van ifconfig op een Unix/Linux en ipconfig op een MS Windows
computer merkt je dat je steeds een ip-adres en en subnet mask krijgt. De combinatie
van die twee bepaalt in welk netwerk een computer zich bevindt.
Als het subnet mask gelijk is aan 255.0.0.0, dan vormt de eerste byte van het ip-adres
aangevuld met nullen het network id. Bij 255.255.0.0 als subnet mask zijn er twee
bytes (aangevuld met nullen) die het network id vormen. Bij 255.255.255.0 zijn er
drie bytes (en een nul) die het network id vormen.
De rest van het ip-adres is dan het host id. Het network id bepaalt het netwerk waarin
een computer zich bevindt, het host id is uniek voor een host binnen het netwerk.
Een overzichtje met voorbeelden:
Table 6.7. network id en host id
ip-adres
default subnet mask
network id
host id
192.168.1.42
255.255.255.0
192.168.1.0
42
192.168.1.33
255.255.255.0
192.168.1.0
33
192.168.12.1
255.255.255.0
192.168.12.0
1
172.16.12.1
255.255.0.0
172.16.0.0
12.1
172.16.33.42
255.255.0.0
172.16.0.0
33.42
10.3.0.4
255.0.0.0
10.0.0.0
3.0.4
10.33.0.42
255.0.0.0
10.0.0.0
33.0.42
65
ip-adressen
6.9. oefening network id en host id
1. Noteer de network id en host id voor de volgende ip-adressen.
192.168.42.42
9.8.7.6
42.42.42.42
169.254.42.1
191.42.17.18
193.42.17.18
66
ip-adressen
6.10. lokale computer of niet ?
Wat is het nut van het kennen van een network id? Wel het network id bepaalt of
een computer lokaal in je netwerk staat of niet.
Indien je wil communiceren met een andere computer, dan heb je zijn ip-adres nodig.
Als die computer dan op hetzelfde netwerk zit, dan doet jouw computer een arp om
het MAC adres van de andere computer te vinden. Als die computer echter op een
ander netwerk zet, dan stuurt jouw computer het packetje naar de router.
Alvorens over te gaan tot een arp (voor die andere computer of voor de router) zal
jouw computer het network id van jouw computer vergelijken met dat van de andere
computer. Indien gelijk, dan betreft het een computer op hetzelfde netwerk, indien
verschillend, dan staat die computer achter de router.
Een overzichtje met voorbeelden (gebruik standaard subnet mask):
Table 6.8. local or remote computer?
computer A
computer B
network id A
network id B
lokaal ?
192.168.1.42
192.168.1.33
192.168.1.0
192.168.1.0
ja
192.168.1.33
192.168.12.1
192.168.1.0
192.168.12.0
nee
10.3.0.4
10.33.0.42
10.0.0.0
10.0.0.0
ja
67
ip-adressen
6.11. oefening lokale computer of niet?
1. Staan de volgende computers in hetzelfde netwerk ?
192.168.1.42 en 192.168.1.33
10.105.42.42 en 10.105.42.33
10.105.42.42 en 10.99.42.33
11.16.42.42 en 12.16.42.33
169.254.18.42 en 169.254.33.42
191.168.42.42 en 191.168.33.33
9.1.2.3 en 9.123.234.42
68
ip-adressen
6.12. subnet notatie
We kunnen de notatie van ip-adres/subnet mask afkorten als we voor de subnet
mask enkel het aantal bits vernoemen dat op 1 staat. Zo wordt 255.0.0.0 gelijk aan /8,
wordt 255.255.0.0 gelijk aan /16 en 255.255.255.0 gelijk aan /24.
Afgekort kunnen we dus 192.168.1.42/24 schrijven i.p.v. 192.168.1.42 met subnet
mask 255.255.255.0 .
Table 6.9. cidr notatie
klasse
default subnet mask
notatie
A
255.0.0.0
/8
B
255.255.0.0
/16
C
255.255.255.0
/24
6.13. computers in een netwerk tellen
Hoeveel computers kan je zetten in een netwerk? Houd rekening met de network
id die zelf al een ip-adres gebruikt. Elk netwerk heeft ook een broadcast adres (alle
decimale delen van het host id zijn dan 255).
Bijvoorbeeld:
Table 6.10. aantal computers in een subnet
network
network id
broadcast ip
max aantal hosts
192.168.1.0/24
192.168.1.0
192.168.1.255
256 - 2 = 254
192.168.15.0/24 192.168.15.0 192.168.15.255
256 - 2 = 254
172.16.0.0/16
172.16.0.0
172.16.255.255
256*256 - 2 = 65534
10.0.0.0/8
10.0.0.0
10.255.255.255
256*256*256 - 2 = 16777214
69
Chapter 7. 4 miljard ip-adressen
Table of Contents
7.1.
7.2.
7.3.
7.4.
te weinig ip-adressen ? ................................................................................... 70
ip-adressen verdelen ....................................................................................... 70
probleem voor de routing tables .................................................................... 70
Is nat een oplossing ? .................................................................................... 71
7.1. te weinig ip-adressen ?
Is vier miljard dan niet genoeg ? We verspillen enorm veel ip-adressen door de
verkoop van klasse A en klasse B aan organisaties die eigenlijk veel minder adressen
nodig hebben.
Wat doe je als je 300 adressen nodig hebt ? Of 2000 ? Je kan kiezen voor een klasse
B range, maar dan verspil je meer dan 90 procent. Je kan ook zeggen dat 8 klasse C
adressen voldoen voor 2000 computers, maar dan vergroot je de routing tables weer.
7.2. ip-adressen verdelen
Klasse A adressen kunnen dus een dikke 16 miljoen computers bevatten, klasse B
een goeie 65 duizend en klasse C iets meer dan 200.
Stel dat jouw organisatie 3000 ip-adressen nodig heeft, dan moet je een klasse B
gebruiken. Maar dat wil zeggen dat je meer dan 62 duizend ip-adressen verspilt.
Onthou ook dat heel wat klasse A ranges begin jaren 90 in hun geheel verkocht zijn.
In de jaren 70-80 was dit een goed systeem, er waren immers maar enkele
duizenden computers op dit internetwerk. Maar de laatste jaren zijn er meer dan
een miljard computers verbonden met internet. Met een totaal van vier miljard
(256*256*256*256) ip-adressen kunnen we ons niet langer veroorloven om ipadressen te verspillen.
7.3. probleem voor de routing tables
Je zou kunnen argumenteren op het vorige dat je ook twaalf klasse C kan gebruiken
voor een netwerk met 3000 computers. En dat is correct, maar heeft wel tot gevolg
dat de routing tables in de internet routers er twaalf routes bij krijgen i.p.v. slechts
eentje.
Alle grote netwerken opbouwen met klasse C ip ranges is dus ook geen oplosssing.
(routing tables bespreken we later)
70
4 miljard ip-adressen
7.4. Is nat een oplossing ?
Een andere verzachtende techniek voor het naderende tekort aan ip-adressen is nat.
Een nat toestel kan meerdere private ip-adressen (en dus meerdere computers) met
een (of enkele) publieke adressen verbinden met het internet.
Maar nat heeft dan weer het nadeel dat niet alle applicaties kunnen werken achter
een nat. Bijvoorbeeld ipsec (want de poort-informatie is versleuteld), sip (Voice
over IP), ftp, dns zone transfers (we bespreken dit later), dhcp, snmp en sommige
multiplayer spelletjes op Microsofts xbox werken niet over nat.
71
Chapter 8. van subnet naar supernet
Table of Contents
8.1. binaire subnets ...............................................................................................
8.2. supernetting ....................................................................................................
8.3. binaire subnets decimaal voorstellen .............................................................
8.4. 32 binaire subnet masks ................................................................................
8.5. aantal computers ............................................................................................
8.6. network id en host id vinden .........................................................................
8.7. voorbeeldoefening binaire subnets .................................................................
8.8. oefeningen binaire subnets .............................................................................
8.9. zelfde of ander netwerk ? ..............................................................................
8.10. subnetworks ..................................................................................................
72
73
75
76
77
78
79
81
83
84
8.1. binaire subnets
Stel je eens voor dat computers binair rekenen i.p.v. decimaal ;-)
Computers rekenen met bits en bytes, mensen rekenen decimaal. Onze computers
zien een ip-adres als een 32-bit getal, hetzelfde geldt voor de subnet mask. De drie
subnet masks die we tot nu toe kennen zijn decimaal en binair voorgesteld in de
volgende tabel:
Table 8.1. binary classful subnets
class
subnet
binary subnet
A
255.0.0.0
11111111.00000000.00000000.00000000
B
255.255.0.0
11111111.11111111.00000000.00000000
C
255.255.255.0
11111111.11111111.11111111.00000000
Voor de volledigheid volgt ook nog eens het aantal computers dat in een classful
netwerk past.
Table 8.2. max computers classful subnets
class
binary subnet
computers
A
11111111.00000000.00000000.00000000
256*256*256 - 2
B
11111111.11111111.00000000.00000000
256*256 - 2
C
11111111.11111111.11111111.00000000
256 - 2
72
van subnet naar supernet
8.2. supernetting
Zoals je ziet, begint de subnet mask binair steeds met eentjes en eindigt steeds met
nulletjes. Wat als we nu een eentje meer of minder zetten ?
Onze verkorte notatie laat toe om dit snel te noteren. We schrijven simpelweg
172.16.0.0/17 i.p.v. 172.16.0.0/16 . Maar wat zijn de gevolgen hiervan ?
Ten eerste is een eentje meer hetzelfde als het halveren van het aantal computers in
het netwerk. Want we vergroten het network id en verkleinen het aantal mogelijke
host id's.
Laten we ons voorbeeld beginnen met het netwerk in de klas zoals het er nu uitziet:
Table 8.3. /24 netwerk in de klas
network id subnet
192.168.0.0
/24
binair subnet
aantal
computers
11111111.11111111.11111111.00000000
256 - 2 = 254
En kijk wat er gebeurt als we de subnet mask veranderen van 24 bits naar 25 bits
die op 1 staan.
Table 8.4. /25 netwerk in de klas
network id subnet
192.168.0.0
/25
binair subnet
aantal
computers
11111111.11111111.11111111.10000000
128 - 2 = 126
De reeks ip-adressen die behoren tot 192.168.0.0/25 begint met 192.168.0.1 en
eindigt met 192.168.0.126, de network id is 192.168.0.0 en het broadcast adres is
192.168.0.127.
Als we dit binair voorstellen wordt het duidelijk:
73
van subnet naar supernet
Table 8.5. /25 binair bekijken
omschrijving
binair
decimaal
network id
11000000.10101000.00000000.00000000
192.168.0.0
subnet mask
11111111.11111111.11111111.10000000
255.255.255.128
eerste ip
11000000.10101000.00000000.00000001
192.168.0.1
tweede ip
11000000.10101000.00000000.00000010
192.168.0.2
derde ip
11000000.10101000.00000000.00000011
192.168.0.3
vierde ip
11000000.10101000.00000000.00000100
192.168.0.4
vijfde ip
11000000.10101000.00000000.00000101
192.168.0.5
...
...
...
voorlaatste ip
11000000.10101000.00000000.01111101
192.168.0.125
laatste ip
11000000.10101000.00000000.01111110
192.168.0.126
broadcast ip
11000000.10101000.00000000.01111111
192.168.0.127
We voegen nog een bit toe aan de subnet mask, dan komen we aan /26
(255.255.255.192). De tabel ziet er dan als volgt uit:
Table 8.6. /26 binair bekijken
omschrijving
binair
decimaal
network id
11000000.10101000.00000000.00000000
192.168.0.0
subnet mask
11111111.11111111.11111111.11000000
255.255.255.192
eerste ip
11000000.10101000.00000000.00000001
192.168.0.1
tweede ip
11000000.10101000.00000000.00000010
192.168.0.2
derde ip
11000000.10101000.00000000.00000011
192.168.0.3
...
...
...
voorlaatste ip
11000000.10101000.00000000.00111101
192.168.0.61
laatste ip
11000000.10101000.00000000.00111110
192.168.0.62
broadcast ip
11000000.10101000.00000000.00111111
192.168.0.63
74
van subnet naar supernet
8.3. binaire subnets decimaal voorstellen
We weten al dat 255 decimaal gelijk is aan 11111111 binair en dat 0 decimaal
gelijk is aan 00000000 binair (in byte-vorm). Een binair subnet mask begint steeds
met eentjes, en eindigt met nulletjes. De volgende tabel kan dus handig zijn bij het
decimaal neerschrijven van een binair subnet mask.
Table 8.7. decimale waarde binaire subnet bytes
binair subnet mask
decimaal getal
11111111
255
11111110
254
11111100
252
11111000
248
11110000
240
11100000
224
11000000
192
10000000
128
00000000
0
75
van subnet naar supernet
8.4. 32 binaire subnet masks
Bij supernetting zijn er theoretisch 32 binaire subnet masks i.p.v. de drie classful
(255.255.255.0, 255.255.0.0, 255.0.0.0). We zetten er 31 op een rijtje.
Table 8.8. 31 binaire subnets
aantal bits op 1
decimale waarde
1
128.0.0.0
2
192.0.0.0
3
224.0.0.0
4
240.0.0.0
5
248.0.0.0
6
252.0.0.0
7
254.0.0.0
8
255.0.0.0
9
255.128.0.0
10
255.192.0.0
11
255.224.0.0
12
255.240.0.0
13
255.248.0.0
14
255.252.0.0
15
255.254.0.0
16
255.255.0.0
17
255.255.128.0
18
255.255.192.0
19
255.255.224.0
20
255.255.240.0
21
255.255.248.0
22
255.255.252.0
23
255.255.254.0
24
255.255.255.0
25
255.255.255.128
26
255.255.255.192
27
255.255.255.224
28
255.255.255.240
29
255.255.255.248
30
255.255.255.252
31
255.255.255.254
76
van subnet naar supernet
8.5. aantal computers
We kunnen de tabel uitbreiden met een kolom die het aantal computers telt dat we in
deze binaire netwerkjes kunnen plaatsen.
De simpelste formule om het aantal computers in een subnet te berekenen is twee
verheffen tot de macht 'het aantal bits op 0 in de subnet' min twee. Bij 16 bits op 1
wordt dat dus 2 tot de zestiende min twee. In de tabel gebruiken we 256 i.p.v. twee
tot de achtste.
Table 8.9. aantal computers in binaire subnets
aantal bits op 1
berekening
aantal computers
8
256*256*256-2
16777214
9
256*256*128-2
8388606
10
256*256*64-2
4194302
11
256*256*32-2
2097150
12
256*256*16-2
1048574
13
256*256*8-2
524286
14
256*256*4-2
262142
15
256*256*2-2
131070
16
256*256-2
65534
17
256*128-2
32766
18
256*64-2
16382
19
256*32-2
8190
20
256*16-2
4094
21
256*8-2
2046
22
256*4-2
1022
23
256*2-2
510
24
256-2
254
25
128-2
126
26
64-2
62
27
32-2
30
28
16-2
14
29
8-2
6
30
4-2
2
Zie ook eens op http://www.rfc-editor.org/rfc/rfc1878.txt.
77
van subnet naar supernet
8.6. network id en host id vinden
Als we een ip-adres krijgen, kunnen we dan het network id en het host id vinden ?
We zullen beginnen met een simpel classful voorbeeld: 192.168.1.5/24.
ip-adres
subnet mask
network id
host id
: 192.168. 1.5
: 255.255.255.0
: 192.168. 1.0
:
5
We kunnen dit ook binair bekijken:
ip-adres
subnet mask
network id
host id
:
:
:
:
11000000.10101000.00000001.00000101
11111111.11111111.11111111.00000000
11000000.10101000.00000001.00000000
00000000.00000000.00000000.00000101
Nog een tweede voorbeeld: 192.168.199.233/24.
ip-adres
subnet mask
network id
host id
: 192.168.199.233
: 255.255.255.0
: 192.168.199.0
:
233
We kunnen dit tweede voorbeeld ook binair bekijken.
ip-adres
subnet mask
network id
host id
:
:
:
:
11000000.10101000.11000111.11101001
11111111.11111111.11111111.00000000
11000000.10101000.11000111.00000000
00000000.00000000.00000000.11101001
Als derde voorbeeld zullen we hetzelfde ip-adres nemen als in het tweede, maar
met een supernet: 192.168.199.233/22. We bekijken het eerst binair, want dit is het
eenvoudigste.
ip-adres
subnet mask
network id
host id
:
:
:
:
11000000.10101000.11000111.11101001
11111111.11111111.11111100.00000000
11000000.10101000.11000100.00000000
00000000.00000000.00000011.11101001
Decimaal wordt dat dan:
ip-adres
subnet mask
network id
host id
: 192.168.199.233
: 255.255.252.0
: 192.168.196.0
:
3.233
78
van subnet naar supernet
8.7. voorbeeldoefening binaire subnets
De vraag "Zitten de volgende computers in hetzelfde netwerk?" was met classful
subnets niet zo moeilijk. Deze vraag komt bijna letterlijk terug op het examen, maar
dan met binaire subnet masks.
Vul de volgende tabel aan voor 192.168.234.234/17.
Table 8.10. oefening 192.168.234.234/17
binair
decimaal
ip address
11000000.10101000.11101010.11101010
192.168.234.234
subnet mask
11111111.11111111.10000000.00000000
255.255.128.0
network id
eerste ip
laatste ip
broadcast ip
aantal ip's
Hieronder vind je de oplossing van bovenstaande oefening.
Table 8.11. oplossing 192.168.234.234/17
binair
decimaal
ip address
11000000.10101000.11101010.11101010
192.168.234.234
subnet mask
11111111.11111111.10000000.00000000
255.255.128.0
network id
11000000.10101000.10000000.00000000
192.168.128.0
eerste ip
11000000.10101000.10000000.00000001
192.168.128.1
laatste ip
11000000.10101000.11111111.11111110
192.168.255.254
broadcast ip
11000000.10101000.11111111.11111111
192.168.255.255
aantal ip's
van 0000000.00000001 tot 1111111.11111110 128*256-2=32766
79
van subnet naar supernet
Het bovenstaande netwerk bevat exact de helft van alle ip-adressen in de
192.168.0.0/16 reeks. Kan je de tabel ook invullen voor de andere helft ?
Table 8.12. andere helft van 192.168.234.234/17
binair
decimaal
11111111.11111111.10000000.00000000
255.255.128.0
ip address
subnet mask
network id
eerste ip
laatste ip
broadcast ip
aantal ip's
Hieronder de oplossing van de andere helft.
Table 8.13. oplossing andere helft 192.168.234.234/17
binair
decimaal
ip address
11000000.10101000.01101010.11101010
192.168.106.234
subnet mask
11111111.11111111.10000000.00000000
255.255.128.0
network id
11000000.10101000.00000000.00000000
192.168.0.0
eerste ip
11000000.10101000.00000000.00000001
192.168.0.1
laatste ip
11000000.10101000.01111111.11111110
192.168.127.254
broadcast ip
11000000.10101000.01111111.11111111
192.168.127.255
aantal ip's
van 0000000.00000001 tot 1111111.11111110 128*256-2=32766
80
van subnet naar supernet
8.8. oefeningen binaire subnets
Probeer nu dezelfde oefening voor:
168.186.240.192/11
192.168.248.234/17
168.190.248.199/27
Kan je de network id, subnet mask, eerste ip, laatste ip, broadcast ip en aantal ip's
geven voor de subnets van die drie ip-adressen ? Zonder naar de oplossing hieronder
te kijken ?
Hieronder eerst drie lege tabellen om te oefenen, dan de oplossing.
Table 8.14. lege tabel 168.186.240.192/11
binair
decimaal
ip address
subnet mask
network id
eerste ip
laatste ip
broadcast ip
aantal ip's
Table 8.15. lege tabel 192.168.248.234/17
binair
ip address
subnet mask
network id
eerste ip
laatste ip
broadcast ip
aantal ip's
81
decimaal
van subnet naar supernet
Table 8.16. lege tabel 168.190.248.199/27
binair
ip address
subnet mask
network id
eerste ip
laatste ip
broadcast ip
aantal ip's
82
decimaal
van subnet naar supernet
Table 8.17. oplossing 168.186.240.192/11
binair
decimaal
ip address
10101000.10111010.11110000.11000000
168.186.240.192
subnet mask
11111111.11100000.00000000.00000000
255.224.0.0
network id
10101000.10100000.00000000.00000000
168.160.0.0
eerste ip
10101000.10100000.00000000.00000001
168.160.0.1
laatste ip
10101000.10111111.11111111.11111110
168.191.255.254
broadcast ip
10101000.10111111.11111111.11111111
168.191.255.255
van 00000.00000000.00000001
tot 11111.11111111.11111110
32*256*256-2
aantal ip's
Table 8.18. oplossing 192.168.248.234/17
binair
decimaal
ip address
11000000.10101000.11111000.11101010
192.168.248.234
subnet mask
11111111.11111111.10000000.00000000
255.255.128.0
network id
11000000.10101000.10000000.00000000
192.168.128.0
eerste ip
11000000.10101000.10000000.00000001
192.168.128.1
laatste ip
11000000.10101000.11111111.11111110
192.168.255.254
broadcast ip
11000000.10101000.11111111.11111111
192.168.255.255
van 0000000.00000001 tot 1111111.11111110
128*256-2
aantal ip's
Table 8.19. oplossing 168.190.248.199/27
binair
decimaal
ip address
10101000.10111110.11111000.11000111
168.190.248.199
subnet mask
11111111.11111111.11111111.11100000
255.255.255.224
network id
10101000.10111110.11111000.11000000
168.190.248.192
eerste ip
10101000.10111110.11111000.11000001
168.190.248.193
laatste ip
10101000.10111110.11111000.11011110
168.190.248.222
broadcast ip
10101000.10111110.11111000.11011111
168.190.248.223
van 00001 tot 11110
32-2
aantal ip's
8.9. zelfde of ander netwerk ?
Zitten de computers 192.168.117.5/18 en 192.168.34.18/18 in hetzelfde netwerk ?
83
van subnet naar supernet
8.10. subnetworks
Je beheert een departement met 200 computers, verdeeld over vier verdiepingen
in eenzelfde gebouw, met ongeveer vijftig computers per verdieping. Je krijgt
van je netwerkbeheerder 192.168.5.0/24 en moet deze reeks verdelen over de vier
verdiepen. Hoe doe je dat ?
Je begint met uit te rekenen hoeveel computers er in die reeks kunnen:
192.168.5.0/24 --> 256 - 2 = 254 computers
Je weet ook uit de tabel hierboven dat een /26 subnet mask volstaat voor elke
individuele verdieping. Je verdeelt jouw /24 netwerk in vier /26 netwerken.
We bekijken dit eerst binair:
192.168.5.0 == 11000000.10101000.00000101.00000000
/24 mask
== 11111111.11111111.11111111.00000000
/26 mask
== 11111111.11111111.11111111.11000000
We moeten dus twee bits toevoegen aan de /24 netword id om een /26 network id
te maken. Twee bits kunnen exact vier mogelijke waarden hebben: 00, 01, 10 of 11.
We komen dus tot de volgende vier nieuwe /26 network id's.
/26
/26
/26
/26
network
network
network
network
id
id
id
id
1
2
3
4
==
==
==
==
11000000.10101000.00000101.00000000
11000000.10101000.00000101.01000000
11000000.10101000.00000101.10000000
11000000.10101000.00000101.11000000
Hieronder een tabel van eerste en laatste ip van de vier /26 netwerken. Tel bij de
laatste ip eentje bij voor de broadcast ip.
Table 8.20. echt supernetten
verdieping
eerste ip
laatste ip
1
192.168.5.1
192.168.5.62
2
192.168.5.65
192.168.5.126
3
192.168.5.129
192.168.5.190
4
192.168.5.193
192.168.5.254
Tussen haakjes, nu zijn we echt aan het supernetten. Want in de routers van buitenaf
staat er enkel 192.168.5.0/24 als bestemming, terwijl er intern eigenlijk vier /26
netwerkjes zijn.
84
Chapter 9. toets
Table of Contents
9.1. tussentijdse toets 20101010 ........................................................................... 85
9.2. antwoorden toets 20101010 ........................................................................... 89
9.1. tussentijdse toets 20101010
VOORNAAM :
ACHTERNAAM :
DATUM :
LOKATIE :
1. Het internet is meer dan de blauwe e op de Windows desktop. In welk jaar is het
internet ontstaan ?
A.
B.
C.
D.
E.
1302
1492
1789
1969
2002
2. Ter vervanging van vast toegewezen communicatiekanalen werd in de jaren 60
een nieuwe techniek ontwikkeld die alle gegevens die over een netwerk moeten
getransporteerd worden opdeelt in kleine packetjes. Hoe heet deze techniek ?
A.
B.
C.
D.
E.
circuit switching
circuit scheduling
packet switching
packet netting
circuit netting
3. Internet standaarden worden sinds 1969 bewaard in ascii tekstbestanden en zijn
geldig voor alle besturingssystemen. Hoe heten deze standaarden ?
A.
B.
C.
D.
E.
tcp/ip's
rfc's
ISO's
smb's
bluetooth
4. Wat is de kleinste eenheid van informatie in de informaticawereld ?
A
B
C
D
E
bit
byte
nibble
kilobit
kibibit
5. Welke van de volgende eenheden is de grootste ?
A megabyte
85
toets
B
C
D
E
gibibyte
gigabyte
kilobyte
mebibyte
6. Wanneer spreken we van een bericht naar iedereen ?
A
B
C
D
E
unicast
multicast
broadcast
allcast
anycast
7. Wat is het verschil tussen PSTN en ISDN ?
A
B
C
D
E
PSTN is digitaal
PSTN is recenter
ISDN is internationaal
ISDN is digitaal
Beide zijn identiek
8. Hoe lang duurt het om een bestand van 1 gibibyte te kopiëren over een 10Mbit
LAN ?
A
B
C
D
E
14'30"
14'31"
14'32"
minder dan 14 minuten
14'19"
9. In welke OSI laag vinden we de protocols http, dns, smtp, pop3, ntp en ftp ?
A
B
C
D
E
Application
Broadcast
Session
Data Link
Expert
10. Welk protocol legt een verbinding tussen laag 2 en laag 3 ?
A
B
C
D
E
ARP
Broadcast
Circuit Protocols
DNS
Geen enkel want de protocols zitten niet tussen de lagen
11. Wanneer je in wireshark ARP in de filter tikt, dan zie je enkel ARP packetjes.
Wat moet je typen om DHCP packetjes te zien ?
A
B
C
D
E
dhcp
bootp
chp
arp or dhcp
expert
12. In welke OSI laag situeert zich een hub ?
A
B
C
D
E
Application
Session
Data Link
Presentation
Physical
86
toets
13. In welke laag bevindt zich een layer 3 switch ?
A
B
C
D
E
laag 1
laag 2
laag 3
laag 4
Een layer 3 switch bestaat niet!
14. Een macbook heeft een vast mac adres op de netwerkkaart. Hoe heet dit bij een
IBM computer ?
A
B
C
D
E
Een
Een
Een
een
IBM
IBM adres
mac adres
ip adres
arp adres
computers hebben nooit een mac adres!
15. Uit hoeveel packetjes bestaat het opzetten van een udp-sessie ?
A
B
C
D
E
0
1
2
3
Een udp-sessie bestaat niet!
16 Wanneer is zes maal negen gelijk aan 42 ?
A
B
C
D
E
in
in
in
in
in
het
het
het
het
het
hexadecimale talstelsel
binaire talstelsel
twaalfdelige talstelsel
dertiendelige talstelsel
zevendelige talstelsel
17. Hoe schrijf je de decimale waarde 255 hexadecimaal ?
A
B
C
D
E
100
255
C0
FF
16x11111111
18. Wat is het broadcast mac-adres ?
A
B
C
D
E
Hangt af van het ip-adres
Het adres van de Apple Computer van de leraar
11:22:33:44:55:66
99:99:99:99:99:99
FF:FF:FF:FF:FF:FF
19. Welk soort ip-adres is 169.254.0.42 ?
A
B
C
D
E
privaat
publiek
loopback
broadcast
zeroconf
20. Hoeveel studenten gaan alle vorige vragen correct hebben ?
A 0 tot 1
B 2 tot 4
C 5 tot 8
87
toets
D meer dan 8
E iedereen
88
toets
9.2. antwoorden toets 20101010
VOORNAAM : Paul
ACHTERNAAM : Cobbaut
DATUM : 10/10/10
LOKATIE : aardbol
1. Het internet is meer dan de blauwe e op de Windows desktop. In welk jaar is het
internet ontstaan ?
A.
B.
C.
D.
E.
1302
1492
1789
1969
2002
Guldensporenslag
Columbus in Amerika
Franse Revolutie
Geboorte Internet
Invoering Euro munten en briefjes
2. Ter vervanging van vast toegewezen communicatiekanalen werd in de jaren 60
een nieuwe techniek ontwikkeld die alle gegevens die over een netwerk moeten
getransporteerd worden opdeelt in kleine packetjes. Hoe heet deze techniek ?
C. packet switching
3. Internet standaarden worden sinds 1969 bewaard in ascii tekstbestanden en zijn
geldig voor alle besturingssystemen. Hoe heten deze standaarden ?
B. rfc's
4. Wat is de kleinste eenheid van informatie in de informaticawereld ?
A bit
5. Welke van de volgende eenheden is de grootste ?
B gibibyte
6. Wanneer spreken we van een bericht naar iedereen ?
C broadcast
7. Wat is het verschil tussen PSTN en ISDN ?
D ISDN is digitaal
8. Hoe lang duurt het om een bestand van 1 gibibyte te kopiëren over een 10Mbit
LAN ?
A
B
C
D
E
14'30"
14'31"
14'32"
minder dan 14 minuten
14'19"
Deze vraag werd nogal moeilijk bevonden omdat 1024x1024x1024x8 nogal een groot
getal is. Het lukt wel met vijf minuutjes rekenen op papier (tip 1024/1000 is 2.4
procent erbij tellen).
89
toets
9. In welke OSI laag vinden we de protocols http, dns, smtp, pop3, ntp en ftp ?
A Application
10. Welk protocol legt een verbinding tussen laag 2 en laag 3 ?
A ARP
11. Wanneer je in wireshark ARP in de filter tikt, dan zie je enkel ARP packetjes.
Wat moet je typen om DHCP packetjes te zien ?
B bootp
12. In welke OSI laag situeert zich een hub ?
E Physical
13. In welke laag bevindt zich een layer 3 switch ?
C laag 3
14. Een macbook heeft een vast mac adres op de netwerkkaart. Hoe heet dit bij een
IBM computer ?
B Een mac adres
15. Uit hoeveel packetjes bestaat het opzetten van een udp-sessie ?
E Een udp-sessie bestaat niet!
16 Wanneer is zes maal negen gelijk aan 42 ?
D in het dertiendelige talstelsel
17. Hoe schrijf je de decimale waarde 255 hexadecimaal ?
D FF
18. Wat is het broadcast mac-adres ?
E FF:FF:FF:FF:FF:FF
19. Welk soort ip-adres is 169.254.0.42 ?
E zeroconf
20. Hoeveel studenten gaan alle vorige vragen correct hebben ?
Twee studenten hebben 19 op 20 gehaald.
De meeste hadden 16 of 17 op 20.
Twee studenten hadden 13 op 20.
90
Chapter 10. inleiding tot routers
Table of Contents
10.1.
10.2.
10.3.
10.4.
10.5.
10.6.
10.7.
10.8.
10.9.
router tussen twee netwerken ....................................................................... 91
twee routers met elkaar verbinden ............................................................... 95
lokale routing tables ..................................................................................... 96
nat ................................................................................................................. 97
dnat ............................................................................................................... 98
dnat en internet ............................................................................................ 99
port forwarding en pat ................................................................................. 99
snat ............................................................................................................. 100
snat en internet ........................................................................................... 100
10.1. router tussen twee netwerken
Een router verbindt twee netwerken.
Om iets te laten zien over routers heb je dus een router nodig en minstens twee
computers, eentje aan elke kant van de router. Hier volgen twee voorbeelden, gedaan
met vrije software in Virtualbox.
10.1.1. de opstelling
We beginnen met twee netwerken te bouwen, eentje links in de range 10.0.33.0/24
en eentje rechts in de range 10.0.42.0/24. Het linkse netwerk wordt leftnet genoemd,
het andere rightnet.
91
inleiding tot routers
In het linkse netwerk zetten we een Red Hat Enterprise Linux (rhel53) server
met ip-adres 10.0.33.2/24. Linux noemt de lokale netwerkkaart eth0. Het volgende
commando configureert het juiste ip-adres en subnet mask:
ifconfig eth0 10.0.33.2 netmask 255.255.255.0
Het mac-adres (of hardware address) van deze netwerkkaart is 08:00:27:F6:67:53.
In het rechtse netwerk zetten we een Oracle Solaris 11 (sol11) server met ipadres 10.0.42.2/24. Solaris noemt de lokale netwerkkaart e1000g0. Het volgende
commando configureert het juiste ip-adres en subnet mask:
ifconfig e1000g0 10.0.42.2 netmask 255.255.255.0
Het mac-adres (of ethernet address) van deze netwerkkaart is 8:0:27:5a:16:76.
Tussen de twee netwerken staat een Fedora 13 (fed13) server die dienst doet als
router. Deze router heeft twee netwerkkaarten, eentje verbonden met leftnet en eentje
verbonden met rightnet. Het commando om beide netwerkkaarten te configureren is:
ifconfig eth0 10.0.33.1 netmask 255.255.255.0
ifconfig eth1 10.0.42.1 netmask 255.255.255.0
Het mac-adres van eth0 is hier 08:00:27:CE:93:98 en van eth1 is het
08:00:27:E8:BE:68.
___________
____________________
____________
|
|
|
router
|
|
|
| rhel53 nic - leftnet - nic
fedora13
nic - rightnet - nic sol11
|
| 10.0.33.2|
|10.0.33.1 10.0.42.1|
|10.0.42.2
|
|___________|
|____________________|
|____________|
10.1.2. ping op leftnet
We controleren even dat wireshark goed werkt door een ping te doen van de rhel53
naar 10.0.33.1. We testen hiermee dat de verbinding tussen de links rhel53 computer
en de fedora13 router werkt. Dit is noodzakelijk opdat de computer de router kan
gebruiken. Een router moet in hetzelfde netwerk staan als de computer.
92
inleiding tot routers
Dit is een lokaal netwerk dus we zien twee gekende arp packetjes. De ping wordt
met de correcte mac-adressen op het netwerk gezet.
10.1.3. standaard gateway instellen
We configureren nu de computers uit leftnet en rightnet om elk de router te
gebruiken. Elke computer ziet een andere kant van de router.
Op sol11 geven we 10.0.42.1 op als adres van de router:
route add default 10.0.42.1
Op rhel53 geven we 10.0.33.1 op als adres van de router:
route add default gw 10.0.33.1
Tussen haakjes, op MS Windows kan je dit door via Start - Instellingen - Controle
Paneel - Netwerkbeheer - Eigenschappen - tcp/ip - Eigenschappen ergens de
standaard gateway in te vullen en de laatste twee geopende vensters te sluiten.
10.1.4. ping over de router?
Als we echter een ping proberen van het ene naar het andere netwerk, dan krijgen we
geen antwoord want de netwerken zijn gescheiden en de router staat nog niet aan.
Het is niet omdat een computer twee netwerkkaarten heeft, dat die automatisch router
gaat spelen.
93
inleiding tot routers
10.1.5. routerfunctie aanzetten
We zetten de router aan door 1 bit aan te passen in Linux, die zal dan automatisch
alle packetjes routen over al zijn netwerkkaarten. Dit is handig als je over slechts één
router beschikt die al je netwerken verbindt. We zullen later zien dat er meer werk
is om twee routers te laten samenwerken.
10.1.6. ping over de router!
Het packetje dat vertrekt bij 10.0.42.2 komt eerst (via rightnet) aan bij 10.0.42.1.
Dat zie je in de screenshot van wireshark hieronder.
Vervolgens gaat de router het destination-mac-adres aanpassen naar het mac-adres
van 10.0.33.2, en terzelfdertijd het source-mac-adres vervangen door dat van zijn
eigen 10.0.33.1 interface. Zo komt het packetje (via leftnet) aan bij de bestemming.
We hebben nu een werkende router tussen onze twee netwerken.
94
inleiding tot routers
10.2. twee routers met elkaar verbinden
10.2.1. opstelling met vier machines
We voegen een Debian 5.04 server als router toe aan onze opstelling en verbinden
beide routers via middlenet (en de nieuwe reeks 10.0.12.0/24). Er staan nu twee
routers tussen de 10.0.42.0/24 en 10.0.33.0/24 netwerken.
l n
e e f t
t
____________________
_____________________
r
|
router
|
|
router
|
i n
nic
deb504
nic - middlenet - nic
fedora13
nic - g e
|10.0.33.1 10.0.12.1|
|10.0.12.100 10.0.42.1|
h t
|____________________|
|_____________________|
t
De configuratie van de twee gewone computers moet niet aangepast worden, zij
behouden (wat ip-adres betreft) dezelfde default gateway.
10.2.2. rip
Het routing interface protocol laat toe dat routers hun eigen routing table opsturen
naar nabije routers.
Hieronder kan je zien hoe de fedore13 router via 10.0.12.100 aan de andere router
vertelt dat hij direct (met een metric van 1) verbonden is met het 10.0.42.0/24 netwerk.
95
inleiding tot routers
De metric in de routing table kan je zien als een kost. Een router zal steeds proberen
om packetjes te leveren via de goedkoopste route.
10.3. lokale routing tables
Elke computer met een ip-adres heeft intern een routing table. Op Windows kan je
deze zien met route print, op Unix met netstat.
Onderstaande tabel is simpel omdat er maar 1 netwerkkaart in de computer een ipadres heeft. Alle trafiek voor dat netwerk, gaat via die netwerkkaart (genaamd eth2).
Alle andere trafiek wordt via die netwerkkaart naar de router (192.168.1.1) gestuurd.
[root@fed13 ~]# netstat -nr
Kernel IP routing table
Destination
Gateway
Genmask
192.168.1.0
0.0.0.0
255.255.255.0
0.0.0.0
192.168.1.1
0.0.0.0
Flags
U
UG
MSS Window
0 0
0 0
irtt Iface
0 eth2
0 eth2
Onderstaande tabel is uitgebreider omdat deze computer nu drie netwerkkaarten
heeft met elk een ip-adres in een ander netwerk. Trafiek dat niet voor een van deze
netwerken is, wordt nog steeds naar 192.168.1.1 gestuurd via eth2.
[root@fed13 ~]# netstat -nr
Kernel IP routing table
Destination
Gateway
10.0.33.0
0.0.0.0
192.168.1.0
0.0.0.0
10.0.42.0
0.0.0.0
0.0.0.0
192.168.1.1
Genmask
255.255.255.0
255.255.255.0
255.255.255.0
0.0.0.0
96
Flags
U
U
U
UG
MSS
0
0
0
0
Window
0
0
0
0
irtt
0
0
0
0
Iface
eth0
eth2
eth1
eth2
inleiding tot routers
10.4. nat
We hebben op het bord getekend hoe nat samenwerkt met pat om private adressen
om te zetten in publieke, en omgekeerd.
Hieronder een tekening van een packetje in een netwerk zonder router.
Hieronder een tekening van een packetje dat door een eenvoudige router gaat. Zoals
je ziet, worden de mac-adressen aangepast.
97
inleiding tot routers
10.5. dnat
We spreken van destination nat wanneer de router het bestemmings-ip-adres
vertaalt naar een ander ip-adres.
We beginnen met een simpel voorbeeld intern in een organisatie. Dit is een tekening
van een packetje dat door een dnat router gaat. Zoals je ziet, wordt naast de macadressen, nu ook het bestemmings-ip-adres aangepast. De 'mb' laptop ziet dus het ipadres van de 'router' als bestemming, terwijl de 'www' server achter de router staat.
Hieronder hetzelfde voorbeeld, hetzelfde scenario, maar met ip-adressen ingevuld.
Het bestemmings-ip-adres staat vet gedrukt omdat dit de kern is van een dnat router.
98
inleiding tot routers
10.6. dnat en internet
dnat wordt meestal gebruikt om een publiek adres te vertalen naar een intern en
privaat adres. Het is uiteraard goed mogelijk dat een server met een publiek ip-adres
rechtstreeks met internet verbonden is, maar het is ook mogelijk om dit publieke adres
toe te kennen aan een dnat router (die eventueel ook firewall is) en de eigenlijke
server in een private ip-range te zetten.
Deze tekening toont dat op het hele internet het publieke adres bekend is, terwijl eens
achter de dnat router een privaat adres wordt gebruikt.
10.7. port forwarding en pat
We hebben beide in de klas besproken.
99
inleiding tot routers
10.8. snat
We spreken van source nat wanneer de router het bron-ip-adres aanpast.
Hieronder een tekening van een packetje dat door een snat router gaat. Zoals je
ziet, wordt behalve de mac-adressen, nu ook het bron-ip-adres aangepast. De 'www'
server ziet dus het ip-adres van de 'router' als bron.
10.9. snat en internet
snat wordt meestal gebruikt om onze interne private adressen om te zetten in een
publiek adres dat op internet gezien wordt. Onze private adressen worden verborgen
voor het internet.
We spreken van masquerading wanneer snat wordt toegepast op een dynamisch
publiek ip-adres. Dit is het geval bij de meeste adsl verbindingen in Vlaanderen.
100
Chapter 11. naamresolutie en DNS
Table of Contents
11.1. inleiding ......................................................................................................
11.2. logische DNS structuur ..............................................................................
11.3. DNS caching ..............................................................................................
11.4. praktijkvoorbeeld .......................................................................................
11.5. DNS records ...............................................................................................
11.6. DNS reverse lookup ...................................................................................
11.7. zone ............................................................................................................
11.8. DNS server software ..................................................................................
11.9. name resolving ...........................................................................................
11.10. DNS IDN .................................................................................................
11.11. Domeinnamen registreren ........................................................................
11.12. DNS round robin .....................................................................................
11.13. tekening DNS ...........................................................................................
11.14. tekening DNS en routerke .......................................................................
11.15. screenshots DNS in actie .........................................................................
101
104
105
106
106
106
106
107
107
107
107
107
107
110
111
11.1. inleiding
11.1.1. Wat is naamresolutie ?
Om twee computers op een ip netwerk (zoals het internet) met elkaar te
laten communiceren, hebben ze elkaars ip-adres nodig. Maar als mens is het
eenvoudiger om namen zoals linux-training.be te onthouden i.p.v. 88.151.243.8 of
178.63.30.100. Naamresolutie is het zoeken van een ip-adres dat hoort bij deze naam
van een computer.
Een computer kan beschikken over een tekstbestand dat de relatie tussen namen en
ip-adressen bevat, of kan verbonden zijn met een nameserver, bijvoorbeeld een dns
server.
11.1.2. geschiedenis
Voordat dns bestond, gebruikten computers op arpanet een HOSTS.TXT bestand
dat op een centrale server stond in Stanford. Dit bestand werd op regelmatige tijden
gekopieerd naar de lokale machine. Dit systeem was op termijn onhoudbaar, zeker
toen er begin jaren 80 duizenden computernamen in het bestand stonden en de groei
exponentieel werd.
In 1983 ontwikkelde de Griek Paul Mockapetris het Domain Name System (rfc
882/883, later rfc 1034/1035) als alternatief voor dit centrale hosts bestand.
101
naamresolutie en DNS
dns is een gedistribueerde hiërarchische naamgevende database voor diensten en
computers op tcp/ip netwerken. Een van de voor de hand liggende functies is het
vertalen van host- en domeinnamen naar ip-adressen (net zoals het /etc/hosts bestand
dat al deed).
dns is al enkele keren uitgebreid (tik maar eens dns als zoekterm op www.rfceditor.org), onder andere om het veilig te maken en om dns compatibel te maken
met ipv6 (AAAA records).
11.1.3. /etc/hosts
We hebben vorige les reeds kennis gemaakt met het bestand /etc/hosts (alle
Unix, incluis Linux en MacOSX) of %systemroot%/system32/drivers/etc/hosts
(Microsoft). We hebben gezien hoe dit een tabel is die namen vertaalt naar ipadressen. De inhoud van het bestand ziet er bijvoorbeeld zo uit:
paul@laika:~$ cat /etc/hosts
127.0.0.1 localhost
127.0.1.1 laika
192.168.1.1 illyria
192.168.1.2 pasha
192.168.1.33 barry
192.168.1.34 laika
192.168.1.35 faith
192.168.1.36 wolf
192.168.1.38 rekkie
192.168.1.44 kiss
192.168.1.29 hero
Dankzij dit bestand zal een ping commando naar een van deze namen resulteren in
een ping naar het ip-adres dat voor deze naam staat.
paul@laika:~$ ping illyria
PING illyria (192.168.1.1) 56(84) bytes of data.
64 bytes from illyria (192.168.1.1): icmp_seq=1 ttl=254 time=0.596 ms
64 bytes from illyria (192.168.1.1): icmp_seq=2 ttl=254 time=0.588 ms
Meer info over het hosts bestand vind je hier:
http://en.wikipedia.org/wiki/Hosts_file
11.1.4. volgorde
Met twee technische oplossingen voor hetzelfde probleem (hosts tekstbestand en
dns) moeten er duidelijke afspraken zijn over de prioriteit die beide systemen krijgen.
Met andere woorden, als we een ping doen naar computer42, wordt dan eerst dns
geraadpleegd ? Of eerst /etc/hosts ?
Om dit te configureren moeten we een onderscheid maken tussen Microsoft, Mac OS
X en de rest (Unix/Solaris/Linux/BSD...)
102
naamresolutie en DNS
Microsoft
Op Microsoft systemen is er geen optie om de volgorde in te stellen. Het
lokale hosts bestand heeft volgens Microsoft altijd voorrang op dns. (Zie http://
support.microsoft.com/kb/172218 en gelijkaardige artikels voor W200X etc).
De hostnames in deze lijst werken niet op Microsoft computers als je ze plaatst in
het hosts bestand:
www.msdn.com
msdn.com
www.msn.com
msn.com
go.microsoft.com
msdn.microsoft.com
office.microsoft.com
microsoftupdate.microsoft.com
wustats.microsoft.com
support.microsoft.com
www.microsoft.com
microsoft.com
update.microsoft.com
download.microsoft.com
microsoftupdate.com
windowsupdate.com
windowsupdate.microsoft.com
Meer info hierover vind je hier:
http://archive.cert.uni-stuttgart.de/bugtraq/2006/04/msg00291.html
We hebben ook commando's als ipconfig /all, ipconfig /displaydns en ipconfig /
flushdns gezien in de vorige lessen.
ipconfig /all toont je heel wat informatie over je ip-conguratie, incluis het ip-adres
van je dns-server.
ipconfig /displaydns geeft een lijst van namen die recent vertaald zijn aar ipadressen, en hoelang ze nog in de lokale cache blijven zitten.
ipconfig /flushdns maakt de lokale dns cache leeg.
Mac OS X
Mac OS X gebruikt hiervoor twee .plist bestanden in de directory /Library/
Preferences/DirectoryService/ .
Unix Linux Solaris BSD
Zowat alle andere besturingssystemen gebruiken een name service switch bestand
genaamd /etc/nsswitch.conf . In dit bestand staat voor heel wat name services de
volgorde waarin verschillende diensten gebruikt worden.
103
naamresolutie en DNS
Zo zal bijvoorbeeld de volgende lijn bepalen dat eerst het lokale hosts bestand moet
geraadpleegd worden, en dan pas dns.
paul@laika:~$ grep hosts /etc/nsswitch.conf
hosts:
files dns
Als je dit omdraait naar dns files dan krijgt dns onmiddellijk voorrang op /etc/hosts.
Sommige applicaties zullen dit bestand ook aanmaken op Mac OS X.
11.2. logische DNS structuur
11.2.1. DNS root servers
De namespace van dns is een boomstructuur met bovenaan een puntje. Dit puntje
wordt de root van de dns namespace genoemd. Deze nameservers zijn DNS root
servers, en worden in de (IT)volksmond ook gewoon root servers of dot servers
genoemd.
Er zijn logisch gezien 13 root name servers op het internet genaamd A-root tot
M-root. De inhoud ervan wordt bepaald door ICANN, het beheer is in handen van
verschillende organisaties (kijk maar op http://root-servers.org) en ze werken op
eentje na allemaal met de bind software.
Elke root server bestaat uit meerdere fysieke machines. Zo is de K-root server
verspreid over alle continenten en aanwezig in 18 steden. De J-root server heeft 62
nodes.
http://root-servers.org/
Journalisten noemen dit wel eens de root servers of master servers van het internet.
In 2002 en in 2007 was er een poging om alle root servers plat te leggen met een
ddos (distributed denial of service) aanval.
http://en.wikipedia.org/wiki/Distributed_denial_of_service_attacks_on_root_nameservers
11.2.2. top level domains
Onder de dot servers vinden we de top level domains of TLD's. Oorspronkelijk
waren dit er zeven generieke:
.COM
.NET
.ORG
.MIL
.GOV
.EDU
104
naamresolutie en DNS
.INT (nato.int)
Er zijn ook enkele honderden TLD's voor individuele landen, zoals .BE .NL .FR .US.
Tussen haakjes, domeinnamen zijn hoofdletterongevoelig dus je kan zowel .be
als .BE schrijven.
Sinds enkele jaren zijn er enkele nieuwe generieke TLD's bijgekomen
zoals .aero, .biz, .coop, .info, .museum, .name en .pro , maar deze worden
behalve .info nauwelijks gebruikt.
11.2.3. domeinnamen of domeinen
Onder de TLD's in de boomstructuur vinden we dan de domeinnamen zoals
google.com of linux-training.be.
Indien we op een dns server een domeinnaam instellen, noemen we dit een zone.
11.2.4. fqdn
De combinatie van een hostname met een domeinnaam noemt men de fqdn ofte
Fully Qualified Domain Name.
De computer genaamd rhel5 in het classroom.local domein heeft dus
rhel5.classroom.local als fqdn.
11.2.5. Belgische domein namen
Oorspronkelijk stond de Belgische .be server op de eerste verdieping van het
computerwetenschappengebouw van de KULeuven in de Celestijnenlaan. De
beheerder was professor Verbaeten en de enige manier om een .be te registreren
was door een brief met BTW-nr te schrijven naar dit departement.
Op 1 januari 2000 werd dotbe overgenomen door de vzw dns.be. Op 11 december
2000 was er een serieuze liberalisering van de regels voor aanvraag van een Belgische
domeinnaam, vanaf dan konden voor het eerst ook particulieren hun eigen naam
registreren.
Voor meer info:
http://dns.be/nl/home.php?n=22
11.3. DNS caching
dns is een caching protocol. Je kan zelfs caching only servers installeren. Dat zijn
dns servers die zelf geen autoriteit hebben over een domeinnaam.
105
naamresolutie en DNS
Het adsl routerke dat bij jullie thuis staat, is waarschijnlijk een caching only dns
server.
11.4. praktijkvoorbeeld
De rol van DNS (en andere servers) bij het bezoeken van een website of het sturen
van een e-mail tekenen we even op het bord.
11.5. DNS records
In de dns database zitten verschillende resource records. Hieronder een beknopt
overzicht van enkele van deze records.
A : vertaalt een naam naar een ip-adres
- ook wel host record genoemd
- of ook forward lookup record
AAAA : idem voor ipv6
NS : Nameserver record, wijst naar een nameserver
MX : Mail Exchange record, wijst naar een mailserver
SOA : bevat TTL, serienummer en andere info
CNAME : een alias van een naam naar een andere naam
SRV : wijst naar een dienst (of service) op het netwerk
11.6. DNS reverse lookup
Al de records uit de vorige lijst vind je terug in een forward lookup zone, een zone
die namen vertaalt naar ip-adressen. Een reverse lookup zone is het omgekeerde,
en vertaalt dus ip-adressen naar namen. Deze zone bevat naast SOA en NS records
vooral PTR records.
PTR : vertaalt ip-adres naar naam
- ook wel reverse lookup record genoemd
11.7. zone
Een zone is een domeinnaam die op een dns server ingesteld is als primair
(aanpasbaar) of secundair (read only copy). Een dns server kan verantwoordelijk
zijn voor de inhoud (de resource records) van een bepaalde zone (aka domeinnaam),
deze dns server heeft dan autoriteit over deze zone.
Een zone is ofwel een forward lookup zone zoals linux-training.be of
classroom.local, ofwel een reverse lookup zone.
Zones kunnen primary of secondary zijn. Primary zones zitten op DNS servers
en kunnen daar aangepast worden (records in de zone kunnen aanepast worden).
Secondary zones krijgen kopies van een primary zone (en kunnen bijgevolg niet
rechtstreeks aangepast worden).
106
naamresolutie en DNS
11.8. DNS server software
Heel wat name servers op internet maken gebruik van de bind software. In het
intranet van bedrijven wordt hiernaast ook regelmatig Microsoft DNS Server
gebruikt ter ondersteuning van Microsoft servers. Dankzij de rfc's kunnen beide
producten samenwerken.
11.9. name resolving
Je computer vindt een DNS server dankzij zijn ip-adres dat genoteerd staat in /etc/
resolv.conf (of in de registry voor Microsoft clients). Meestal voorziet een DHCP
server de client van het ip-adres van een DNS server.
DNS queries van een client naar een server zijn recursief, clients verwachten een
volledig antwoord. Queries tussen DNS servers onderling kunnen iteratief zijn.
Iteratieve queries verwachten een referentie naar een andere server i.p.v. een volledig
antwoord. De root servers antwoorden niet op recursieve queries.
Forward lookup queries kennen een naam en vragen een ip-adres, reverse lookup
queries kennen het ip-adres en willen de naam weten. Een zone zoals linuxtraining.be is een forward lookup zone.
11.10. DNS IDN
unicode i.p.v. ascii, spoofing en squatting van homoniemen of homografen
nog niet mogelijk in .be !
11.11. Domeinnamen registreren
Bij dns.be als je registrar ben, anders via je isp of via je registrar.
11.12. DNS round robin
DNS kan de workload van een website verdelen over meerdere fysieke servers.
11.13. tekening DNS
Hieronder een DNS tekening zoals ik ze gemaakt heb in de klas.
107
naamresolutie en DNS
0. Ik surf thuis op mijn laptop naar http://www.linux-training.be, we volgen het
DNS verhaal om tot aan de webserver te geraken waar deze website staat. De
laptop staat helemaal links op de tekening, de webserver staat helemaal rechts (ip
88.151.243.8). De webserver heeft meerdere namen (meerdere A records wijzen naar
deze webserver).
Voor deze test heb ik even rechtstreeks het ip-adres van de EDPNET DNS server
(212.71.8.10) in de laptop gezet. Alternatief had ik ook het ip-adres van mijn routerke
(alias dns/dhcp/adslmodem/nat) kunnen ingeven, een situatie die je kan bekijken in
de volgende tekening.
Hieronder dezelfde tekening zoals ik ze vorig jaar heb gemaakt met Dia (nu gebruik
ik Inkscape).
108
naamresolutie en DNS
1. De laptop vraagt aan de DNS server van mijn ISP EDPNET de A record van
www.linux-training.be. We gaan er even van uit dat ik de eerste ben vandaag die
naar deze website surft. DNS is een caching protocol, dus als vijf minuten geleden
een andere klant van EDPNET naar deze website is geweest, dan antwoord de DNS
server gewoon uit zijn cache.
2. De DNS server van EDPNET vraagt in een iteratieve query aan een root server
(hier de H root server in de USA) waar zich www.linux-training.be bevindt.
3. De root server antwoordt met een verwijzing naar de DNS server die
verantwoordelijk is voor de hele .be zone. Als je snift dan zie je dat er een hele
lijst van .be servers wordt gegeven en kan je zien dat deze lijst zowel namen als IPaddressen bevat.
4. De DNS server van EDPNET vraagt, wederom iteratief, waar www.linuxtraining.be is aan een van de .be DNS servers (de eerste uit de lijst van de vorige stap
was a.ns.dns.be).
5. De .be DNS server antwoordt met een reeks namen en bijhorende ip-adressen van
openminds (het hosting bedrijf waar de www.linux-training.be) webserver staat.
6. De DNS server van EDPNET heeft nu de DNS server gevonden die
verantwoordelijk (authoritative) is voor linux-training.be en vraagt aan deze de A
record voor www.linux-training.be.
7. De DNS server ns1.openminds.be antwoordt met de gezochte A record
88.151.243.8.
109
naamresolutie en DNS
8. De DNS server van EDPNET geeft dit antwoord aan de laptop. De laptop kan nu
rechtstreeks de webserver bereiken (maar dat is een ander verhaal).
In dit verhaal heeft de laptop een recursieve query gedaan, hij wil een volledig
antwoord. De root servers en de .be servers antwoorden niet op recursieve queries,
enkel op iteratieve!
In dit verhaal werden enkel udp packetjes gebruikt, er is dus nergens een tcp sessie
opgezet.
11.14. tekening DNS en routerke
Deze tekening is nagenoeg de zelfde als de vorige, alleen hebben we nu ons
thuis routerke/adsl-modem/nat/dhcp-ke ertussen gezet. Op de macbook staat nu dus
192.168.1.1 als DNS server.
Je weet (hopelijk) dat het routerke twee ip-adressen heeft, eentje aan de binnenkant
(de kant van het thuisnetwerk 192.168.1.1) en eentje aan de buitenkant (de internetkant).
110
naamresolutie en DNS
0. De laptop doet een recursieve DNS query naar het routerke.
1. Het routerke doet een recursieve DNS query naar de DNS server van de ISP.
2. tot 7. De DNS server van de ISP EDPNET doet al het werk.
8. Het routerke krijgt een definitief antwoord, en houdt dit antwoord bij in zijn cache.
9. De laptop krijgt een definitief antwoord van het routerke.
Als even later een andere (thuis)computer dezelfde vraag stelt aan het routerke, dan
kan dit antwoorden vanuit zijn cache.
11.15. screenshots DNS in actie
11.15.1. demo DNS
Hieronder enkele screenshots van het opzetten en testen van een DNS server op Red
Hat Enterprise Linux 5.3 en Microsoft Windows Server 2003.
Om de twee eens naast elkaar te zetten heb ik geopteerd om de DNS setup op RHEL5
ook grafisch te doen, ook al zullen de meeste Unix sysadmins dit eerder doen door een
bestaande zone database file (die in de laatste screenshot getoond wordt) te copieren
en aan te passen.
111
naamresolutie en DNS
Beide OS-sen zijn geinstalleerd in een Virtualbox virtuele machine.
11.15.2. software installeren
We zoeken in beide OS-sen de GUI om software te installeren. Microsoft
noemt dit Add or Remove Programs. Gemakshalve zijn we hier aangelogd als
Administrator.
112
naamresolutie en DNS
Red Hat noemt dit Add/Remove Software. Ook hier zijn we gemakshalve aangelogd
als root.
Alternatief kan je op Linux gebruik maken van de command line yum of aptitude.
root@RHEL5:~# yum install bind
root@debian:~# aptitude install bind9
113
naamresolutie en DNS
11.15.3. installatie wizard
Microsoft Windows beschouwt Domain Name System als een Windows
Component die je gratis krijgt bij aankoop van een Windows Server.
Red Hat gebruikt de vrije applicatie genaamd BIND. BIND is sinds de ontwikkeling
van DNS in 1983 de meest gebruikte DNS server.
114
naamresolutie en DNS
11.15.4. GUI tool voor DNS beheer
Microsoft heeft samen met de DNS server software ook een snapin voor DNS server
beheer geinstalleerd en toegevoegd aan het start menu.
Red Hat heeft ook een GUI DNS tool, maar deze moet je wel apart installeren. Unix
mensen zijn al jaren gewoon om rechtstreeks met de text bestanden te werken.
115
naamresolutie en DNS
11.15.5. DNS voor zichzelf
Hierzie de tcp/ip properties zodat Windows DNS server kan zijn voor zichzelf.
En we doen hetzelfde op Red Hat. Alternatief kunnen we dit op zowat elke Unix ook
zo doen:
echo nameserver 192.168.1.200 > /etc/resolv.conf
116
naamresolutie en DNS
11.15.6. nieuwe zone maken
Microsoft voorziet een wizard om een nieuwe zone aan te maken. In tegenstelling
tot Windows 2000 Server wordt standaard geen root-zone meer aangemaakt.
BIND levert standaard een aantal zones mee. Zoals eerder gezegd, zullen Unix
mensen meestal een bestaande zone-bestand copieren en aanpassen.
117
naamresolutie en DNS
11.15.7. zone database file
Microsoft geeft hier mooi de naam van de zone database file. Hoewel de naam vrij
te kiezen is, is het formaat van dit tekstbestand wel vastgelegd in een rfc.
Red Hat vraagt eveneens de naam van de aan te maken zone, en gebruikt deze naam
om de zone database file aan te maken.
118
naamresolutie en DNS
11.15.8. nslookup
Hier gebruiken we nslookup om de DNS server te testen. We vragen de A record
van w2003.classdemo.local en www.classdemo.local (die laatste bestaat niet).
Microsoft start vanzelf de DNS server, Red Hat wacht totdat we dit zelf doen. U ziet
wederom nslookup met twee queries voor twee A records.
119
naamresolutie en DNS
11.15.9. A record
Na aanmaken van de A record, wordt die ook geresolved door nslookup.
Na aanmaken van de A record, wordt die ook geresolved door nslookup.
120
naamresolutie en DNS
11.15.10. MX record
Een MX record wijst naar de smtp server van een domeinnaam. Deze mailserver kan
zelf in een andere domein zitten.
In de nslookup prompt kan je set type=MX typen om MX records te vinden.
121
naamresolutie en DNS
11.15.11. reverse lookup
Zonder reverse lookup zone kan je geen ip-to-name vertaling doen. Met een PTR
record in een reverse lookup zone kan dat wel.
Op Linux wordt behalve nslookup ook meer en meer gebruikt gemaakt van dig.
122
naamresolutie en DNS
11.15.12. zone database file formaat
Het formaat van de zone database file is vastgelegd in rfc 1034 (en opvolgers).
Knippen en plakken in deze files kan zelfs tussen Unix en Microsoft systemen.
123
Chapter 12. negende les
Table of Contents
12.1.
12.2.
12.3.
12.4.
oefeningen DNS .........................................................................................
demo DNS ..................................................................................................
oefening DHCP ..........................................................................................
demo DHCP ...............................................................................................
124
126
126
126
12.1. oefeningen DNS
1. Noteer hieronder welke DNS server je nu gebruikt. Je kan dit in Windows vinden
met ipconfig /all of met de Control Panel GUI, in Linux met cat /etc/resolv.conf.
IP adres DNS server :
2. Toon de lokale dns-cache op Windows met ipconfig /displaydns, ledig deze cache
met ipconfig /flushdns (Standaard Linux isntallaties hebben geen lokale dns-cache).
3. Forceer een lookup van een A-record (je hebt toch genoteerd wat een A-record is
in de vorige les?). Welke packetjes zie je op het netwerk alvorens er een antwoord
komt op deze query ?
4. Welke poort gebruikt de client om de DNS server te bereiken ?
5. Gebruikt DNS tcp of udp ?
6. Wat is een AAAA record ?
7. Waarom zie je soms eerst een AAAA query voor een A query ?
8. Start nslookup interactief. Wat kan je met deze tool doen ?
9. Toon een A record via nslookup.
10. Verander van DNS-server (enkel in nslookup) naar de RHEL5 server (ip-adres
staat op bord).
11. Wat is het ip-adres van www.classdemo.local volgens deze server ?
12. Hoe kan je deze DNS server als default instellen in Windows XP ?
124
negende les
13. Kan je nog op internet als je deze DNS-server instelt in Windows XP ?
14. Is dns een internet standaard ? Zo ja, waar is die neergeschreven ?
125
negende les
12.2. demo DNS
Demo van het opzetten van DNS (Windows + Linux), met uitleg erbij en
mogelijkheid tot oefenen.
12.3. oefening DHCP
1. Wat is het ip-adres van de lokale DHCP server ? (ipconfig /all op Windows, cat /
var/lib/dhclient/dhclient-eth0.leases).
2. Forceer contact met de DHCP server (ipconfig /release en ipconfig /renew op
Windows, dhclient eth0 op Linux).
3. Krijg je hetzelfde ip-adres als voordien ?
4. Welke dhcp-packetjes kan je herkennen op het netwerk ? (snif bootp in wireshark)
5. Is dhcp een internet standaard ? Zo ja, waar is die neergeschreven ?
12.4. demo DHCP
Demo van het opzetten van DHCP (Windows + Linux), met uitleg erbij en
mogelijkheid tot oefenen.
126
Chapter 13. tiende les
Table of Contents
13.1. extra oefeningen ......................................................................................... 127
13.1. extra oefeningen
1. Noteer de url waar je de rfc's kan vinden.
2. Welke rfc defineert als eerste dns of domain name system ?
3. Hoeveel bits passen er in de meest gebruikelijke byte ?
4. Hoeveel bytes zitten er in een kilobyte ?
5. Hoeveel bits zitten er in een kilobyte ?
6. Hoeveel bytes zitten er in een kibibyte ?
7. Hoeveel bits zitten er in een kibibyte ?
8. Hoe heet een 'bericht naar iedereen' ?
9. Hoe heet een 'bericht naar iedereen van een welbepaalde groep' ?
10. Hoe heet een 'bericht naar exact 1 bestemmeling' ?
11. Hoe heet een 'bericht naar de dichtsbijzijnde van een groep' ?
12. Welk protocol is heden courant in een lan ?
13. In welk soort netwerk vind je protocols zoals atm, frame relay en fddi ?
14. Is pstn een digitaal netwerk ?
15. Is isdn een digitaal netwerk ?
16. Is pstn een analoog netwerk ?
17. Is isdn een analoog netwerk ?
18. Hoe lang duurt het om een megabyte te transfereren over een 2B+D isdn ?
A
B
C
D
iets meer dan een minuut
een kwartier
bijna een dag
enkele weken
19. Is een T1 gebaseerd op isdn ?
A Ja
127
tiende les
B Nee
20. In welke OSI laag vinden we mac-adressen ?
21. In welke OSI laag vinden we ip-adressen ?
22. Wat is 192.168.1.42?
A. een mac-adres
B. een ip-adres
C. een ibm-adres
23. Wat is 22:33:44:55:66:77 ?
A. een mac-adres
B. een ip-adres
C. een ibm-adres
24. In welke OSI laag vinden we een router ?
A
B
C
D
E
F
G
H
I
OSI
OSI
OSI
OSI
OSI
OSI
OSI
OSI
OSI
laag
laag
laag
laag
laag
laag
laag
laag
laag
0
1
2
3
4
5
6
7
8
25. In welke OSI laag vinden we een hub ?
A
B
C
D
E
F
G
H
I
OSI
OSI
OSI
OSI
OSI
OSI
OSI
OSI
OSI
laag
laag
laag
laag
laag
laag
laag
laag
laag
0
1
2
3
4
5
6
7
8
26. In welke OSI laag vinden we een layer 2 switch ?
A
B
C
D
E
F
G
H
I
OSI
OSI
OSI
OSI
OSI
OSI
OSI
OSI
OSI
laag
laag
laag
laag
laag
laag
laag
laag
laag
0
1
2
3
4
5
6
7
8
27. Welke woorden horen bij tcp ?
betrouwbaar onbetrouwbaar connectie connectieloos sessie sessieloos three-way-handshake
28. Welke woorden horen bij udp ?
128
tiende les
betrouwbaar onbetrouwbaar connectie connectieloos sessie sessieloos three-way-handshake
29. Welk protocol zorgt voor de link tussen mac-adres en ip-adres ?
30. Welke kabel bevat de meeste 'twists' ?
A utp
B twisted pair
31a. Hoe heet het toestel dat het telefoonnetwerk verbind met de computer (en dus
geluid omzet in bytes en omgekeerd) ?
A
B
C
D
E
hub
switch
router
gateway
modem
31b. Welke van de volgende protocols horen in laag 7 ?
tcp udp ip http ethernet
32. Welk protocol, gebruikt bij smtp en http beschrijft formaten ?
A
B
C
D
E
SMTP
POP3
HTTP
MIME
SNMP
33. Wie stuurt de foutboodschappen die je te zien krijgt bij een ping ?
A
B
C
D
E
IGMP
IP
ICMP
MIME
SNMP
34. Welke filter moet je instellen in wireshark om een tcp three-way handshake te
zien ?
35. Welke filter moet je instellen in wireshark om http trafiek te zien ?
36. Welke filter moet je instellen in wireshark om dhcp broadcasts te zien ?
37. Welk commando kan je op Windows gebruiken om je ip-adres en subne mask
te zien ?
A. traceroute
B ping
C ipconfig
D ifconfig
E arp -a
38. Welk commando kan je op Linux gebruiken om je ip-adres en subne mask te zien ?
A. traceroute
B ping
C ipconfig
D ifconfig
129
tiende les
E arp -a
39. In welke OSI laag vinden we de hub ?
40. In welke OSI laag vinden we de repeater ?
41. In welke OSI laag vinden we de layer 2 switch ?
42. In welke OSI laag vinden we de router ?
43. In welke OSI laag vinden we de layer 3 switch ?
44. Welk commando toont ons alle routers tussen onze pc en een webserver ?
A. tracert of traceroute
B ping of pong
C firefox -r of firefox -tr
D ipconfig /displayrouters
E arp -a
45. TCP: Zet in de juiste volgorde:
A SYN,ACK - ACK - SYN
B SYN - SYN,ACK - ACK
C SYN - ACK - SYN,ACK
46. Neem een screenshot van een TCP handshake in wireshark en zet deze op de
desktop. Toon aan de leraar als hij passeert!
47. Neem een screenshot van een DNS forward lookup van www.google.com in
wireshark en zet deze op de desktop. Toon aan de leraar als hij passeert!
48. Neem een screenshot van een PING met bijhorende ARP in wireshark en zet deze
op de desktop. Toon aan de leraar als hij passeert!
49. Zet de volgende decimale getallen om in binair :
0 :
1 :
4 :
7 :
128 :
255 :
50. Zet de volgende decimale getallen om in hexadecimaal :
0 :
1 :
4 :
7 :
128 :
255 :
51. Noteer hier het broadcast mac-adres :
52. Noteer hier de default subnet mask voor een klasse A adres.
53. Noteer hier de default subnet mask voor een klasse A adres in hexadecimale vorm.
130
tiende les
54. Noteer hier het ip-adres van de volgende machines :
Je
de
de
de
de
eigen PC in de klas :
router van Scheppers :
DNS server van scheppers :
webserver van www.linux-training.be :
webserver van www2.linux-training.be :
55. Noteer hier het mac-adres van de volgende machines :
Je eigen PC in de klas :
de router van Scheppers :
de DNS server van scheppers :
56. Selecteer de private adressen uit de volgende reeks :
9.192.42.1
10.108.4.33
11.42.0.0
168.192.16.4
57. Selecteer de private adressen uit de volgende reeks :
168.192.16.41
172.11.9.204
172.29.88.42
192.169.42.33
58. Selecteer de private netwerken uit volgende reeks :
10.0.0.0/24
192.16.0.0/16
127.0.0.1/8
10.0.0.0/8
169.254.42.0/24
172.16.0.0/16
59. Gebruik het volgende netwerk om vier delen te maken die minstens 200 ipadressen bevatten. Je moet niet alle ip-adressen gebruiken.
10.104.0.0/16
60. Splits het volgende netwerk in vier gelijke delen :
10.102.0.0/16
61. Geef de default subnet mask voor 172.16.0.1
62. Welke klasse is 192.168.1.1 ?
63. Zitten de volgende computers in hetzelfde netwerk ?
192.168.1.15/24 en 192.168.2.15/24
64. Zitten de volgende computers in hetzelfde netwerk ?
192.168.1.15/16 en 192.168.2.15/16
65. Zitten de volgende computers in hetzelfde netwerk ?
192.168.11.42/20 en 192.168.15.33/20
66. Hoeveel computers kunnen er in 10.104.0.0/17 ?
A. 32 duizend
131
tiende les
B 65 duizend
C 130 duizend
67. Uit hoeveel packetjes bestaat het opzetten van een udp sessie ?
A.
B.
C.
D.
E.
2
3
4
5
een udp-sessie bestaat niet
68. Maak een tekening met daarop jou pc, die van je buurman, de router van scheppers
en de dns server van scheppers. Zet de juiste mac-adressen erbij.
69. Maak een tekening met daarop jou pc, die van je buurman, de router van scheppers
en de dns server van scheppers. Zet de juiste ip-adressen erbij.
70. Wat gebeurt er met het bron-ip-adres als je een ping doet naar een machine achter
een gewone router ?
71. Wat gebeurt er met het bestemmings-ip-adres als je een ping doet naar een
machine achter een gewone router ?
72. Wat gebeurt er met het bron-ip-adres als je een ping doet naar een machine achter
een snat router ?
73. Wat gebeurt er met het bestemmings-ip-adres als je een ping doet naar een
machine achter een snat router ?
74. Wat gebeurt er met het bron-ip-adres als je een ping doet naar een machine achter
een dnat router ?
75. Wat gebeurt er met het bestemmings-ip-adres als je een ping doet naar een
machine achter een dnat router ?
132
Chapter 14. Test 9 en 10 november
Table of Contents
14.1. de vragen .................................................................................................... 133
14.2. de antwoorden ............................................................................................ 136
14.1. de vragen
Vraag 1. De laptop genaamd mb doet een ping naar de desktop genaamd barry. In
het linkse groene kadertje staat (vereenvoudigd) het packetje op het linkse netwerk.
Het rechtse groene kadertje is voor het rechtse netwerk. Vul de tekening aan met
de correcte omschrijvingen voor mac-adres en ip-adres (src = source of bron, dest
= destination of bestemming). Vul de woorden mb, barry en router in de groene
kadertjes. De router is een gewone router zonder nat.
Vraag 2. De laptop genaamd mb doet een ping naar de desktop genaamd barry. In
het linkse groene kadertje staat (vereenvoudigd) het packetje op het linkse netwerk.
Het rechtse groene kadertje is voor het rechtse netwerk. Vul de tekening aan met
de correcte omschrijvingen voor mac-adres en ip-adres (src = source of bron, dest
= destination of bestemming). Vul de woorden mb, barry en router in de groene
kadertjes. De router is een source nat of snat router (vergelijkbaar met het routerke
dat jullie thuis hebben staan).
133
Test 9 en 10 november
134
Test 9 en 10 november
Vraag 3. Een volledige backup van een databank duurt volgens de berekening
van je medewerker exact 740715 seconden (zevenhonderdveertigduizend en
zevenhonderdvijftien). Zet die 740715 seconden om in dagen, uren, minuten en
seconden. U mag hiervoor de rekenmachine van de computer gebruiken, op
voorwaarde dat geen enkel ander venster open staat (ook niet geminimized).
Vraag 4. Selecteer vijf netwerken die voldoen aan de volgende voorwaarden :
-
ze mogen enkel een private range omvatten
de netwerken mogen elkaar niet overlappen
de netwerken moeten minsten 240 computers kunnen bevatten
twee van de netwerken moeten minstens 5000 computers kunnen bevatten
10.0.0.0/12
10.0.8.0/29
168.192.0.0/16
168.192.4.0/16
172.17.4.0/29
192.16.4.0/24
10.0.7.0/24
10.0.9.0/24
168.192.1.0/24
169.0.0.0/8
172.17.2.0/24
192.168.0.0/8
10.0.7.0/29
10.0.9.0/29
168.192.2.0/24
172.16.0.0/8
172.26.1.0/24
192.168.2.0/24
10.0.8.0/24
127.0.0.0/8
168.192.3.0/16
172.16.0.0/15
172.38.3.0/24
192.168.4.0/24
Vraag 5. Schrijf de volgende woorden bij het juiste protocol.
sessie, betrouwbaar, onbetrouwbaar, connectie, connectieloos,
http, smtp, triple handshake, rip
Table 14.1. TCP of UDP
TCP
UDP
Vraag 6. Welk besturingssysteem of webserver wordt gebruikt voor de volgende
websites ? Kijk goed naar het eerste antwoord van de webserver. Geef geen informatie
over advertenties die op dezelfde website staan. (Typ ook geen www. voor de gegeven
url.)
sporza.be :
vtm.be :
ginsys.be :
inuits.be :
planet.grep.be :
135
Test 9 en 10 november
14.2. de antwoorden
Vraag 1. De laptop genaamd mb doet een ping naar de desktop genaamd barry. In
het linkse groene kadertje staat (vereenvoudigd) het packetje op het linkse netwerk.
Het rechtse groene kadertje is voor het rechtse netwerk. Vul de tekening aan met
de correcte omschrijvingen voor mac-adres en ip-adres (src = source of bron, dest
= destination of bestemming). Vul de woorden mb, barry en router in de groene
kadertjes. De router is een gewone router zonder nat.
mac-adressen blijven steeds lokaal tot aan de router! In het linkse netwerk kan je dus
enkel de mac-adressen van de macbook en van de router schrijven, met macbook als
bron en router als bestemming. In het rechtse netwerk kan je enkel de mac-adressen
van de router en van de desktop zetten, met de router als bron.
ip-adressen zorgen voor de verbinding tussen twee computers, en worden door
(normale) routers niet aangepast. Links en rechts zet je dus hetzelfde ip-adres als bron
(dat van de macbook waar de ping vertrekt) en hetzelfde ip-adres als bestemming (dat
van de desktop die de ping ontvangt).
Vraag 2. De laptop genaamd mb doet een ping naar de desktop genaamd barry. In
het linkse groene kadertje staat (vereenvoudigd) het packetje op het linkse netwerk.
Het rechtse groene kadertje is voor het rechtse netwerk. Vul de tekening aan met
de correcte omschrijvingen voor mac-adres en ip-adres (src = source of bron, dest
= destination of bestemming). Vul de woorden mb, barry en router in de groene
kadertjes. De router is een source nat of snat router (vergelijkbaar met het routerke
dat jullie thuis hebben staan).
mac-adressen blijven steeds lokaal tot aan de router! In het linkse netwerk kan je dus
enkel de mac-adressen van de macbook en van de router schrijven, met macbook als
bron en router als bestemming. In het rechtse netwerk kan je enkel de mac-adressen
van de router en van de desktop zetten, met de router als bron.
Een source nat gaat het bron-ip-adres vervangen door zijn eigen ip-adres (als bron).
De ip-adres bestemming blijft dus overal de desktop, de bron is links de macbook,
en rechts de router.
136
Test 9 en 10 november
Vraag 3. Zet 740715 seconden om in dagen, uren, minuten en seconden.
740715/60/60/24=8.573 (8 dagen, acher de komma bijhouden)
0.873*24=13.754 (13 uren, na de komma bijhouden)
0.754*60=45.25 (45 minuten, na de komma bijhouden)
.25*60=15 (15 seconden)
Vraag 4. Selecteer vijf netwerken die voldoen aan de volgende voorwaarden :
-
ze mogen enkel een private range omvatten
de netwerken mogen elkaar niet overlappen
de netwerken moeten minsten 240 computers kunnen bevatten
twee van de netwerken moeten minstens 5000 computers kunnen bevatten
10.0.0.0/12
10.0.8.0/29
168.192.0.0/16
168.192.4.0/16
172.17.4.0/29
192.16.4.0/24
10.0.7.0/24
10.0.9.0/24
168.192.1.0/24
169.0.0.0/8
172.17.2.0/24
192.168.0.0/8
10.0.7.0/29
10.0.9.0/29
168.192.2.0/24
172.16.0.0/8
172.26.1.0/24
192.168.2.0/24
10.0.8.0/24
127.0.0.0/8
168.192.3.0/16
172.16.0.0/15
172.38.3.0/24
192.168.4.0/24
schrap de niet private ranges (168.192.* 127.* 169.* 172.38.*)
schrap de niet-netwerken 172.16.0.0/8 en 192.168.0.0/8)
schrap de te kleine netwerken (alles boven de /24)
Je houdt nu nog twee netwerken over met meer dan 5000 ip's 10.0.0.0/12 en
172.16.0.0/15. Schrap de overlappende netwerken 10.0.x.0/24 en 172.17.2.0/24, dan
blijven er nog drie over 172.26.1.0/24 , 192.168.2.0/24 en 192.168.4.0/24
Vraag 5. Schrijf de volgende woorden bij het juiste protocol.
Table 14.2. TCP of UDP
TCP
UDP
connectie
connectieloos
betrouwbaar
onbetrouwbaar
sessie
triple handshake
http smtp
rip
De eerste groep kreeg rip, de tweede groep smtp.
Vraag 6. Welk besturingssysteem of webserver wordt gebruikt voor de volgende
websites ? Kijk goed naar het eerste antwoord van de webserver. Geef geen informatie
over advertenties die op dezelfde website staan. (Typ ook geen www. voor de gegeven
url.)
sporza.be : Apache/2.2.3 (Linux/SUSE)
vtm.be : Oracle Application Server /10g (10.1.2)
ginsys.be : Apache
inuits.be : Apache/2.2.3 (CentOS)
planet.grep.be : nginx
Gebruik dns or tcp als filter, dan zie je je dns-lookup voor sporza.be, vlak daarna de
tcp-three-way-handshake, vlak daarna de http-request van je browser en vlak daarna
de eerste reactie van de http-server.
137
Chapter 15. modems
Table of Contents
15.1.
15.2.
15.3.
15.4.
over
over
over
over
modems ..............................................................................................
DSL ....................................................................................................
kabelmodems .....................................................................................
bandbreedte ........................................................................................
138
139
142
142
15.1. over modems
Over modems is heel wat te zeggen, modems hebben een essentiële rol gespeeld in
de ontwikkeling van internet.
15.1.1. modulatie-demodulatie
Per definitie is een modem een modulator-demodulator. Modulatie is het encoderen
van digitale informatie (zoals bits) over een analoog signaal (zoals het geluid over
een telefoonverbinding). Demodulatie is het terug omzetten van dit analoge signaal
naar (hopelijk dezelfde) bits.
Een modem is dus een interface tussen de computer en het telefoonnetwerk, en laat
toe dat twee computers (digitaal) met elkaar praten over de (analoge) telefoon.
15.1.2. baud
Het moduleren van digitale informatie gebeurt in symbolen. Een symbool is een
eenheid van digitale informatie die gecodeerd (gemoduleerd) is in een analoog
signaal. Zo een eenheid van digitale informatie is bijvoorbeeld een bit (deze kan 0
of 1 zijn). Maar het kan evengoed een koppel bits zijn (mogelijke symbolen zijn dan
00, 01, 10 en 11).
Indien een modem 300 symbolen per seconde kan zenden of ontvangen, spreken we
van een modulatie rate of baud rate van 300.
15.1.3. bit rate
De bit rate van de modem hangt af van de gebruikte symbolen. In het geval dat elk
symbool slechts 1 bit bevat, is de bit rate gelijk aan de baud rate. Bevat elk symbool
twee bits, dan is de bit rate het dubbel van de baud rate.
15.1.4. bits per seconde
De bit rate kan je meten in bits per seconde (bit/s of bps) of ook in kilo- megagiga- en terabits per seconde (ook geschreven als Mbit/s, Mbps, Gbit/s, Gbps, Tbit/s,
138
modems
Tbps). In tegenstelling tot de kibi vs kilo discussie bij harde schijven, is hier een kilo
altijd gelijk geweest aan 1000 en een mega altijd aan 1000 kilo (enzoverder).
15.1.5. pariteit
Pariteit is een eenvoudige controle op fouten tijdens de transmissie.
15.1.6. seventies V. standaarden
De bandbreedte (soms ook snelheid genoemd) in bits per seconde hangt af van de
gebruikte standaard. De V.21 standaard van 1962 liet toe om 300 bit/s te halen met
een baud rate van 300 (m.b.v. FSK). De V.22 standaard uit 1976 haalde 1200 bit/s
gebruik makend van 600 baud (m.b.v. PSK).
15.1.7. eighties V. standaarden
De jaren 80 zagen een evolutie van 2400 bit/s over 600 baud (de V.22bis standaard)
naar 9600 bit/s over 2400 baud. Deze laatste werd in 1989 bereikt met de V.32
standaard.
15.1.8. nineties V. standaarden
1991 zag de 14.4 kbit/s, dit werd verdubbeld in 1994 en verdrievoudigd in 1996 om
vanaf 1998 een tijdje te blijven staan op de veelgebruikte V.90 standaard van 56
kilobits per seconde.
Nadien zijn we overgeschakeld op andere technologiën zoals DSL en DOCSIS.
15.2. over DSL
15.2.1. DSL
DSL is een verzamelnaam voor verschillende digital subscriber loop
implementaties zoals SDSL, IDSL, ADSL, ADSL2 etc.
Typisch aan DSL is dat je een DSL-splitter nodig hebt om de lage voice-tonen (die
naar de klassieke telefoon moeten) te scheiden van de hoge tonen (boven 25kHz) die
DSL gebruikt voor data, en die naar de xDSL modem moeten.
139
modems
In tegenstelling tot wat sommige mensen denken, maakt de DSL technologie geen
gebruik van het echte pots netwerk, maar enkel van de local loop.
15.2.2. ADSL
Asynchronous DSL werkt ook over de telefoonlijn, of beter over het klassieke
koperpaar tot aan de centrale (de local loop). adsl is veel sneller dan de 'normale'
modems. adsl gebruikt andere frequenties dan de voice-modems, en werkt enkel op
korte afstand (maximum 5km) van de DSLAM in de telefooncentrale. Die dslam
splitst wederom de stem van de rest, en daar waar de stem over het pots netwerk
verder gaat, gaat het adsl signaal over het datanetwerk van de telefoonmaatschappij
(of isp) om zodoende het internet te bereiken.
ADSL heeft typisch een veel grotere download bandbreedte dan upload. Een adsl
modem synchroniseert met een bepaalde sync rate, de gebruiker bereikt door
overhead maximaal 80-85 procent van deze sync rate.
15.2.3. SDSL
Synchronous DSL is nagenoeg identiek aan ADSL, behalve dat de up en download
hetzelfde is.
15.2.4. DSLAM
Een DSLAM is een multiplexer die verscheidene DSL lijnen verbindt met het
internet. Je kan pas ADSL nemen als jouw telefooncentrale over een DSLAM
beschikt.
De bandbreedte die je haalt tussen je xDSL modem en je lokale DSLAM wordt
beperkt door de afstand tot aan de centrale:
300m
600m
900m
1200m
1500m
1800m
2100m
4500m
-->
-->
-->
-->
-->
-->
-->
-->
25 Mbit/s
24 Mbit/s
23 Mbit/s
22 Mbit/s
21 Mbit/s
19 Mbit/s
16 Mbit/s
1.5 Mbit/s
15.2.5. local loop
Met de local loop bedoelen we de laatste paar kilometer draad van de telefooncentrale
tot aan uw woning. In heel wat landen is de (oude) publieke telefoonmaatschappij
de eigenaar van deze laatste kilometer tot aan uw huis. Sommige landen hebben een
wetgeving die verplicht om deze local loop te delen met concurrenten.
140
modems
15.2.6. ATM
ATM is ontwikkeld in de jaren 80 met realtime audio en video over het netwerk
als doel. ATM werkt met zeer kleine cellen om jitter te voorkomen. Het is immers
onaanvaardbaar dat packetjes te laat komen tijdens een telefoongesprek.
Naast een DSLAM (in dezelfde telefooncentrale) staat soms een ATM verbonden
met een ISP.
15.2.7. IP-DSLAM
Een IP-DSLAM is een DSLAM die rechtstreeks IP spreekt met routers (in
tegenstelling tot de normale DSLAM die ATM gebruikt om daarna via een ATM-IP
router te verbinden met IP).
15.2.8. IDSL
IDSL is DSL over ISDN. Het grote verschil met SDSL en ADSL is dat er bij IDSL
geen gebruik wordt gemaakt van het klassieke voice-telefoonnetwerk. Alle data gaat
over het ISDN netwerk. Nadeel is dan weer dat je niet tegelijk kan internetten en
telefoneren (als je enkel over ISDN beschikt).
15.2.9. multiplexen
Multiplexen wil zeggen dat meerdere digitale signalen (die komen van meerdere
kabels) worden samengezet op 1 enkel signaal (een enkele kabel). Multiplexen laat
dus toe dat meerdere digitale signalen een (duur) kanaal (of een enkele kabel) delen.
De multiplexer is een toestel dat meerdere signalen groepeert, de demultiplexer haalt
de originele signalen er weer uit. Deze toestellen worden ook een muxer en een
demuxer genoemd.
15.2.10. ADSL2+
ADSL2+ gebruikt een groter spectrum om de downloadsnelheid van ADSL te
verdubbelen tot 24Mbit/s.
15.2.11. VDSL
15.2.12.
141
modems
15.2.13.
15.3. over kabelmodems
15.3.1. DOCSIS
DOCSIS is een internationale standaard om dataverkeer mogelijk te maken over de
bestaande kabel-TV netwerken (zonder de TV uitzendingen te verstoren).
DOCSIS maakt gebruikt van kabelmodems die dienst doen als bridge en als modem
om internet toegang te leveren via het (coax) kabelnetwerk.
In Europa wordt door de PAL/NTSC verschillen eigenlijk de EuroDOCSIS
standaard gebruikt (die ongeveer 25 procent sneller is dan de equivalente DOCSIS
standaard).
15.3.2. CMTS
Te vergelijken met de DSLAM bij DSL, verbinden de kabelmodems van de klanten
zich met een CMTS in de centrales van het (TV-)kabelnetwerk. Een CMTS heeft
(duizenden) coax kabels aan de ene kant, en ethernet interfaces aan de internet kant.
15.4. over bandbreedte
Tot slot nog een kleine vergelijking van bandbreedtes van de besproken modems in
kilobytes per seconde.
Modem
Modem
Modem
Modem
Modem
300/300 bit/baud
2400/600 bit/baud
9600/2400
14.4 (V.32 bis)
56k (V.90)
-->
-->
-->
-->
-->
0.03kB/s
0.24kB/s
0.96kB/s
1.4 kB/s
6.6 kB/s
ISDN BRI
IDSL
SDSL
-->
-->
-->
16 kB/s
18 kB/s
290 kB/s
ADSL
ADSL2+
DOCSIS v1
EuroDOCSIS v1
DOCSIS v2
EuroDOCSIS v2
DOCSIS v3
EuroDOCSIS v3
--> 1024/ 128 kB/s
--> 3072/ 448 kB/s
--> 4750/ 1125 kB/s
--> 6000/ 1125 kB/s
--> 4750/ 3375 kB/s
--> 6000/ 3375 kB/s
--> 20000/15000 kB/s
--> 25000/15000 kB/s
ter info : GPON FTTH
--> +300000 kB/s
142
modems
143
Chapter 16. draadloze netwerken
Table of Contents
16.1. wireless .......................................................................................................
16.2. frequentie ....................................................................................................
16.3. spectrum .....................................................................................................
16.4. amplitude ....................................................................................................
16.5. fase .............................................................................................................
16.6. golflengte ....................................................................................................
16.7. IEEE 802.11 ...............................................................................................
16.8. WiMAX ......................................................................................................
16.9. Wi-fi ...........................................................................................................
16.10. Access Point .............................................................................................
16.11. hotspot ......................................................................................................
16.12. draadloze beveiliging ...............................................................................
16.13. wardriving ................................................................................................
16.14. bluetooth ...................................................................................................
16.15. Denial of Service .....................................................................................
144
144
145
145
145
146
146
147
148
148
148
148
149
150
150
16.1. wireless
Wireless is veel trager dan bijvoorbeeld utp kabels, maar meestal wel snel genoeg
(sneller dus) dan gangbare thuis-internet verbindingen.
Wireless ofte draadloos wil zeggen dat we alles bekijken wat golven van energie
gebruikt om (data) te communiceren. Eerst eens kijken wat een golf is.
Een golf (voor zover we die gebruiken bij datacommunicatie) beweegt zich voort
in de lucht (of in een ander medium) met een bepaalde frequentie en amplitude.
We laten voor het gemak de lichtgolven en elektromagnetische golven even buiten
beschouwing.
16.2. frequentie
Frequentie wordt uitgedrukt in Hertz. Een golf met een frequentie van 440 Hertz
ontvang je 440 keer in zijn geheel per seconde. Tussen haakjes, 440Hz is de
basisfrequentie voor het stemmen van instrumenten (ook wel kamertoon genoemd).
De meeste golven in deze cursus hebben echter een veel hogere frequentie, daarom
gebruiken we onder andere kHz, MHz, GHz en THz (voor elke orde van 1000).
Heinrich Hertz (1857-02-27 - 1894-01-01) was een Hamburgs natuurkundige die
vooral bezig was met elektromagnetisme en lichtgolven. Hij was de eerste om het
bestaan van VHF en UHF aan te tonen.
144
draadloze netwerken
16.3. spectrum
UHF en VHF zijn onderdelen van het volledige radiospectrum, gaande van 3 Hz tot
300 Ghz.
http://nl.wikipedia.org/wiki/Radiospectrum
De AM-radio uitzendingen (de langegolf) zitten bijvoorbeeld in de LF band (Low
Frequency). FM en (analoge)TV uitzendingen gebruiken de VHF (30-300Mhz).
Een toontje hoger zitten UHF-TV, GSM, onze microgolfoven, wireless LAN en
Bluetooth. UHF golven zijn tussen de 10 centimeter en 1 meter lang, en overbruggen
moeiteloos afstanden tot 100km. UHF wordt ook opgevangen door satellietschotel
antennes.
Het spectrum is bepaald door de ITU (http://www.itu.int).
16.4. amplitude
Amplitude is de grootte van de golf.
Een geluidsgolf is bijvoorbeeld sterker (of groter) als hij vertrekt bij uw mond, dan
wanneer hij aankomt bij iemands oor (toch als je zonder versterkers in een open
ruimte spreekt). Bij geluidsgolven wordt deze amplitude gemeten als luchtdruk (in
pascal dus).
16.5. fase
De fase van een golf kan uitgedrukt worden in graden, waarbij 360 graden gelijk is
aan 1 golflengte. Verschillende golven kunnen met elkaar in fase zijn, of niet.
145
draadloze netwerken
Sommige mensen zetten bass-luidsprekers per ongeluk in tegenfase.
16.6. golflengte
De golflengte is de lengte in meter van een golf, te meten van top tot top (of eender
welk ander puntenkoppel met dezelfde fase).
16.7. IEEE 802.11
De IEEE 802.11 standaarden beschrijven draadloze radiogolf communicatie voor
computers in een WLAN (wireless local area network). De gebruikte frequenties zijn
2.4, 3.6 en 5GHz.
De meest gebruikte van deze standaarden zijn de 802.11a, 802.11b en 802.11g.
16.7.1. 802.11a
De IEEE 802.11a standaard dateert al uit 1999 en werkt op de 5GHz band. De
theoretische maximum bandbreedte die je met deze standaard haalt, is 54Mbit/s (net
zoals modems wordt er teruggevallen op lagere snelheden bij het handshaken).
Deze standaard gebruikt 12 kanalen.
16.7.2. 802.11b
De IEEE 802.11b standaard (ook uit 1999) is beperkt tot maximaal 11Mbit/s, maar
is wel al tien jaar beschikbaar in de praktijk. Bijkomend voordeel op de 802.11a is
dat deze de 2.4GHz band gebruikt i.p.v. de 5GHz (deze laatste wordt makkelijker
geabsorbeerd door muren).
Nadeel is dan weer dat de 2.4GHz band een vrije band is, er is dus interferentie
mogelijk met andere draadloze toestellen (en ook met microgolfovens).
146
draadloze netwerken
16.7.3. 802.11g
In 2003 kwam men op de proppen met de IEE 802.11g standaard. Deze werkt ook
in het 2.4GHz spectrum, maar wel aan maximaal 54Mbit (in de praktijk 22Mbit
bruikbare data).
Al sinds januari 2003 (dus nog voordat de standaard er was) zijn er triband
(ondersteuning voor a,b en g) producten op de markt.
16.7.4. 802.11n
Sinds eind 2009 is er een nieuwe standaard, de 802.11n met een theoretische
bandbreedte van 600Mbit/s. De toestellen zijn al wel sinds twee jaar te koop.
http://en.wikipedia.org/wiki/IEEE_802.11n-2009
16.7.5. kanalen
Een band zoals bijvoorbeeld de 2.4GHz band wordt de een IEEE 802.11 standaard
steeds onderverdeeld in kanalen. De 2.4Ghz band beschikt eigenlijk over alle
frequenties van 2.400 Ghz tot en met 2.499 GHz. Vanaf het eerste kanaal op 2.412
GHz is er om de 5Mhz een nieuw kanaal. Alle kanalen zijn 22MHz breed, er is dus
overlapping.
http://en.wikipedia.org/wiki/List_of_WLAN_channels
Het is aan te raden om enkel de kanalen 1, 6 en 11 te gebruiken als het bereik van
de access points elkaar overlapt. Het gebruik van de kanalen 1, 4, 8 en 11 kan voor
problemen zorgen (als je ze onverstandig plaatst).
http://www.cisco.com/en/US/docs/wireless/technology/channel/deployment/guide/Channel.htm
16.7.6. bonding
Producten die kanalen samen gebruiken (bonding) om 108Mbit aan te bieden,
zijn niet beschreven in een standaard en zijn zeker niet met alle draadloze clients
compatibel.
16.7.7. bandbreedte?
In de praktijk wordt door de asynchroniteit van deze standaarden en de overhead van
de lagen een veel lagere doorvoer van data gehaald dan de geadverteerde 54Mbit (of
11Mbit).
16.8. WiMAX
WiMAX is de marketing naam voor de IEEE 802.16 standaard om mobiele
draadloze toegang te voorzien met een bereik van enkele kilometer en een
147
draadloze netwerken
bandbreedte tussen 1 en 20Mbit. Steden zoals Leuven, Gent en Aalst beschikken over
een WiMAX netwerk (van Clearwire).
Praktijkervaring leert dat de technologie nog in de kinderschoenen staat (of dat
clearwire het aantal stations duidelijk onderschat). Er zijn (of waren) plannen bij
Clearwire om heel België te dekken met WiMAX (maar vandaag is er nog geen
verbinding in Antwerpen bijvoorbeeld).
16.9. Wi-fi
Dit is een handelsmerk, meestal gebruikt voor WLAN (Wireless LAN) toestellen.
16.10. Access Point
Een Wireless Access Point is een toestel dat draadloze verbindingen toelaat van
client devices (wireless pc-cards etc). Meestal is de access point verbonden met een
bekabeld netwerk.
Deze toestellen kunnen meestal verschillende draadloze WLAN (of Bluetooth)
standaarden aan, en kunnen een kanaal kiezen.
16.11. hotspot
Een hotspot is een plaats waar draadloos internet beschikbaar is. Zowel laptops,
netbooks als pda en smartphones kunnen gebruik maken van hotspots.
Beveiliging van hotspots (of wireless in het algemeen) is een heel groot onderwerp...
16.12. draadloze beveiliging
Het grote verschil met bekabelde netwerken, is dat je geen firewall in de lucht kan
hangen om je draadloze netwerk te beveiligen.
16.12.1. per ongeluk
Heel wat software zoekt automatisch een netwerk, heel wat draadloze toestellen
(modems) staan standaard open voor deze automatische zoekopdrachten. Het is dus
perfect mogelijk dat je per ongeluk op een ander zijn draadloos netwerk surft.
16.12.2. MAC beveiliging
Je kan de meeste access points beveiligen door enkel bepaalde MAC-adressen toe
te laten. Maar zoals jullie weten is het MAC-adres een essentieel onderdeel van elk
ethernet frame, en door elke sniffer gewoon te lezen.
148
draadloze netwerken
MAC filtering beschermt je wel tegen 'per ongeluk'.
16.12.3. IP beveiliging
Je kan de draadloze DHCP server afzetten, en enkel werken met (enkele) toegelaten
vaste ip-adressen.
16.12.4. WEP
WEP staat voor Wired Equivalency Privacy/Protocol en is een verouderde
standaard om draadloze netwerken te beveiligen.
De WEP standaard dateert uit 1997, sinds 2001 zijn er tools te vinden om WEP te
kraken. Als reactie hierop werd WPA ontworpen.
WEP bestaat (of bestond) in een 40bit en een 128bit standaard (danku USA). Een
grotere sleutel wil zeggen dat er meer pakketjes moeten gesnift worden alvorens je
de key kan berekenen (kraken). Een goeie crack-tool genereert zelf binnen enkele
minuten de nodige trafiek om de WEP-sleutel te achterhalen. Sinds 2007 is publiek
aangetoond dat dit ook binnen de enkele seconden kan.
http://eprint.iacr.org/2007/120.pdf
16.12.5. WPA
WPA staat voor Wi-Fi Protected Access en is ontworpen als reactie op de zwakke
WEP beveiliging. WPA is ondertussen zelf vervangen door WPA2. WPA beveiliging
met een simpele passphrase (pre-shared key) kan binnen de minuut gekraakt worden.
WPA2 (dat AES gebruikt) is wel veilig als je een goeie 64-hex string gebruikt.
16.12.6. ramen en muren
Om te verhinderen dat je (corporate) netwerk ook op de parking beschikbaar is, kan
je speciale verf op de muur plaatsen (of een film op de ruiten) om radiogolven bewust
te absorberen.
16.13. wardriving
wardriving is het zoeken naar draadloze (onbeveiligde) netwerken met een laptop of
netbook, meestal al rijdend. Meestal worden tools zoals kismet of kismac gebruikt,
soms ook netstumbler, maar er bestaan heel wat meer tools. wardriving brengt deze
netwerken in kaart (door te luisteren). Het effectief gebruiken van (onbeveiligde)
draadloze netwerken behoort niet tot het wardriven. (netstumbler gaat dus iets verder
dan nodig om netwerken in kaart te brengen)
149
draadloze netwerken
16.14. bluetooth
Bluetooth is een draadloos protocol dat gebruikt maakt van een master om te
communiceren met een slave. Een bluetooth toestel kan een verbinding hebben met
maximaal zeven slaves. Enkel de master kan data sturen (of data opvragen).
Heel wat toestellen hebben standaard bluetooth geactiveerd. Scannen naar bluetooth
toestellen in je woonkamer kan wel eens verrassende resulaten opleveren als er
toevallig mensen passeren op straat:
root@mac:~# hcitool scan
Scanning ...
00:22:XX:XX:XX:XX HTC Hero grijs
00:16:53:0B:1C:75 Mercedes
00:16:53:08:EB:6E Julie
00:16:X8:4X:52:95 W810i
00:16:XX:XX:XX:8X n/a
00:16:XX:XX:XX:8X Steven Nokia 6021
00:19:4X:75:85:53 Johnneke
00:1X:XX:X2:9X:7X Nokia 6021
00:21:XX:XX:XX:XX Nokia 3120 classic
00:26:5X:7X:2X:88 David
18:86:XX:18:XX:39 Nokia 6300
X8:7X:33:XX:8X:X2 Nokia 6303 classic
X8:7X:33:XX:93:X2 Nokia 6303 classic
16.15. Denial of Service
Niet echt een hack, maar wel lastig als je er mee te maken krijgt.
150
Chapter 17. praktijk netwerk bouwen
Table of Contents
17.1.
17.2.
17.3.
17.4.
17.5.
17.6.
hubs ............................................................................................................
switches ......................................................................................................
routers .........................................................................................................
kabels .........................................................................................................
demo console switch ..................................................................................
stp ...............................................................................................................
151
151
151
151
153
155
17.1. hubs
We weten nog dat hubs in principe veredelde versterkers zijn die signalen die
ze binnenkrijgen doorsturen naar alle andere poorten. Hubs zijn de eenvoudigste
toestellen en zitten in laag 1.
We beschikken over een GeoStax/E 16-port hub en over een 5-port 3Com
OfficeConnect 'switch' (die behalve 802.1p en 10/100Mbit detectie eigenlijk een hub
is).
17.2. switches
We weten nog dat switches in laag 2 zitten, en dat die dus ietsje slimmer zijn dan hubs.
Switches bestaan er in 1001 soorten. We hebben een 24-port SmartStack ELS-100,
een 24-port DNswitch 224s en een 24-port LinkSys/Cisco SR224.
17.3. routers
Routers kennen ip-adressen en zitten dus in laag 3. Brengt iemand een routerke mee
van thuis ?
17.4. kabels
We hebben uiteraard straight en crossed utp kabels nodig, en ook een nullmodem
kabel.
17.4.1. rj45
In de volksmond heeft men het dikwijls over rj11 en rj45 aansluitingen voor
respectievelijk de telefoon-plug en de netwerkkabel-plug. Feitelijk berust dit op een
misverstand.
151
praktijk netwerk bouwen
http://en.wikipedia.org/wiki/RJ45
17.4.2. rechte kabel
Een straight cable ook wel patch-kabel genoemd is een utp kabel met de draadjes
aan beide uiteinden (de rj45 plugs) hetzelfde. Dit is nodig voor heel wat 10/100Mbit
netwerken (gigabit ethernet heeft auto-MDIX en ondersteunt dus beide soorten
kabels).
http://en.wikipedia.org/wiki/Twisted_pair
17.4.3. crossover ethernet kabel
Een crossed cable of crossover cable (NL: een gekruiste kabel), is dus een kabel waar
enkele draadjes anders zitten aan de ene kant dan aan de andere kant (paren 3 en 6
zijn gekruist). Recente netwerkkaarten detecteren rechte en gekruiste kabels.
http://en.wikipedia.org/wiki/Ethernet_crossover_cable
17.4.4. nullmodem kabel
Deze kabel uit de oertijd van de informatica (db9-db9) kon gebruikt worden in de
jaren 80 om twee computers met elkaar te verbinden langs de seriële poort. Vandaag
wordt deze kabel nog gebruikt om consoles van allerhande toestellen te bereiken.
Als je laptop geen seriële poort meer heeft, dan kan een serial-to-usb dongle je verder
helpen.
http://en.wikipedia.org/wiki/Null_modem
http://nl.wikipedia.org/wiki/Seriële_poort
http://en.wikipedia.org/wiki/D-subminiature
17.4.5. de console
Er bestaat soms veel verwarring over wat de console nu juist is. We gebruiken hier
in de klas een nullmodem kabel om de console van een switch te bekijken. In onze
klas is de console dus het scherm dat luistert naar de seriële poort van een van de
computers.
Op Unix wordt het toestel (of het device) dat luistert naar /dev/console wel eens de
console genoemd.
152
praktijk netwerk bouwen
17.5. demo console switch
We gebruiken hier een terminal programma dat luistert naar de seriële poort (die
verbonden is via een nullmodem kabel met de seriële poort van de switch) terwijl de
switch opstart. Wat volgt zijn enkele screenshots.
Het eerste screenshot hierboven toont het welkomstscherm van de SmartStack
ELS100 switch. Je moet uiteraard over een userid en paswoord beschikken om de
switch te beheren.
De switch beschikt over een overzichtelijk en makkelijk te navigeren menu.
153
praktijk netwerk bouwen
Je kan het stp (spanning tree protocol) beheren en installeren via dit menu. In het
screenshot hierboven zie je dat er een kabel steekt in port 4.
Altijd handig om het ip-adres van je switch te kennen.
154
praktijk netwerk bouwen
Als je het ip-adres kent, dan kan je surfen naar de webinterface van de switch.
17.6. stp
Het spanning tree protocol of stp ...
Een voorbeeldje van stp aan het werk (met dank aan GhosT die deze tekeningen
onder CC Attribution 3.0 op wikipedia heeft gezet).
Hieronder een netwerk bestaande uit 6 segmenten (letters a tot f), gescheiden door
zeven switches (cijfers 3, 4, 5, 7, 12, 24, 92). Zonder stp zouden er eindeloze lussen
ontstaan (van bijvoorbeeld arp broadcasts).
155
praktijk netwerk bouwen
De eerste actie van stp is om een root bridge te verkiezen (herinner U dat bridges en
switches beide op layer 2 zitten). De switch met de laagste bridge id wordt verkozen
tot root bridge.
Een bridge id is een combinatie van een in te stellen prioriteit (een geheel getal) en
het mac adres. Enkel bij gelijke prioriteit wint de bridge(switch) met het laagste mac
adres. In ons voorbeeld is switch nr 3 verkozen tot root bridge.
156
praktijk netwerk bouwen
Vervolgens zoekt elke switch de kortste weg naar de root bridge. In ons voorbeeld
hier heeft elk netwerk een cost van 1 gekregen, maar in de praktijk kan dit verschillen.
Elke switch benoemt de poort van die kortste weg de root port (RP).
Vervolgens wordt er voor elk netwerksegment de poort gezocht die de kortste weg
aanduidt naar de root bridge. Deze poort wordt dan de designated port (DP) voor
dat netwerksegment genoemd.
157
praktijk netwerk bouwen
Alle overige poorten worden geblocked (Blocked Ports).
Als het netwerk (door een losse kabel bijvoorbeeld) hertekend wordt, dan berekent
stp automatisch de nieuwe koste weg naar de root bridge, met bijhorende
herbenoeming van root ports en designated ports.
158
Chapter 18. demo dhcp
Table of Contents
18.1.
18.2.
18.3.
18.4.
18.5.
18.6.
inleiding ......................................................................................................
vier broadcasts ...........................................................................................
dhcp server op windows ............................................................................
tekening DHCP ..........................................................................................
dhcp server op Linux .................................................................................
dhcp client ..................................................................................................
159
159
160
162
164
164
18.1. inleiding
Wat volgt is een demo van het opzetten van een DHCP server. Eerst op Windows
2003 Server zoals we in de klas vorige week gedaan hebben, dan op Red Hat Linux
Server.
18.2. vier broadcasts
We weten nog dat dhcp werkt met broadcasts. Als een dhcp client opstart, dan
stuurt die een DHCPdiscover. Alle dhcp servers antwoorden met een DHCPoffer.
De client kiest een van de offers (volgens de rfc het eerste offer) en stuurt een
DHCPrequest. De server antwoordt dan (meestal) met een DHCPack(knowledge).
U ziet een sniff hiervan hieronder.
159
demo dhcp
Pas na deze vier broadcasts mag de client de ip-configuratie die hij gekregen heeft
gebruiken. Dit tot aan het einde van de lease periode.
18.3. dhcp server op windows
De installatie verloopt geheel gelijk aan die van Microsoft Windows 2003 DNS
server, we beperken ons tot een enkel screenshot hier.
Zoals de meeste Windows settings wordt je ook hier een wizard kado gedaan die je
begeleidt door de setup van een nieuwe scope (of range).
160
demo dhcp
Elke setting krijgt een aparte pagina in de wizard. Hieronder de vraag naar de range
van ip-adressen.
Als een client een ip-adres (of een ip-configuratie met subnet+router+dns+...) krijgt,
dan is dit altijd tijdelijk. Als de helft van deze lease time bereikt is, dan zal de client
terug een DHCPrequest broadcasten. Meestal komt er dan een DHCPack van de
server, met een nieuwe (meestal dezelfde) lease time.
161
demo dhcp
Eens de wizard doorlopen, en de scope geactiveerd, kan je alle settings en alle leases
bekijken via de DHCP tool (eigenlijk een dhcp snapin voor de mmc).
18.4. tekening DHCP
We hebben een klein netwerk met twee servers (DHCP-SRV1 en DHCP-SRV2) en
twee clients (SunWS1 en Mac42). In het midden staat een hub (of een switch) om
162
demo dhcp
aan te tonen dat deze vier computers op hetzelfde netwerk, hetzelfde segment zitten.
Alle vier de computers hebben een kabel naar de hub (niet getekend hier).
1. De client SunWS1 start op en stuurt een DHCPDiscover op het netwerk. Alle
computers ontvangen deze broadcast.
2. Beide DHCP servers antwoorden met een DHCPOffer. DHCP-SRV1 is een
dedicated DHCP server en is sneller met zijn offer dan DHCP-SRV2 (die ook
fileserver is).
3. De client kiest het offer van DHCP-SRV1 en stuurt een DHCPRequest op het
netwerk.
4. DHCP-SRV1 antwoordt met een DHCPAck (een acknowledge).
Alle vier broadcasts (of vijf want er waren twee offers) zijn een layer 2 ethernet
broadcast naar ff:ff:ff:ff:ff:ff en een layer 3 ip broadcast naar 255.255.255.255. Alle
vier de computers hebben alle broadcasts ontvangen.
163
demo dhcp
18.5. dhcp server op Linux
Eerste stap is om even te kijken in het /etc/dhcpd.conf bestand (om te zien of er al
iets gedefinieerd is). Er is nog geen bestaande config, het bestand wijst ons naar een
voorbeeld config genaamd dhcpd.conf.sample.
[root@localhost ~]# cat /etc/dhcpd.conf
#
# DHCP Server Configuration file.
#
see /usr/share/doc/dhcp*/dhcpd.conf.sample
We passen het voorbeeldje een beetje aan en kopiëren de volgende configuratie naar
/etc/dhcpd.conf.
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.140 192.168.1.159
option routers
192.168.1.1;
option subnet-mask
255.255.255.0;
option domain-name
"classdemo.local";
option domain-name-servers
192.168.1.1;
default-lease-time
21600;
}
U herkent hierboven (hopelijk) dezelfde opties als in de Windows 2003 DHCP Server
wizard.
18.6. dhcp client
Hieronder een voorbeeldje van een Windows 2003 computer die client is van een
RHEL5 dhcp server.
164
demo dhcp
165
Chapter 19. demo webserver
Table of Contents
19.1.
19.2.
19.3.
19.4.
inleiding ......................................................................................................
simpele websites ........................................................................................
de webservers .............................................................................................
tekening http ..............................................................................................
166
166
168
169
19.1. inleiding
Vorige les hebben we een webserver opgezet op een Windows 2003 server, een
simpele website gemaakt en deze beveiligd met een paswoord. We hebben de nadruk
gelegd op http en welke informatie een webserver gebruikt om een van zijn websites
te tonen: ip-adres, domeinnaam en poort.
Je kan verschillende websites op dezelfde webserver benaderen door een andere poort
te kiezen, een ander ip-adres te kiezen, of de website een andere domeinnaam te
geven.
Nadien hebben we ook met apache een webserver gemaakt die een simpele website
toonde. We gebruikten een domeinnaam (toegevoegd aan het hosts bestand) om deze
website te bereiken.
19.2. simpele websites
Hieronder een screenshot van de broncode (html source code) van onze website op
Windows, getoond via de browser internet explorer.
166
demo webserver
Hieronder een screenshot van de broncode (html source code) van onze website op
Linux, getoond via de browser firefox.
167
demo webserver
19.3. de webservers
Op Windows maakten we gebruik van Microsoft IIS (Internet Information Server).
We hebben de default website aangepast, en laten wijzen naar ons index.html
document.
Op Red Hat Enterprise Linux hebben we enkel de laatste tien lijnen aangepast in
httpd.conf (het configuratiebestand van de httpd (alias apache) webserver.
168
demo webserver
19.4. tekening http
Hieronder een overzicht van een http request naar google.com. Het DNS verhaal is
hier ingekort tot de recursieve A query en response, het layer 2 en layer 3 verhaal
is volledig weggelaten.
Links staat een macbook pro en ik gebruik de safari browser om te surfen
naar google.com. Deze website is gehost op een van de google webservers
(209.85.227.113).
1. Stap 1 gebruikt udp om een A record te vragen aan de lokale DNS server (mijn
routerke genaamd illyria). Dit is een forward lookup query voor www.google.com.
2. Is een antwoord van de DNS server dat het ip-adres (209.85.227.113) bevat van
de webserver. Dit antwoord kwam ook in een udp packetje.
3. Dit packetje is de eerste stap in de tcp three-way handshake om een tcp sessie op
te zetten. Op layer 4 is dit een sessie tussen de macbook en de webserver van Google,
maar vergeet niet dat in de praktijk de layer 2 tot aan de router gaat, en de layer 3 (ip)
via de router (en nog een tiental andere routers die je kan vinden via traceroute) gaat.
4. Dit is de tweede stap in de tcp handshake, de webserver antwoord met een tcp
syn,ack packetje.
5. De macbook bevestigt de tcp sessie met een tcp ack. Na deze drie packetjes (syn ;
syn,ack ; ack) is de tcp-sessie een feit.
6. Als de tcp-sessie klaar is, dan kan http eindelijk zijn http query doen om een
webpagina te vragen aan de webserver. Zoals we in de demo-les hebben gezien bevat
deze http GET een ip-adres, de naam van een website en een poortnummer (hier 80).
Hieronder zie je de handshake en de http GET door de ogen van wireshark.
169
demo webserver
Vanaf stap 7, (niet op de tekening) zijn er heel wat packetjes die tussen de macbook
en de webserver worden uitgewisseld.
170
Chapter 20. e-mail
Table of Contents
20.1. tekening pop3 ............................................................................................. 171
20.2. tekening smtp (deel 1) ............................................................................... 172
20.3. tekening smtp (deel 2) ............................................................................... 173
20.1. tekening pop3
Je mailbox staat op een mailserver. Mailservers ontvangen mail via smtp en droppen
de mail (hopelijk) in de juiste mailbox. Als je je mail leest via MS Outlook, Evolution
of Thunderbird, dan maak je een verbinding met die mailbox om de mail te kopiëren
naar je lokale pc. We bekijken kort hoe dit in zijn werk gaat als we pop3 (post office
protocol) gebruiken.
Je merkt dat dit essentieel dezelfde tekening is als de vorige (het tot stand brengen
van een http verbinding).
Links staat de laptop (192.168.1.34) met het e-mailprogramma Thunderbird,
rechts staat een mailserver genaamd vanadium.openminds.be (ook gekend als
mail.cobbaut.be).
1. De eerste actie is een dns A query voor mail.cobbaut.be.
2. Het routerke met ingebouwde DNS server antwoordt met 88.151.243.22
3. De tcp syn.
171
e-mail
4. De tcp syn, ack.
5. De tcp ack (de tcp sessie is nu een feit).
6. Nu kan pop3 in actie schieten. Als je snift, kan je zien dat pop3 een login vereist,
en dat alle mails in platte tekst van de mailserver tot op de laptop komen. Hieronder
nog even een wireshark screenshot van de 6 stappen.
20.2. tekening smtp (deel 1)
We weten al dat smtp wordt gebruikt voor het versturen van e-mail. Deze eerste
tekening toont smtp tussen een client (Thunderbird) en een server (smtp.edpnet.be).
In deel 2 zien we smtp tussen twee mailservers.
1. Het eerste wat onze mailclient (Thunderbird hier) doet is een dns query voor de
A record van smtp.edpnet.be (die naam haalt hij uit de instellingen die je manueel in
je mailprogramma moet ingeven).
2. Gelukkig komt er een antwoord met ip 212.71.0.14
3. tcp syn
4. tcp syn, ack
5. tcp ack
172
e-mail
6. Als zesde stap zien we hieronder niet enkel het begin van smtp in actie. We
zien ook dat de mailserver zich identificeert als Sendmail. Sendmail is open source
software die door heel wat internet providers wordt gebruikt. Hieronder een wireshark
screenshot met deze zes packetjes.
20.3. tekening smtp (deel 2)
We volgen effe een mail, gestuurd vanop een pc met MS Outlook tot de mail zijn
bestemming bereikt.
Links onderaan staat de computer waarop de mail wordt geschreven, rechts onderaan
staat de laptop van de bestemmeling.
1. De eerste stap is het sturen van de mail naar de mailserver van de provider. In
dit geval gaat de computer van de e-mail-verstuurder een tcp sessie opzetten met de
smtp server van de isp (in dit geval smtp.edpnet.be). Deze ene stap is uitgelegd in
meerdere stappen in de vorige tekening.
2. Als de mailserver van de internet provider de mail ontvangen heeft, dan gaat die
eerst nakijken of die bedoeld is voor een lokale mailbox. Indien niet, dan gaat die op
zoek naar de MX en de A record van de mailserver waar de mail wel naartoe moet. De
mailserver vraagt dus aan zijn lokale DNS server voor de MX record van gmail.com
(als je een mail stuurt naar gmail.com natuurlijk).
173
e-mail
3. Stap 3 is het antwoord van de DNS server op de MX query. Dit antwoord bevat
ook de A records van o.a. smtp4.google.com.
4. De mailserver van edpnet maakt nu een smtp verbinding (en dus ook een tcp
sessie op port 25) met de smtp4.google.com (72.14.221.25) server. De mail verlaat
de internet provider van de verstuurder en bereikt de Google servers.
5. Stap 5 daar hebben we het raden naar. Google beschikt over tienduizenden servers,
mails kunnen gelezen worden van verschillende servers tegelijkertijd...
6. De laatste stap is het gebruik van een protocol zoals pop3 om de mail te lezen.
Om te vermijden dat mails onderweg gelezen worden, kan je ook pop3s (pop3 over
ssl) gebruiken.
Als extraatje een wireshark screenshot van pop3s in actie. (We hebben in de les nooit
over pop3s gesproken, dus je moet dat niet kennen).
174
Appendix A. GNU FDL
175
Index
Symbols
1000 bytes, 20
1024 bytes, 20, 21
127.0.0.1, 62
169.254.x.y, 62
23B+D(isdn), 30
2B+D(isdn), 30
30B+D(isdn), 30
32-bit, 20
64-bit, 20
68k, 20
8-bit, 20
A
adsl, 30, 34, 41, 46
Al Gore, 18
Andrew S. Tanenbaum, 7
anycast, 24
apipa, 62
Apple, 20
appletalk, 15, 29
application layer, 32
arp, 33, 34, 45, 67
arp(protocol), 37
arpanet, 13
ascii, 47
atm, 25
ATM, 34
B
Banyan Vines, 15
bbs, 14
bearer(ISDN), 30
belnet, 46
besturingssysteem, 10
binair, 72, 74, 75, 76, 77
bit, 19, 19, 72, 73, 74, 84
bluetooth, 34
bootp, 37
bri(isdn), 30
bridge, 41
broadcast, 24, 69, 73
browser, 43
bsd, 11
bus(netwerk), 27
byte, 19, 72
C
cidr, 69, 73
circuit switched, 27, 29
Cisco, 7, 26
class A, 63, 70
class B, 63, 70, 70
class C, 63, 70, 70, 70
classful, 72, 76
collision, 27
Commodore Amiga, 20
computernetwerken, 7
D
DARPA, 35
data(isdn), 30
data link layer, 33
decimaal, 75
Dennis Ritchie, 11
dhcp, 37, 62
dial up, 29
dns, 37, 45, 71
dns server, 45
DoD model, 35
double word, 20
Douglas McIlroy, 11
drop, 40
dword, 20
E
E1(isdn), 30
edpnet, 46
e-mail, 15
ethereal, 36
ethernet, 34, 40
F
facebook, 16
fddi, 25, 34
fidonet, 14
firefox, 43
firewall, 46
firewire, 34
frame relay, 25, 34
freeBSD, 11
ftp, 15, 71
G
gateway, 42
geheugen, 10
176
Index
gehuurde lijn, 30
gigabyte, 22
GNU/Linux, 12
Google, 16
gopher, 15
gpl, 12
kernel, 10
kibibyte, 22
kilobits, 30
kilobyte, 20
kiloBytes, 30
H
hardware, 10
Hertz, 29
hexadecimaal, 44
host, 33
host id, 65, 73, 78
http, 43, 43, 44, 45, 46
hub, 27, 40, 40
hub (actief), 40
hub (passief), 40
hybride netwerk, 28
LAN, 25
layer 2, 29
layer 3 switch, 41
layer 7 protocol, 43
leerplan, 5
linkedin, 16
link layer, 45
link local, 62
Linus Torvalds, 12
Linux, 12
localhost, 62
I
M
ICANN, 16
icmp, 33, 42
IEC, 21
IEEE, 21
IETF, 16
ifconfig(Unix), 65
igmp, 33
Intel, 20
internet, 13, 14, 70
internet explorer, 15
InterNIC, 16
ip, 33, 47
ip-adres, 44, 46, 61, 63, 65, 72, 73, 78
ipconfig(MS), 65
ipsec, 33, 71
ipv4, 14
ipv6, 14
ipx/spx, 15, 29
irda, 34
isdn, 30, 34
ISO, 21, 32
isp, 61
mac, 34, 40, 45, 46
MAC, 67
MAN, 25
mau, 27
megabyte, 22
mesh, 28
milnet, 13
mime, 33, 47
modem, 29, 34, 40, 41
moduleren, 41
mosaic, 15
mozilla firefox, 43
ms-dos, 10, 10
multicast, 23
multiport repeater, 40
MultiStation Access Unit, 27
J
Jon Postel, 18
K
kb, 30
Ken Thompson, 11
L
N
nat, 71
ncp, 14
NetBEUI, 15
netBSD, 11
netscape, 15
Netscape Navigator, 15
netwerkkaart, 40
network adapter, 40
network id, 65, 69, 73, 78, 84
network layer, 33
nic, 40
177
Index
nntp, 13
octet, 19
openBSD, 11
open source, 12
operating system, 10
orkut, 16
OS/2, 11
OSI, 32
OSI-model, 29, 32
OSI protocol, 14
slip, 29, 34
smtp, 13, 15
SNA, 15
sniffer, 36, 44
social networking, 16
SpyGlass, 15
ster(netwerk), 27
stp, 29
subnet, 77
subnet mask, 64, 65, 69, 72, 73, 74, 75, 76, 84
supernet, 84
switch, 27, 41
P
T
packet switching, 13, 13
PAN, 26
parallelle verbinding, 27
physical layer, 34
point-to-point, 27
point-to-point-protocol, 29
POTS, 29
pots, 30
ppp, 29, 34
presentation layer, 33
pri(isdn), 30
private ip-adressen, 71
private ip ranges, 61
PSTN, 29
punt-tot-punt, 27
T1, 30, 34
T3, 30
tcp, 33, 44, 47, 49
tcp/ip, 14, 35, 43, 45
tcp handshake, 49
tcp sessie, 44, 47
terabyte, 22
Tim Berners Lee, 15, 18
token, 28
Token Ring, 27, 40
traceroute, 45
transfer control protocol, 44
transport layer, 33
tree(netwerk), 28
T-stuk(coax), 27
twisted pair, 29, 34
O
R
regional internet registry, 61
repeater, 40, 40
rfc, 15, 16
rfc 821, 15
rfc-editor.org, 29
Richard Stallman, 12
ring(netwerk), 27
ripe, 61
RIR, 17
Robert Cailliau, 18
root servers(DNS), 24
router, 26, 28, 33, 41, 45, 67, 70
U
S
W
seriële verbinding, 27
session layer, 33
SI, 21
sip, 71
W3C, 16
WAN, 25
webserver, 43
Werner Buchholz, 19
udp, 33, 49
unicast, 23
UNICS, 11
Unix, 11, 18, 29
usb, 34
utp, 29
uucp, 14
V
Vint Cerf, 18
vrije software, 12
178
Index
wi-fi, 34
wikipedia, 8, 11
windows 7, 11
windows 98, 10
windows me, 10
windows nt, 10
windows vista, 11
windows xp, 11
wireshark, 36
world wide web, 13, 15
WPAN, 26
www, 15, 18
www.rfc-editor.org, 15
X
X.25, 14, 25
x86, 20
Z
zebibyte, 22
zeroconf, 62
179