Voordat internet zelfs maar een ding was, bestonden computernetwerken. Deze netwerken gebruikten IP-adressen die identiek zijn aan de huidige. Deze netwerken waren met elkaar verbonden via het ARPANET, dat uiteindelijk uitgroeide tot wat nu het internet is. In deze begindagen van computernetwerken waren de schaal en populariteit van internet in wezen ondenkbaar. Veel van de moderne technologieën die we als vanzelfsprekend beschouwen, bestonden simpelweg niet. Vanwege dit en de aannames van die tijd werden enorme hoeveelheden IP-adressen uitgedeeld.
Naarmate het ARPANET bleef groeien, werd vastgesteld dat het hedendaagse systeem voor het uitdelen van adressen in de nabije toekomst problemen zou krijgen met uitputting van de adresruimte. Classful networking was de eerste poging om de kwestie van het aanpakken van de uitputting van de ruimte te vertragen. Om te begrijpen wat klassiek netwerken is en hoe het werkt, is het belangrijk om de onderliggende systemen te begrijpen, voornamelijk IPv4-adressen.
IP-adresstructuur
Een IP-adres is het unieke Internet Protocol-adres dat wordt gebruikt om netwerkverkeer over internet te leiden. IPv4 is het belangrijkste adresseringsschema. IPv4-adressen worden over het algemeen weergegeven in de gestippelde quad-notatie om leesbaar te zijn voor mensen. Een IP-adres kan er bijvoorbeeld zo uitzien: "192.168.0.1". Elk IP-adres heeft vier secties, gescheiden door punten, vandaar de term - gestippelde quad. Het wordt echter ook wel punt-decimale notatie genoemd.
In werkelijkheid gebruiken computers dit formaat echter niet. Zoals alles waar computers mee te maken hebben, worden IP-adressen binair gebruikt. In het geval van IPv4-adressen wordt elk van de vier secties, een octet genoemd, weergegeven door 8 binaire cijfers. Het bovenstaande adres is echt "11000000.10101000.00000000.00000001" in binair getal.
Een van de belangrijkste dingen hiervan is dat, omdat elk octet slechts wordt vertegenwoordigd door 8 binaire bits, de door mensen leesbare getallen tussen 0 en 255 moeten liggen. Dit betekent dat er maximaal 255*255*255*255 of 4.294.967.296 mogelijke IP-adressen zijn. Hoewel vier miljard mogelijke IP-adressen waarschijnlijk veel lijken, is dat minder dan één IP-adres per persoon die momenteel in leven is. De meeste mensen in de westerse wereld hebben meer dan één apparaat met internetverbinding.
Klasse A-netwerken en vroege veronderstellingen
In de begindagen van computernetwerken werd aangenomen dat er niet veel netwerken zouden zijn. Er waren geen internetverbindingen thuis of zelfs thuiscomputers. Grote bedrijven, onderwijsinstellingen en overheidsdiensten waren de enige plaatsen met netwerken. Van al deze netwerken werd aangenomen dat ze aanzienlijk zouden groeien. Daarentegen zou het totale aantal netwerken relatief klein blijven. Deze veronderstelling was destijds niet eens misplaatst met de informatie, aangezien de IBM PC, de eerste thuiscomputer, nog niet was uitgebracht.
Bedrijven als Apple, Ford en AT&T kregen grote hoeveelheden adressen. De Amerikaanse DOD kreeg meer dan een dozijn grote hoeveelheden adressen. Apple kreeg 17.0.0.0, Ford kreeg 19.0.0.0, AT&T kreeg 12.0.0.0, terwijl de DOD 6.0.0.0, 7.0.0.0, 11.0.0.0 en meer kreeg. Elk van deze netwerken kende elk IP-adres dat begint met het eerste nummer (17, 7, 19, enz.) toe aan de respectievelijke bedrijven. Dit betekende dat elk netwerk 16.777.216 individuele IP-adressen kon ondersteunen. Het betekende ook dat er in totaal 255 mogelijke netwerken waren.
Dit was het grote probleem, toen computernetwerken steeds populairder werden, werd het duidelijk dat 255 netwerken niet genoeg zouden zijn om aan de vraag te voldoen. Gelukkig werd dit probleem vroeg genoeg opgemerkt om een oplossing te ontwikkelen. De eerste oplossing heette classful networking en werd in 1981 geïntroduceerd. Dit is overigens hetzelfde jaar dat de IBM PC werd uitgebracht. De pc- en thuisinternetverbindingen zouden de adresruimte al snel meer onder druk zetten.
De klassen
Het idee van stijlvol netwerken is om deze enorme netwerken op te splitsen in vele kleinere. De oorspronkelijke enorme netwerken werden heringedeeld als klasse A-netwerken. De nieuwe klassen B en C zijn ook gemaakt, terwijl een ander gedeelte is gereserveerd voor toekomstig gebruik. De eenvoudigste manier om de klassen te scheiden is dat klasse A de eerste helft van alle adressen in beslag neemt. Klasse B neemt dan de helft van de resterende adressen en klasse C krijgt de helft van de adressen na Klasse B. De rest van de adresruimte is gereserveerd.
In de praktijk betekent dit dat elk IP-adres waarvan het eerste octet een getal onder de 128 had, een klasse A-netwerk is. Een klasse B-netwerk is elk adres waarvan het eerste octet tussen 128 en 191 ligt. Elk netwerk waarvan het eerste octet tussen 192 en 223 ligt, is een klasse C-netwerk. En alles dat begint met 224 of hoger is gereserveerd. In binaire termen begint elk IP-adres van klasse A met een 0. Elk Klasse B-adres begint met 10, elk Klasse C-adres begint met 110 en de gereserveerde ruimte begint met 111. Hierdoor is het eenvoudig mogelijk om de grenzen van elk netwerk te bepalen.
Dit betekent dat de totale ruimte voor klasse A-netwerken wordt gehalveerd van de oorspronkelijke 256 naar 128. Belangrijk is dat het ook betekent dat er nu 16.384 Klasse B-netwerken zijn, die elk tot 65.536 IP-adressen ondersteunen, en 2.097.152 Klasse C-netwerken die elk 256 IP-adressen ondersteunen. De gereserveerde ruimte aan het einde van de adresruimte werd later opgesplitst in klasse D en klasse E.
Gereserveerde ruimte
Een aantal adressen aan het begin en einde van elke les waren gereserveerd en ook enkele secties in het midden waren gereserveerd. Sommige, zoals 0.0.0.0 tot 0.255.255.255, werden nergens specifiek voor gebruikt, maar werden gereserveerd voor toekomstig gebruik. Andere gereserveerde rubrieken kregen een specifieke bestemming. Elk IP-adres dat begint met 127 wordt bijvoorbeeld behandeld als een loopback-adres. Het netwerkverkeer wordt nooit verzonden en kaatst gewoon terug naar de afzender zonder te worden verzonden.
Adressen die met 192 beginnen, zijn gereserveerd, waarbij 192.168 adressen zijn gereserveerd voor gebruik in interne netwerken, zodat elk intern netwerk het kan gebruiken. Dit wordt bijvoorbeeld in bijna alle thuisnetwerken gebruikt, omdat het 256 mogelijke adressen biedt. Voor grotere gebruiksgevallen is elk adres dat begint met 172.16 tot 172.31 ook gereserveerd voor intern gebruik, net als elk netwerk dat begint met 10.
Deze privéadresruimten zijn alleen voor intern gebruik gereserveerd. Alle netwerkapparatuur is ontworpen om te voorkomen dat verkeer dat bestemd is voor een van deze gereserveerde adressen, langs een router naar een ander netwerk gaat. De adressen zijn netwerkspecifiek, wat betekent dat iedereen ze op zijn eigen interne netwerken kan gebruiken. Om dit te laten werken, moet de router een openbaar IP-adres hebben, houd bij welk intern apparaat is welke data opvragen bij een ander netwerk, en ervoor zorgen dat het antwoord weer naar rechts komt apparaat. Deze techniek wordt NAT of Network Address Translation genoemd.
Succes en mislukking van Classful Networking
Klassevol netwerken zorgt voor veel efficiënter gebruik van de ruimte dan alleen het toewijzen van één 256e van de eventuele adresruimte aan elk bedrijf dat erom vraagt. De overgrote meerderheid van bedrijven, overheidsdiensten, enz. heeft geen 16.777.216 IP-adressen nodig. Ze kunnen een veel kleiner aantal IP-adressen toegewezen krijgen en doen het prima.
Hoewel het stijlvolle netwerksysteem er op papier goed uitziet en zeker netjes is, komt het helaas op vergelijkbare problemen op een andere schaal tegen. De meeste bedrijven zijn ook kleiner dan een klasse B-netwerk en hebben geen 65536 mogelijke IP-adressen nodig. Maar zelfs in het midden van de jaren '80 en het begin van de jaren '90 waren veel bedrijven te groot voor een klasse C-netwerk met slechts 256 IP-adressen. Dit betekende dat bedrijven vaak klasse B-netwerken nodig hadden, zelfs als ze maar 300 IP-adressen nodig hadden. Nogmaals, dit betekende dat de adresruimte inefficiënt werd gebruikt met enorme hoeveelheden adressen die werden uitgegeven aan bedrijven die nooit alles zouden gebruiken.
Opvolgers van Classful Networking
Dit probleem werd snel geïdentificeerd, en dus werd het in 1993, slechts 12 jaar na de introductie van hoogwaardig netwerken, vervangen. De vervanging ervan heette Classless Inter-Domain Routing of CIDR (uitgesproken cider). CIDR maakte veel meer configureerbaarheid mogelijk in het aantal uitgegeven adressen. Waardoor netwerken kunnen worden gedefinieerd door elk binair bit in plaats van elk octet. Deze oplossing wordt nog steeds gebruikt, hoewel de enorme groei van apparaten met internetverbinding de IPv4-adresruimte nu volledig heeft uitgeput, zelfs met deze efficiëntere adresseringstechniek.
De oplossing daarvoor is de overstap naar IPv6 die een veel grotere adresruimte biedt, 340.282.366.920.938.463.463.374.607.431.768.211.456 mogelijke adressen om precies te zijn. Dat is ongeveer 340 biljoen biljoen biljoen, wat veel meer is dan de 4,3 miljard oneven IPv4-adressen. Helaas is IPv6-ondersteuning, ondanks de urgentie die wordt veroorzaakt door de dreigende en nu aanwezige IPv4-adresruimte-uitputting, nog steeds vaag. Dit komt echter vooral door legacy hardware.
Conclusie
Classful networking was een vroege poging om de efficiëntie van de toewijzing van IP-adressen te verbeteren. Het was succesvol in het vertragen van de uitputting van de IPv4-adresruimte, gedurende de 12 jaar dat het op zijn plaats was. Het werd vervangen door CIDR, wat een meer succesvolle langetermijnoplossing was.
Sommige erfenissen van stijlvol netwerken leven voort met veel bedrijven die nog steeds Klasse B hebben of en zelfs een paar hebben Klasse A-netwerken toegewezen gekregen waar ze onmogelijk efficiënt gebruik van kunnen maken. Zelfs een poging om dit te doen, houdt een beetje een veiligheidsrisico in, aangezien elke machine die een van die IP-adressen gebruikt, publiekelijk adresseerbaar zou zijn zonder een firewall. In CIDR-notatie is een klasse A-netwerk een /8, een klasse B-netwerk is een /16 en een klasse C-netwerk is een /24.