login  Naam:   Wachtwoord: 
Registreer je!
 Tutorials

Tutorials > Webserver


Gegevens:
Geschreven door:
nemesiskoen
Moeilijkheidsgraad:
Moeilijk
Hits:
33003
Punten:
Aantal punten:
 (5)
Aantal stemmen:
5
Stem:
Niet ingelogd
Nota's:
 Lees de nota's (15)
 


Tutorial:

IP adressen

1. Inleiding
2. De Klassen
3. Speciale adressen
4. Typen
5. Publiek en Privaat
6. Praktijktoepassing
 top
1. Inleiding
Wat is een IP adres: een adres dat aan je computer wordt toegewezen en waarmee je op het www kunt surfen (voorbeeld: 1.0.0.203).
Dit adres bevat een hele hoop informatie.
Een IP adres kan ook afzonderlijk worden gebruikt (niet in contact met het www) in een netwerk.
Elk netwerksysteem krijgt dan een bepaald aantal IP adressen toegewezen.
Uit deze IP adressen kunnen we een hele hoop informatie halen: 'hoeveel PC's kunnen er in het netwerk', 'is het een publiek of een privaat IP adres'...

In dit artikel ga ik dus bespreken HOE we deze gegevens uit het IP adres halen en wat deze gegevens beteken.
Ik zal afsluiten met een praktijktoepassing
 top
2. De Klassen

Er zijn twee manieren om gegevens uit een IP adres te halen.
De eerste hiervan is via klassen (de andere ga ik straks bespreken).
Er zijn 5 verschillende klassen: A, B, C, D (en E).
E staat tussen haakjes omdat deze gereserveerd is voor toekomstig gebruik en hier wordt dus nog geen rekening mee gehouden.

Hoe kunnen we zien of een IP adres tot een bepaalde klasse behoord?
Zoals je weet bestaat een IP adres uit 4 keer 8 bits.
Elke bit kan een waarde 1 of 0 aannemen.
Zo kunnen we maximaal 4 keer 255 (11111111) vormen.

De klasse kan je afleiden door de binaire waarde te nemen van het betreffende IP adres.
IP1: 1.0.0.255 = 00000001.00000000.00000000.11111111
IP2: 205.103.2.3 = 11001101.01100111.00000010.00000011

Bij klasse A is de eerste byte (8 bits) gelijk aan: 0******* (waarbij * een willekeurig teken is 1 of 0).
Bij klasse B is de eerste byte (8 bits) gelijk aan: 10****** (waarbij * een willekeurig teken is 1 of 0).
Bij klasse C is de eerste byte (8 bits) gelijk aan: 110***** (waarbij * een willekeurig teken is 1 of 0).
Bij klasse D is de eerste byte (8 bits) gelijk aan: 1110**** (waarbij * een willekeurig teken is 1 of 0).
(Bij klasse E is de eerste byte (8 bits) gelijk aan: 1111**** (waarbij * een willekeurig teken is 1 of 0)).

Dus IP1 is duidelijk een klasse A en IP2 is duidelijk een klasse C.

Je kan het ook aflijden uit de decimale waardes:
Klasse A: eerste byte = 0-126 (127 valt weg omdat dit het lokaal IP adres is).
Klasse B: eerste byte = 128-192.
Klasse C: eerste byte = 192-223.
Klasse D: eerste byte = 223-255.

Wat heb ik hier nu aan vraag je je waarschijnlijk af.
Uit deze data kan je het subnetmask bepalen.
Dit is belangrijk bij broadcast: versturen binnen je eigen netwerk.
Van klasse A is dit: 11111111.00000000.00000000.00000000.
Van klasse B is dit: 11111111.11111111.00000000.00000000.
Van klasse C is dit: 11111111.11111111.11111111.00000000.
(Klasse D en E worden hier niet voor gebruikt).
De 1 bits stellen het netwerk voor.

 top
3. Speciale adressen

Er zijn verschillende types IP adressen.
Bv. /28, /16, etc...
Die getallen (28 en 16) geven informatie weer over WELKE info we uit het IP adres moeten halen.
Deze info wordt gebruikt om 'speciale adressen in een netwerk' te achterhalen.

Deze speciale adressen zijn het netwerk adres (alle host bits zijn 0) en het broadcast adres (alle host bits zijn 1).

