Internet: structuur , adressering en routering
| Kies een optie |
| aa |
|
| Structuur |
| Adressering op het Internet |
| Routering op het Internet |
| Structuur |
| Wat is het Internet? |
Het Internet zou omschreven kunnen worden als een wereldwijd netwerk van
computer-netwerken die met elkaar verbonden zijn via de TCP/IP techniek.
Terug
| Hoe is het Internet ontstaan? |
Eind jaren '60 financierde het Amerikaanse ministerie van Defensie een
onderzoeksproject naar computernetwerken, waaruit het ARPANET ontstond. Dit netwerk van
aanvankelijk vier computers van universiteiten groeide in de jaren '80 uit tot backbone
van Local Area Networks (LAN's) in de hele VS. In deze LAN's werd voornamelijk gewerkt met
UNIX-systemen voorzien van TCP/IP netwerk-programmatuur. Naast het ARPANET ontstonden
verschillende andere netwerken, zoals het Amerikaanse NSFnet, het Europese EUnet en in
Nederland NLnet. Door de koppeling van al deze netwerken ontstond het Internet, dat van
een paar duizend aangesloten computers halverwege de jaren '80 is uitgegroeid tot zo'n 20
miljoen medio 1997 (sinds 1987 is er sprake van een verdubbeling per jaar). Naast
UNIX-systemen bevat het Internet nu vele andere systemen, zoals Windows-PC's en
mainframes. De gemeenschappelijke factor van al die systemen is dat ze ondersteuning
hebben voor de TCP/IP netwerkprogrammatuur, de techniek waar
het Internet op gebouwd is.
Terug
| Hoe is de fysieke structuur van het Internet? |
Organisaties die toegang tot het Internet verschaffen worden Internet
Service Providers (ISP) genoemd. De ISP NLnet, de beheerder van het NLnet-netwerk, was
de eerste aanbieder van Internet-diensten in Nederland. De abonnees van NLnet zijn via
telefoonlijnen of via permanente huurlijnen verbonden met Points Of Presence (POP).
Deze knooppunten van het NLnet-netwerk zijn aan elkaar gekoppeld via verbindingen tot 100
Mbps (Megabit per seconde). Via een centraal Europees knooppunt van EUnet, de Amsterdam
Internet Exchange (AMS-IX), is dit netwerk verbonden met andere Europese nationale
netwerken, en ook met het Amerikaanse deel van het Internet. Naast de stervormige
koppeling van de nationale netwerken via de AMS-IX zijn er ook vele verbindingen tussen de
nationale backbones onderling, en via wereldwijde netwerken als UUnet (waarmee NLnet
inmiddels is samengegaan).
Terug
| Wie draagt de verantwoordelijkheid voor het Internet? |
Er is geen organisatie die verantwoordelijkheid voor het Internet als
geheel heeft. Deze verantwoordelijkheid wordt gedeeld door de providers, die elk zorg
dragen voor hun deel van het netwerk. Toch zijn er een paar zaken die centraal geregeld
moeten worden, zoals het toekennen van unieke namen (domeinnamen) en nummers (IP-adressen)
aan de computers op het Internet. IANA (Internet Assigned Numbers Authority),
eindverantwoordelijk voor het uitdelen van de IP-adressen, heeft haar taak gedelegeerd
naar de verschillende providers. Elk domein heeft zijn eigen organisatie waar namen binnen
dat domein kunnen worden aangevraagd, bijvoorbeeld de Stichting Internet Domein
Registratie Nederland (IDNL) voor .NL domeinen of INTERNIC voor .COM domeinen.
De Internet Society (ISOC) houdt zich bezig met het sturen van de sociale,
politieke en technische ontwikkelingen van het Internet. Onder ISOC zorgt het Internet
Architecture Board (IAB) voor de standaardisatie van Internet-technologie.
Terug
| Welke verbindingen zijn er mogelijk met het Internet? |
Er zijn verschillende manieren waarop individuele computers met het
Internet verbonden kunnen worden. Steeds meer organisaties kiezen voor een
(semi)permanente verbinding van hun bedrijfsnetwerk met het internet, waardoor dit netwerk
onderdeel wordt van het Internet. Particuliere Internet-gebruikers werken vrijwel allemaal
via een PPP-verbinding, een één-op-één verbinding tussen het eigen system en dat van
de provider waardoor het eigen systeem tijdelijk deel uitmaakt van het Internet (PPP:
Point-to-Point Protocol, de opvolger van SLIP). Indien een organisatie het
Internet alleen gebruikt voor email-afhandeling, kan gekozen worden voor het al wat oudere
UUCP (Unix to Unix Copy Protocol). Hierbij wordt de op een systeem van de provider
klaarstaande post in batches gekopieerd naar een computer van de abonnee (omdat niet met
TCP/IP gewerkt wordt maakt de computer van de abonnee geen deel uit van het Internet).
Terug
| Wat is het TCP/IP protocol? |
De afspraken over de vorm en betekenis van pakketten van informatie die
via een netwerk worden uitgewisseld zijn vastgelegd in netwerkprotocollen. Het voor het
Internet gebruikte TCP/IP protocol kan opgesplitst worden in vier lagen met elk zijn eigen
specifieke functie.
De fysieke laag zorgt voor het fysieke transport over het netwerkmedium. TCP/IP kan
over elk willekeurig fysiek medium gebruikt worden, zoals ethernet, token-ring, seriële
lijnen, satellietverbindingen, enzovoort. De systemen die in het Internet voorkomen kunnen
verdeeld worden in "gewone" machines, de hosts, en zogenaamde routers
die meerdere hosts of netwerken met elkaar verbinden. Het PPP-protocol dat gebruikt wordt
bij een punt-naar-punt TCP/IP verbinding kan men zien op het niveau van de fysieke laag.
De netwerklaag zorgt onder andere voor de routering, het vinden van een route van
het verzendende systeem naar het ontvangende systeem, waarvoor op het Internet het IP-protocol gebruikt wordt.
De transportlaag zorgt voor de communicatie tussen processen. Elke
Internet-applicatie is voor wat betreft de transportlaag gebouwd op ofwel het TCP-
ofwel het UDP-protocol. Als volledig foutvrije transmissie is vereist wordt TCP
gebruikt, als snelheid belangrijker is UDP (bijvoorbeeld bij telefonie en
videoconferencing).
In de applicatielaag bevinden zich de Internet-toepassingen als e-mail of
file-transfer. Deze toepassingen hebben meestal een client-server structuur (zoals
een Web-server die informatie aanbiedt welke door een Web-client (browser) benaderd kan
worden).
Terug
| Hoe verzorgt het IP-protocol de routering en adressering op het Internet? |
Routering (het vinden van een route van afzender naar bestemming) en
adressering (de nummering van machines in het netwerk) worden verzorgd door het protocol
dat op het Internet op netwerklaagniveau wordt gebruikt: het Internet Protocol (IP).
IP werkt niet met vaste netwerkverbindingen tussen afzender en bestemming, en is daarom
een connectionless protocol. Elk IP-pakket reist onafhankelijk van de vorige en de
volgende, dus is het mogelijk dat pakketten in dezelfde sessie verschillende routes nemen.
Het voordeel van een connectionless protocol is de flexibiliteit: als een router in het
netwerk uitvalt kan een andere route worden gezocht en kunnen toepassingen blijven
doordraaien. Hiertegenover heeft een connection-oriented netwerk (waarbij dus een vast pad
tussen partijen wordt opgebouwd, zoals in het telefonie-netwerk) het voordeel van een
grotere snelheid, omdat na de opbouwfase geen route meer gezocht hoeft te worden.
Het behoort niet tot de taken van IP om foutcontroles uit te voeren, dus onderneemt IP
geen actie indien pakketten niet aankomen. Foutcontroles kunnen, indien gewenst,
plaatsvinden op een hoger niveau, in praktijk meestal het TCP-protocol. Hierdoor kunnen
applicaties zélf beslissen welke mate van betrouwbaarheid ze krijgen ten koste van
snelheid.
Naast adressering en routering voorziet IP in enkele andere diensten waaronder fragmentatie en source routing.
Terug
| Wat is fragmentatie? |
Fragmentatie is noodzakelijk doordat de maximale pakketgrootte ofwel de MTU
(Maximal Transmission Unit) verschilt op de verschillende netwerken in het Internet.
Voor Ethernet is deze bijvoorbeeld 1500 bytes, voor een X.25-netwerk 576 bytes en voor een
FDDI-netwerk 4352 bytes (een seriële verbinding heeft geen inherent maximum). Het
opknippen van een pakket in meerdere stukjes heet fragmentatie, het omgekeerde proces
defragmentatie.
Terug
| Wat is source routing? |
Source routing wil zeggen dat de afzender van een IP-pakket in het pakket
een volledige routebeschrijving (strict source routing) naar de bestemming opgeeft, en dat
de bestemming de omgekeerde route zal gebruiken voor de retourpakketten. Indien de
afzender slechts een aantal routers noemt waar het pakket verplicht moet passeren spreken
we van loose source routing. Source routing wordt niet veel gebruikt, want in een source
route kunnen maximaal 10 adressen worden opgenomen en er kleven nogal wat
security-problemen aan souce routing.
Terug
| Adressering op het Internet |
| Hoe is de IP-adressering op het Internet geregeld? |
Elke computer in het Internet heeft een (of meerdere) IP-adres(sen). IP-adressen
zijn getallen met een lengte van 32 bits, verdeeld in twee stukken: een netwerknummer
en een machinenummer. Alle netwerken in het Internet zijn dus genummerd; de
computers binnen een netwerk hebben hetzelfde netwerknummer en verschillende
machinenummers. IP-adressen worden meestal in de zogenaamde dotted decimal notatie
weergegeven: vier getallen met punten ertussen. Elk getal is de decimale waarde van een
groepje van 8 bits in het IP-adres, en kan dus een waarde aannemen tussen de 0 en 255.
Terug
| Wat zijn klasse-A, -B en -C adressen? |
De verdeling van de 32 bits in een netwerk- en een machine-gedeelte is
niet vast.
Klasse-A adressen (te herkennen aan het meest linkse bit: een 0), bestaan uit 7 bits voor
het netwerk- en 24 bits voor het machinenummer. Er zijn dus maar 128 (2 tot de macht 7)
klasse-A netwerken.
Klasse-B adressen beginnen met 10, en hebben 14 bits voor het netwerknummer en 16 bits
voor het machinenummer.
Klasse-C adressen beginnen met 110, en bestaan uit 21 bits voor het netwerknummer en 8
bits voor het machinenummer. Klasse-C netwerken kunnen dus niet groot worden: 256 (2 tot
de macht 8) machines min twee (zie speciale
IP-adressen).
Hiernaast zijn er nog klasse-D adressen die beginnen met 1110 en bedoeld zijn voor multicasting en klasse-E adressen
(11110-) voor experimentele doeleinden.
In dotted decimal notatie kunnen we aan het eerste getal zien met welk soort IP-adres we
te maken hebben:
- van 0 t/m 127: klasse-A
- van 128 t/m 191: klasse-B
- van 192 t/m 223: klasse-C
- van 224 t/m 239: klasse-D
Terug
| Hoe worden IP-adressen uitgedeeld? |
IANA heeft de verantwoordelijkheid voor het uitdelen van IP-adressen
gedelegeerd aan zogenaamde Regional Internet Registries RIPE, InterNIC en APNIC die
blokken IP-adressen mogen uitdelen in de eigen regio, zoals RIPE in Europa, het
Midden-Oosten en Noord-Afrika. Deze hebben hun verantwoordelijkheid weer verder
gedelegeerd door blokken IP-adressen uit te delen aan providers. Deze delen de
verschillende IP-netwerknummers, of preciezer gezegd netwerk-prefixes, uit aan
geabonneerde organisaties. Hierbij gelden behoorlijk strenge procedures, omdat
organisaties in verband met toekomstige netwerkuitbreidingen gebaat zijn bij een flinke
adresruimte, terwijl de grote groei van het Internet tot problemen heeft geleid met
betrekking tot de beschikbare adresruimte. De invoering van CIDR betekende een tijdelijke oplossing
voor dit probleem; de sterk verbeterde versie van het IP-protocol, IP versie 6, zal een meer structurele
oplossing bieden. Op dit moment worden adressen voor het overgrote deel volgens CIDR uitgedeeld.
Terug
| Hoe wordt de IP-adressering in de praktijk opgezet? |
Bij de adressering geldt dat een systeem voor iedere netwerk-interface
een IP-adres heeft. Omdat de IP-routeringsprogrammatuur aanneemt dat machines met
hetzelfde IP-netwerkadres zich op dezelfde fysieke kabel bevinden, moet elk netwerk
zijn eigen IP-netwerkadres hebben. Hierbij kan eventueel gebruik worden gemaakt van subnetting.
Het gebruik van meerdere IP-netwerkadressen in één fysiek netwerk levert problemen op,
hoewel de meeste TCP/IP-implementaties wel mogelijkheden bieden om in zo'n geval met wat
extra moeite toch de routering op te zetten. Organisaties die nog geen Internet-koppeling
hebben, moeten zich realiseren dat het later alsnog koppelen van het bedrijfsnetwerk aan
het Internet gepaard zal gaan met een mogelijk complexe en tijdrovende
hernummeringsoperatie. Voor dergelijke netwerken (private Internets) heeft IANA
adressen gereserveerd die niet op het Internet gerouteerd worden en dus zonder botsingen
of misverstanden vrijelijk door elke organisatie die dat wil gebruikt kunnen worden. Wil
men later wel rechtstreekse connectiviteit met het Internet, dan zou dit gerealiseerd
kunnen worden door het gebruik van Network Address Translation (NAT) of van
proxy's.
Terug
| Wat zijn speciale IP-adressen? |
Het netwerk 127 is het zogenaamde loopback-netwerk. Meestal wordt alleen
het adres 127.0.0.1 gebruikt, het loopback-adres dat staat voor het eigen systeem,
bijvoorbeeld gebruikt om servers te benaderen die op het eigen systeem draaien.
Het IP-adres 0.0.0.0 mag uitsluitend in boot-situaties gebruikt worden als afzenderadres,
als een systeem nog niet weet wat zijn IP-adres is. In veel implementaties wordt 0.0.0.0
tevens gebruikt om de default route aan te geven. Om een netwerk als geheel aan te
duiden worden na een netwerknummer de resterende (machine)bits op 0 gezet. Indien deze
resterende bits op 1 staan, hebben we het zogenaamde broadcast-adres, het adres dat gebruikt
kan worden om alle systemen in het netwerk te bereiken. Zo houden we in een klasse-C
netwerk x.x.x.0 dus 254 (256-2) adressen over voor de daadwerkelijke adressering van
computers: x.x.x.1 t/m x.x.x.254; x.x.x.0 is het gehele netwerk en x.x.x.255 is de directe
broadcast.
Terug
| Wat is broadcasting? |
Broadcasting is de techniek waarbij IP-pakketten gericht zijn aan alle
systemen binnen een bepaald netwerk. Een veelgebruikte toepassing is het zoeken van een
bepaalde service, bijvoorbeeld een boot-server om een systeem te voorzien van zijn
netwerkinstellingen (waaronder het IP-adres). IP kent twee soorten broadcast-adressen. De lokale
broadcast bestaat uit alle bits op 1 (255.255.255.255) en staat voor alle systemen
binnen het eigen netwerk (wordt dus niet gerouteerd). De directe broadcast bestaat
uit een netwerknummer en alle overige bits op 1 en staat voor alle systemen in het
aangegeven netwerk. Broadcasting is duur in termen van verwerkingstijd, omdat een
broadcast-pakket door elke machine in het netwerk verwerkt moet worden. Vandaar dat veel
routers zijn ingesteld om broadcast-pakketten niet door te geven. Multicasting kan een economischer
alternatief vormen.
Terug
| Wat is multicasting? |
Multicasting is het versturen van pakketten naar groepen van machines,
zogenaamde multicast-groepen gekenmerkt door een multicast-groepsnummer. Multicast-groepen
kunnen bestaan uit systemen die verspreid zijn over heel het Internet, en kunnen dynamisch
gevormd worden of permanent blijven bestaan. Enkele toepassingen van multicasting zijn:
limited broadcasting (als economischer alternatief), conferencing en broadcasting in de
zin van het "uitzenden" van informatie over het Internet. Hierbij hoeft niet
voor elke gebruiker een aparte datastroom opgezet te worden, maar wordt ieder IP-pakket
slechts één keer verzonden en wordt het pas gesplitst als het echt nodig is, om
uiteindelijk bij alle leden van de multicast-groep aan te komen.
IP gebruikt voor multicasting klasse-D adressen die beginnen met 1110. De resterende 28
bits vormen het multicast-groepsnummer. Voor multicasting in een internetwerk zijn
aanvullende protocollen nodig. Het Internet Group Management Protocol (IGMP) dient
om multicast-routers te laten bijhouden welke multicast-groepen in hun netwerken in
gebruik zijn. Applicaties sturen IGMP-boodschappen om zich aan te melden in een
multicast-groep. De multicast-router hoort dit pakket, want hij luistert naar alle
multicast-pakketten die op het netwerk langskomen (netwerkkaart in de multicast
promiscuous mode). Daarnaast stuurt deze router van tijd tot tijd een IGMP-pakket om te
informeren wie er allemaal nog steeds lid zijn van welke multicast-groepen (er worden dus
geen IGMP-pakketten verstuurd wanneer groepen worden verlaten). De meeste routers
ondersteunen inmiddels IGMP, maar veel hosts nog niet. IGMP werkt voor direct gekoppelde
netwerken, maar biedt geen oplossing voor multicasting op grotere schaal. Multicast-routers
kunnen hun informatie met de speciale DVMRP- en MOSPF-routeringsprotocollen door
het Internet naar andere multicast-routers verspreiden, echter lang niet alle routers
ondersteunen deze protocollen. Dit probleem kan omzeild worden door het gebruik van
tunneling tussen systemen of eilandjes van systemen die multicasting wel volledig
ondersteunen, zoals bijvoorbeeld de Multicast Backbone (MBONE) waarop verschillende
providers aangesloten zijn en hun klanten de mogelijkheid bieden van hun faciliteiten
gebruik te maken.
Terug
| Hoe vindt adres-resolutie plaats? |
Het nauw met IP verweven Adres Resolutie Protocol (ARP) zorgt
ervoor dat op basis van IP-adressen fysieke Ethernet-adressen gevonden worden: verzender A
van een IP-pakket zet een MAC broadcast-frame op het netwerk (dus binnen het LAN) met de
vraag naar het Ethernet-adres behorende bij het IP-adres van ontvanger B, waarop de
machine die zich aangesproken voelt zal antwoorden. Indien A en B in verschillende
netwerken met router R daartussen zitten, zal de A geen ARP doen voor B (die zou ook niet
slagen) maar voor router R, en zal R vervolgens een ARP doen voor B.
Dus terwijl de header van een IP-pakket altijd de IP-adressen van de oorspronkelijke
afzender en de uiteindelijke bestemming van een pakket bevat, wordt bij het inpakken van
dit IP-pakket in een Ethernet-frame hieraan de Ethernet-adressen van de afzender en de
bestemming van de huidige stap toegevoegd. In tegenstelling tot het werken met tabellen
van IP-adressen en Ethernet-adressen is ARP een flexibel protocol: nieuwe hosts en/of
netwerkkaarten worden vanzelf ontdekt. De vertraging door de ARP-broadcasts wordt
tegengegaan door gebruik te maken van een ARP-cache (ofwel ARP-table), waarin
opgedane kennis van enkele minuten tot een half uur wordt bewaard. Bij een verandering
kunnen eventueel met de hand regels uit de ARP-cache verwijderd worden.
Terug
| Wat is proxy-ARP? |
Bij PPP-verbindingen wordt meestal gebruik gemaakt van proxy-ARP (ofwel
promiscuous ARP): een machine P geeft in naam van de host antwoord op ARP-verzoeken voor
de host, en geeft in het antwoord zijn eigen Ethernet-adres op. De verzender levert, in de
veronderstelling dat hij rechtstreeks bij de host aflevert, pakketten af op bij P, die ze
zal doorsturen naar de host. Als alternatieve manier van subnetting is het gebruik van
proxy-ARP zeer bewerkelijk en dus sterk af te raden.
Terug
Hoe worden foutafhandeling en controleboodschappen geregeld?
Een integraal onderdeel van IP is het Internet Control Message Protocol (ICMP), met
als taken foutafhandeling en het versturen van controleboodschappen. Bijvoorbeeld als een
router een pakket binnenkrijgt maar de bestemming niet kan bereiken of als een host een
pakket binnenkrijgt voor een applicatie die niet actief is, wordt een ICMP destination
unreachable boodschap teruggestuurd naar de afzender van het pakket. Iedere router
trekt één af van de time-to-live in de IP-header; als de TTL 0 is wordt een ICMP time
exceeded boodschap teruggestuurd. ICMP routing redirect boodschappen zijn
bedoeld om de routering aan te passen. Met de ICMP echo request kan gecontroleerd
worden of een machine op IP-niveau bereikbaar is, een ICMP echo reply is dan de
bevestiging (ping werkt hier bijvoorbeeld mee).
Terug
| Hoe vindt IP-initialisatie plaats? |
Bij het starten van een systeem moeten alle IP-instellingen
geïnitialiseerd worden, zoals het IP-adres, netwerk-masker, broadcast-adres,
routeringstabel, enzovoort. Ofwel het systeem voorziet zelf in zijn instellingen, ofwel
het systeem gaat te rade bij een boot-server. De tweede optie maakt het mogelijk de
instellingen in een netwerk centraal te administreren, waarbij in bedrijfsnetwerken vaak
gebruik gemaakt wordt van boot-protocollen
als RARP, BOOTP en DHCP.
Terug
| Hoe werken de bootprotocollen RARP, BOOTP en DHCP? |
RARP (Reverse Address Resolution Protocol) is het eenvoudigste en
werk als ARP, maar dan andersom: in een broadcast wordt gevraagd wat het IP-adres is dat
hoort bij het eigen Ethernet-adres. RARP heeft diverse nadelen: RARP moet in het
besturingssysteem zijn opgenomen (voornamelijk UNIX-systemen), werkt alleen op een lokaal
netwerk en levert alleen het IP-adres op. Het Boot Protocol (BOOTP), tevens vooral
in UNIX-omgevingen gebruikt, lost alle problemen met RARP op. Naast het IP-adres kunnen
andere parameters worden doorgespeeld, zoals de default router, domeinnaam,
netwerk-masker, name-servers en de bootfile. Een client kan via een proxy-mechanisme een
BOOTP-server in een ander netwerk bereiken en omdat BOOTP gebouwd is op UDP kan een
BOOTP-server als applicatieproces geïmplementeerd worden. Tekortkomingen van BOOTP zijn
dat er slechts ruimte is voor 64 bytes aan configuratieparameters en doordat alleen bij
het booten informatie wordt uitgewisseld en niet als de client stopt, biedt BOOTP geen
faciliteiten voor het dynamisch uitdelen van IP-adressen.
Het Dynamic Host Configuration Protocol (DHCP) lost deze problemen met BOOTP weer
op. Een DHCP-pakket heeft 312 bytes aan ruimte voor parameters en DHCP biedt naast
statische koppeling tussen fysieke en IP-adressen uitgebreide voorzieningen voor het dynamisch
uitdelen van IP-adressen. Een DHCP-server kan beschikken over een groep van
beschikbare IP-adressen en deze voor een bepaalde tijdsperiode (lease) uitdelen, waarbij
het mogelijk is dat de lease verlengd wordt. Een nadeel van dynamische IP-adressen is dat
er geen vaste link is tussen computers en IP-nummers, wat lastig is bij identificatie op
bijvoorbeeld Web-servers, het bereiken van anderen met bijvoorbeeld WebPhone en het
bijhouden van de DNS-boekhouding (eventueel mogelijk met DNS dynamic updates). DHCP wordt
vooral veel gebruikt in Windows-omgevingen.
Terug
| Hoe werkt IP-subnetting? |
Ieder netwerk moet zijn eigen netwerknummer hebben. Bij de genoemde
verdeling in klasse-A, B en C netwerken zouden bij de huidige groei van het Internet wel
erg veel adressen onbenut blijven en zou de routeringsboekhouding van routers snel overvol
raken. Met subnetting kunnen meerdere netwerken gebruik maken van één IP-netwerkadres.
Dat wordt gerealiseerd door het machine-gedeelte van het adres op te splitsen in
een subnetnummer en het feitelijke machinenummer, waarbij de plaats van deze
opdeling zelf gekozen kan worden en aangegeven kan worden met een netwerk-masker.
Zo kan voor een klasse-C netwerk (machinenummer 8 bits) bijvoorbeeld gekozen worden voor
een subnetnummer van 3 bits en een machinenummer van 5 bits, waardoor 8 (2 tot de macht 3)
subnetten kunnen worden gedefinieerd die elk 30 (32 min alles 0 en alles 1) machines
kunnen bevatten. De subnetnummers zijn dan 000 t/m 111 gevolgd door 5 nullen, dus 0, 32,
64, 96, 128 enzovoort, de machinenummers in ieder subnet zijn de op deze subnetnummers
volgende nummers, en het laatste nummer binnen ieder subnet (alle bits op 1) is het
broadcast-adres. Zo krijgen we bijvoorbeeld voor netwerknummer 194.1.1:
Subnetnummer |
Adressen |
Broadcast-adres |
| 0 (000) | 194.1.1.1 - 194.1.1.30 |
194.1.1.31 |
| 32 (001) | 194.1.1.33 - 194.1.1.62 |
194.1.1.63 |
| 64 (010) | 194.1.1.65 - 194.1.1.94 |
194.1.1.95 |
| 96 (011) | 194.1.1.97 - 194.1.1.126 |
194.1.1.127 |
| enzovoort |
Toch vormt de hier beschreven vorm van subnetting geen optimale oplossing voor het
efficiënt verdelen van adressen, omdat niet ieder subnet even groot hoeft te zijn of
eventueel noodzakelijk is een subnet verder te subnetten. CIDR,de klasseloze IP-adressering waarbij
het gebruik van variabele-lengte subnetten mogelijk is, vormt hiervoor een oplossing.
Terug
| Wat is een netwerk-masker? |
Door het instellen van het netwerk-masker wordt aangeven welk deel van het IP-adres
voor het netwerknummer en het subnetnummer wordt gebruikt. Netwerk-maskers worden ook in
dotted decimal vorm genoteerd. Bijvoorbeeld een klasse-C netwerk waarin geen subnetting
wordt gedaan heeft als netwerk-masker 255.255.255.0. Een klasse-B netwerk met een
subnetnummer van 6 bits en een machinenummer van 10 bits heeft als netwerk-masker
255.255.252.0 (laatste 10 bits op 0, rest op 1).
Terug
| Waarom is CIDR ingevoerd? |
Bij de klassieke verdeling van IP-adressen in klasse-A,-B
en -C adressen ontstonden problemen met de adresruimte. Deze betroffen vooral de
klasse-B adressen (maar 16.000), waardoor bij voorkeur groepen van klasse-C adressen
uitgedeeld werden. Hierdoor nam weer de omvang van de routeringstabellen van de core routers toe,
omdat nu in plaats van één nieuwe route voor een uitgedeeld klasse-B adres een groepje
van routes voor de klasse-C adressen toegevoegd moest worden. Om IP-adressen zo economisch
mogelijk uit te delen, dat wil zeggen aansluitend bij de adresbehoefte van een
organisatie, en om tevens de groei van routeringstabellen tegen te gaan werd Classless
Inter Domain Routing (CIDR) ingevoerd.
Terug
| Hoe vindt de adres-allocatie met CIDR plaats? |
De adres-allocatie met CIDR is hiërarchisch: IANA deelt aaneensluitende
en opeenvolgende blokken van IP-adressen uit aan de Regional Internet Registries RIPE,
InterNIC en APNIC, die op hun beurt aaneensluitende en opeenvolgende blokken uitdelen aan
providers, die ze weer aan hun klanten uitdelen. Het doel hiervan is dat het samenvatten
van routes naar verschillende netwerken met dezelfde netwerk-prefix mogelijk wordt. Een
belangrijke consequentie is dat adressen het bezit zijn van de provider, en dus als een
organisatie van provider verandert deze zijn oude IP-adressen niet kan blijven gebruiken.
Deze provider-gebaseerde adressering is absoluut noodzakelijk om de beoogde effecten van
CIDR te kunnen realiseren, en organisaties die nog in het bezit zijn van voor CIDR
niet-systematisch uitgedeelde adressen wordt dan ook dringend verzocht hun netwerk te
hernummeren. Naast de morele plicht hieraan mee te werken kan een netwerk dat oude
adressen blijft gebruiken zelfs onbereikbaar worden als de provider weigert afwijkingen
van de normale routering te ondersteunen.
Terug
| Hoe is met CIDR klasseloze adressering mogelijk? |
In plaats van een klasse-A, -B of -C adressen worden tegenwoordig netwerk-prefixen
uitgedeeld. Een netwerk-prefix bestaat uit de voorste bits in het IP-adres die alle
adressen in het netwerk gemeen heeft. Deze kan elke lengte hebben. Een klasse-A adres
corresponeert met een netwerk-prefix van 8 bits, klasse-B 16 bits en klasse-C 24 bits.
Doordat willekeurige netwerk-prefixen uitgedeeld kunnen worden is klasseloze
IP-adressering mogelijk.
Terug
| Hoe werkt het samenvatten van routes naar netwerken? |
Naast het afstemmen van de adresruimte is een nog groter voordeel van het werken met
netwerk-prefixen dat routes naar meerdere netwerken in routeringstabellen samengevat kunnen worden
in één route. Bijvoorbeeld alles tussen 194.0.0.0 en 195.255.255.255 (de adressen die
aan RIPE uitgedeeld zijn) kan samengevat worden in de route: 194.0.0.0/7, waarbij /7 de
lengte van het prefix aangeeft. Stel dat er sprake is van een uitzondering, bijvoorbeeld
dat de adressen van 195.1.1.0 tot 195.1.3.255 voor CIDR aan een Amerikaans bedrijf
uitgedeeld zijn, dan moet aan de routeringstabel een aparte route worden toegevoegd:
195.1.0.0/22. Moet er een bepaald IP-pakket gerouteerd worden, dan wordt altijd de langste
prefix-match gebruikt. Steeds meer providers weigeren echter dergelijke uitzonderingen
in hun routeringstabellen op te nemen.
Terug
| Waarom IP versie 6? |
CIDR is slechts een tijdelijke oplossing
voor de problemen met de IP-adresruimte, waar we nog een jaar of vijf tot tien mee verder
kunnen. Een structurele oplossing is de sterk verbeterde versie van het IP-protocol, IP
versie 6 ofwel IP next generation. Naast de uitbreiding van de adresruimte geeft IP
versie 6 betere mogelijkheden tot beveiliging en een performance verbetering vergeleken
met de huidige IP versie.
Terug
| Hoe zijn adressen opgebouwd bij IP versie 6? |
In IP versie 6 zijn adressen 128 bits en zijn er verschillende soorten adressen. Link-local
adressen zijn alleen geschikt voor gebruik binnen het eigen fysieke netwerk. Het komt
tot stand door simpelweg het MAC-adres te kopiëren, waardoor autoconfiguratie ondersteund
wordt: iedere machine kan zijn eigen link-local construeren. (Bij communicatie met andere
netwerken is alsnog hulp nodig bij de verdere configuratie.) Subnet-local adressen
bevatten naast het link-local gedeelte een aantal bits voor een netwerknummer, waardoor ze
gerouteerd kunnen worden binnen het internetwerk van een organisatie. Bij provider-based
adressen wordt aan deze interne adressen nog een aantal velden toegevoegd: Subscriber
wat staat voor het nummer van de klant, Provider voor het nummer van de provider en
Registry voor het nummer van de Internet Registry.
Terug
| Wat zijn, naast meer adresruimte, de overige voordelen van IP versie 6? |
Bij het huidige IP-protocol moeten zaken als encryptie of authenticatie indien gewenst
op applicatieniveau worden ingebouwd. IP versie 6 bevat de mogelijkheid om op IP-niveau te
kiezen voor encryptie of authenticatie, waarbij de gebruikte algoritmen onderhandelbaar
zijn.
De IP-header in versie 6 is sterk vereenvoudigd en verkleind, wat een belangrijke
performance-verbetering oplevert. Ingewikkelde opties als fragmentatie, encryptie en
authenticatie worden gerealiseerd door extension headers: extra headers achter de
"echte" IP-header die in principe niet door tussenliggende routers
geïnspecteerd hoeven te worden. Een ander performance-aspect is dat er in IP versie 6
betere ondersteuning is voor prioriteiten van pakketten en daarmee voor real-time
toepassingen.
Terug
| Hoe kunnen IP versie 4 en 6 naast elkaar gebruikt worden? |
IP versie 4 en 6 zullen nog lange tijd naast elkaar gebruikt moeten worden, waarbij de
connectiviteit tussen netwerken die IP versie 4 en netwerken die versie 6 gebruiken
gerealiseerd kan worden via dual-stack routers: eilandjes van versie 6 netwerken
worden verbonden via een IP versie 4 door het inpakken van van versie 6 pakketten in
versie 4 pakketten, wat tunneling wordt genoemd.
Terug
| Routering op het Internet |
| Wat is routering en hoe vindt dit plaats op het Internet? |
Een router dient een pakket bij de bestemming af te leveren indien deze zich op een
direct verbonden netwerk bevindt, en anders dient het pakket doorgestuurd te worden naar
de router van een ander netwerk dat dichter bij de bestemming ligt. Het nemen van dit
soort beslissingen wordt routering genoemd, wat één van de belangrijkste taken is van
het IP-protocol.
Terug
| Wat is een routeringstabel? |
Routeringsbeslissingen worden genomen op basis van een routeringstabel. Hierin
staan geen complete routes maar voor elke bestemming alleen de volgende stap op weg naar
de bestemming. In een routeringstabel kunnen vier soorten routes voorkomen:
- directe routes: voor de netwerken waarmee een systeem rechtstreeks verbonden is.
- host-routes: geven voor een bepaalde host aan wat de volgende stap op weg naar
die host is.
- netwerk-routes: de volgende stap op weg naar een bepaald netwerk.
- een default route: als er geen directe, host- of netwerk-route voor de bestemming
is, wordt de default route gebruikt. Dit doorgaans slimmere systeem, de default router
of (default) gateway, zal wel raad weten met het pakket. Dankzij de default route
kunnen de meeste routeringstabellen heel klein blijven.
Terug
| Hoe wordt de informatie in routeringstabellen bijgehouden? |
Elk systeem dat TCP/IP gebruikt heeft een
routeringstabel, routers en hosts (pakket naar lokale netwerk of naar router). Deze tabel
kan op vier manieren gevuld en aangepast worden. Bij de configuratie voor een
netwerk-interface wordt automatisch een directe route aangemaakt voor het gekoppelde
netwerk. Het met de hand toevoegen van routes wordt statische routering genoemd.
Aangezien dit nogal bewerkelijk is, is voor grotere netwerken dynamische routering
aan te bevelen, waarbij routers elkaar informatie over hun routeringstabellen toespelen en
handmatige acties van beheerders overbodig zijn. Protocollen voor dynamische routering
zijn RIP en OSPF.
Tenslotte kan een routeringstabel aangepast worden door een ICMP routing redirect boodschap: als een router een
pakket ontvangt dat eigenlijk naar een andere router gestuurd had moeten worden, stuurt de
router de verzender een ICMP routing redirect met de aanbeveling pakketten voor deze
bestemming voortaan naar de andere router te sturen, waardoor de routeringstabel van de
verzender automatisch wordt aangepast. Hierdoor kunnen hosts beginnen met een heel kleine
routeringstabel.
Terug
| Wat is het RIP-protocol en hoe werkt het? |
Het Routing Information Protocol is een eenvoudig protocol voor het uitwisselen
van routeringstabellen. In een RIP-broadcast maakt elke router periodiek (meestal
elke halve minuut) bekend welke netwerken hij kan bereiken en het aantal stappen ernaartoe
(de metric ofwel hop count). Een router past zijn routeringstabel aan als
hij hoort dat via een andere router een bestemming uit zijn tabel sneller bereikt kan
worden, en gooit routes weg die een metric van 16 of meer hebben of die een tijd lang
(meestal 3 minuten) niet meer bevestigd zijn.
RIP is een vector-distance protocol: de informatie die wordt doorgespeeld is een
vector (tabel) met afstanden naar bestemmingen. Vector-distance protocollen zijn eenvoudig
te implementeren, maar hebben als nadeel dat ze de neiging hebben in een lus terecht te
komen. Als bijvoorbeeld bij drie opeenvolgend gekoppelde routers A-B-C de verbinding naar
C uitvalt, loopt de metric van de routes naar C in de routeringstabellen van A en B
alternerend op (count to infinity). Dit is opgelost door het gebruik van split horizon: de
regel dat in de RIP-broadcasts op een bepaald netwerk geen routes worden opgenomen die via
dat betreffende netwerk lopen, dus dat A in zijn RIP-broadcast op het netwerk van B geen
route opneemt naar C (omdat die route via het netwerk van B loopt). Echter als de
netwerktopologie complexer is kunnen count-to-infinity problemen in andere gedaanten weer
opduiken.
Andere nadelen van RIP: bij verandering duurt het lang voordat weer een consistente
routeringssituatie is bereikt, de hop count is niet altijd een goede maat (twee snelle
LAN-verbindingen kunnen een betere keuze zijn dan één langzame punt-naar-punt
verbinding) en RIP is erg gevoelig voor fouten. RIP versie 2 heeft inmiddels wel
ondersteuning voor subnetting en CIDR, door authenticatie een (matige) beveiliging tegen
aanvallers en de mogelijkheid gebruik te maken van multicasting in plaats van
broadcasting. De meeste problemen blijven echter bestaan, waardoor RIP alleen geschikt is
voor eenvoudige en relatief statische netwerken.
Terug
| Wat is het OSPF-protocol en hoe werkt het? |
Een beter protocol voor dynamische routering dan RIP is het Open Shortest Path First
(OSPF) protocol. Dit is niet gebouwd op een transportprotocol maar rechtstreeks op het
IP-protocol, en is geen vector-distance protocol maar een link-state protocol. Dit
laatste houdt in dat elke router de status van al zijn links bijhoudt en deze informatie
doorspeelt aan andere routers die de informatie weer verder zullen sturen. Routers bouwen
op deze manier een complete kaart op van de netwerktopologie en worden routes naar een
bepaalde bestemming lokaal uitgerekend met het zogenaamde Shortest Path First algoritme.
Alleen bij veranderingen in de topologie worden direct updates gestuurd, waardoor sprake
is van een relatief korte overgangsfase. Doordat de volledige netwerktopologie bekend is,
is het OSPF-protocol minder foutgevoelig dan RIP en kan er gebruik gemaakt worden van
meedere alternatieve routes waardoor de belasting eventueel gedeeld kan worden. Verder
heeft OSPF een betere beveiliging dan RIP. Wel is de implementatie van OSPF relatief
gecompliceerd en kan om de lokale rekentijd te beperken het aantal routers in het netwerk
niet hoger worden dan een paar honderd.
Terug
| Hoe vindt externe routering plaats op het Internet? |
RIP en OSPF zijn bedoeld voor interne routering: routering binnen een bedrijfs-
of organisatie-(inter)netwerk. Een autonoom systeem (AS) is een verzameling van
netwerken met een gemeenschappelijke routeringspolitiek (routing policy), in de
praktijk vaak het complete internetwerk van een provider. Binnen een AS kunnen één of
meer interne routeringsprotocollen als RIP of OSPF gebruikt worden. Tussen autonome systemen wordt
routeringsinformatie doorgespeeld via een extern
routeringsprotocol. Hierbij wordt gebruik gemaakt van externe routers, die
als default router fungeren voor alle bestemmingen buiten het eigen AS. De gezamelijke
externe routers van alle autonome systemen noemt men de core routers, die volledige
routeringskennis hebben en voor elk netwerk in het Internet moeten weten hoe het bereikt
kan worden.
Terug
| Hoe werkt BGP, het protocol voor externe routering? |
Tot voor kort werd voor externe routering EGP gebruikt, wat ontworpen was voor een
boomvormig Internet. Inmiddels is de structuur van het Internet veel ingewikkelder en
wordt het Border Gateway Protocol (BGP) gebruikt. Elk autonoom systeem bevat
minstens één externe router die BGP draait en welke rechtstreek is verbonden en
communiceert met een of meer BGP-peers in andere autonome systemen. De informatie
die doorgespeeld wordt heeft betrekking op de IP-netwerken die zich in de autonome
systemen bevinden en wordt uiteindelijk gedistribueerd over alle autonome systemen in het
Internet, waarbij een pad wordt bijgehouden dat doorlopen moet worden naar de bestemming.
Met BGP is policy based routing mogelijk: transit-verkeer kan doorgegeven worden op
basis van configureerbare instellingen die samenhangen met de routing policy van
het Autonoom Systeem (AS). Deze policy
bepaalt onder welke voorwaarden welk verkeer doorgeven wordt, waarbij politieke,
economische of security-gerelateerde overwegingen een rol spelen. De BGP-instellingen van
autonome systemen zijn op AS-nummer op te vragen uit de database van RIPE (http://www.ripe.net/).
Terug