Een voorbeeldje lijkt me hier wel op zijn plaats.
Adres: 192.14.45.7
Is een klasse C netwerk, de standaard subnetmask is 255.255.255.0
Het bijbehorende netwerk adres is 192.14.45.0 (waarom volgt direct)
Het bijbehorende broadcast adres is 192.14.45.255 (waarom volgt direct)
In dit netwerk is plaats voor 254 computer (waarom volgt direct)

We bekijken het subnetmask.
3 van de 4 bytes bestaan uit 1tjes en de laatste byte uit nulletjes.
Voor het netwerkadres te bepalen nemen we alle waarvan de subnetmask eentjes zijn: (192 ==> 255, 14 ==> 255 en 45 ==> 255) en zetten deze naast elkaar.
Het deel dat nu nog over blijft zijn de host bits. Bij het netwerk adres zijn alle host bits 0.
Dus: 192.14.45.0 (0 = 00000000) is het netwerkadres.
Voor het broadcastadres te bepalen nemen we alle waarvan de subnetmask eentjes zijn: (192 ==> 255, 14 ==> 255 en 45 ==> 255) en zetten deze naast elkaar.
Het deel dat nu nog over blijft zijn de host bits. Bij het broadcast adres zijn alle host bits 1.
Dus: 192.14.45.255 (255 = 11111111) is het broadcastadres.
Het netwerkadres is het eerste adres van het netwerk, het broadcastadres het laatste.
De adressen hier tussen liggen zijn alle beschikbare IP adressen.
Normaal is er ruimte voor minimum 256 (van 0 tot 255) adressen (bij klasse C dan, bij B is dit 256 keer zoveel, en bij A nog eens 256 keer meer) maar er zijn er al 2 in gebruik (broadcast en netwerk) dus zijn er 254.
Zoals je ziet is dit extreem veel, dus daarom zijn er de verschillende types (waar ik het daarnet over had (/28,/16,...)) om dit op te verdelen.


Twee kleine oefeningen om even alles samen te vatten.
Gegeven: 192.16.14.192.
Gevraagd: Klasse, subnetmask, netwerkadres, broadcastadres, aantal computers.

Oplossing:
Klasse: C
Subnetmask: 11111111.11111111.11111111.00000000: 255.255.255.0
Netwerkadres: 192.16.14.0
Broadcastadres: 192.16.14.255
Aantal computers: 254


Gegeven: 12.13.14.15.
Gevraagd: Klasse, subnetmask, netwerkadres, broadcastadres, aantal computers.

Oplossing:
Klasse: A
Subnetmask: 11111111.00000000.00000000.00000000: 255.0.0.0
Netwerkadres: 12.0.0.0
Broadcastadres: 12.255.255.255
Aantal computers: (256 * 256 * 256) -2 = 16.777.214



 top
4. Typen

Zoals ik daarnet zei zijn er verschillende typen IP adressen.
Door deze typen kan je bv. een klasse A adres hebben met een groter subnetmask (normaal is het 255.0.0.0, en door deze typen kan je hebben: 255.255.0.0).
Een voorbeeld: 10.34.5.17/16.
Je ziet de /16 staan, dit geeft het type aan.
Zoals je weet is 16 gelijk aan 2 keer 8.
En hoeveel bits zitten er in een byte: 8.
Dus is het type 2 bytes (16 bits).
Het type geeft aan hoeveel bits het subnetmask moet beslaan, in ons geval 16 dus het subnetmask is: 11111111.11111111.00000000.00000000 = 255.255.0.0.

Je kan bv. ook een /20 hebben. Dit beslaat 2.5 byte of 20 bits.
Ons subnetmask is dan: 11111111.11111111.11110000.00000000 = 255.255.240.0.
Het voordeel hiervan ga je nu niet direct zien maar wordt direct duidelijk.
Ik ga eerst 2 voorbeelden geven:
Gegeven: 10.34.5.17/16.
Gevraagd: Subnetmask, netwerkadres, broadcastadres, aantal computers.

Oplossing:
Subnetmask: 11111111.11111111.00000000.00000000: 255.255.0.0
Netwerkadres: 10.34.0.0
Broadcastadres: 10.34.255.255
Aantal computers: (256 * 256) - 2 = 65.534


Gegeven: 12.13.14.14/29.
Gevraagd: Subnetmask, netwerkadres, broadcastadres, aantal computers.

Oplossing:
Subnetmask: 11111111.11111111.11111111.11111000: 255.255.255.248
Netwerkadres: 12.13.14.8
Broadcastadres: 12.13.14.15
Aantal computers: 8 - 2 = 6


Bij dit laatste voorbeeld wordt hoogstwaarschijnlijk het nut wel duidelijk gemaakt (je gooit binnen een netwerk van 5 computer geen 200+ IP adressen weg).
Maar het is waarschijnlijk ook niet duidelijk hoe ik aan het netwerk en broadcast adres kom.
Dit berust namelijk op een andere formule die ik even ga duidelijk maken.


STAP 1
We nemen de binaire waarde van het origele IP adres: 00001100.00001101.00001110.00001110.
STAP 2
We nemen het uit het IP adres alle waardes waarbij het subnetmask 1 heeft (29) (Het laatste deel (de drie bits) zijn de netwerkbits): 00001100.00001101.00001110.00001000 = 12.13.14.8.
De netwerkbits zijn bij het netwerkadres gelijk aan nul en bij het broadcastadres gelijk aan 1.
12.13.14.8 = netwerkadres.
STAP 3
We gaan terug naar stap 2 maar ipv de netwerkbits te vervangen door 000 vervangen we dit door 111 (7).
00001100.00001101.00001110.00001111 = 12.13.14.15.
12.13.14.15 = broadcastadres.

Het is mischien een ingewikkelde berekening maar zoals je ziet verlies je geen onnodige IP adressen.

 top
5. Publiek en Privaat

Zoals je misschien wel weet (of niet) zijn er ook privaat IP adressen.
Deze zijn enkel bedoeld voor te gebruiken binnen het netwerk, deze adressen kunnen niet van buitenaf opgeroepen worden.
Denk maar aan: 127.0.0.1.

Privaat adressen of adressen voor locale netwerken (Een lijstje met de privaat IP adressen):
Klasse A: 10.x.x.x voor subnetmask 255.0.0.0
Klasse B: 172.16.x.x tot 172.31.x.x voor subnetmask 255.255.0.0
Klasse C: 192.168.x.x voor subnetmask 255.255.255.0
Speciaal IP adres: 127.0.0.1 (Localhost)
Publieke adressen: alle andere

 top
6. Praktijktoepassing

Een hosting-bedrijf heeft volgende IP adressen gekregen: 192.207.x.x/16
Een klant wil een netwerk opzetten met 10 publieke ip adressen.
We gaan het hosting-bedrijf spelen en een voorstel van de toegekende IP adressen en bijbehorende subnetmasks maken.

Gegeven: 10 computers, 192.207.x.x/16.
Gevraagd: Subnetmask, netwerkadres, broadcastadres, aantal computers.

Oplossing:
Wat we moeten weten is dat als we /16 tot onze beschikking hebben dat we alles daarboven (/17, /18,...) ook mogen gebruiken.
We gaan dus geen 60.000 IP adressen weggooien voor 1 klant.
De klant heeft tien computers nodig, we zoekenhetgeen daar het dichtst bij licht, namelijk /28.
Dit heeft 16 adressen - 2 = 14.
(/29 heeft er maar 6).
Dus we kunnen ons subnetmask bepalen.
Subnetmask: 11111111.11111111.11111111.11110000: 255.255.255.240
Het derde deel van het IP adres en het netwerkadres mogen we zelf kiezen (waar we beginnen).
Meestal is dit waar we bij de vorige klant zijn geëindigt.
Ik neem als derde deel '5' en als netwerkadres 128 (10000000).
Ons eerste IP adres is dan ook 10000000 (het netwerkadres).
Netwerkadres: 195.207.5.128
Het broadcast adres is gelijk aan het netwerkadres waarvan de laatste vier (32 (maximum) - 28 (we werken met /28)) bits (de netwerkbits) vullen met 1.
10001111 = 143
Broadcastadres: 195.207.5.143
Aantal computers: 16 - 2 = 14


 top IP adres berekenen


« Vorige tutorial : Pure-FTPD 1.0.20 (linux) Volgende tutorial : [LINUX] Apache, Mysql, Pgsql, ftp, php (17/12/2k6) »

© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.013s