Basisbeginselen van TCP/IP-adressering en subnetten begrijpen

Dit artikel is bedoeld als een algemene inleiding tot de concepten van IP-netwerken (Internet Protocol) en subnetten. Aan het einde van het artikel vindt u een woordenlijst.

Van toepassing op: Windows 10, alle edities
Origineel KB-nummer: 164015

Samenvatting

Wanneer u het TCP/IP-protocol op een Windows-computer configureert, vereisen de TCP/IP-configuratie-instellingen:

  • Een IP-adres
  • Een subnetmasker
  • Een standaardgateway

Om TCP/IP correct te configureren, is het noodzakelijk om te begrijpen hoe TCP/IP-netwerken worden geadresseerd en onderverdeeld in netwerken en subnetwerken.

Het succes van TCP/IP als het netwerkprotocol van internet is grotendeels te danken aan het vermogen om netwerken van verschillende groottes en systemen van verschillende typen met elkaar te verbinden. Deze netwerken worden willekeurig gedefinieerd in drie hoofdklassen (samen met enkele andere) die vooraf gedefinieerde grootten hebben. Elk van deze kan worden onderverdeeld in kleinere subnetten door systeembeheerders. Een subnetmasker wordt gebruikt om een IP-adres in twee delen op te delen. Het ene deel identificeert de host (computer), het andere deel identificeert het netwerk waartoe het behoort. Als u meer wilt weten over de werking van IP-adressen en subnetmaskers, bekijkt u een IP-adres en ziet u hoe het is georganiseerd.

IP-adressen: netwerken en hosts

Een IP-adres is een 32-bits getal. Het identificeert op unieke wijze een host (computer of ander apparaat, zoals een printer of router) op een TCP/IP-netwerk.

IP-adressen worden normaal gesproken uitgedrukt in decimale notatie, met vier cijfers gescheiden door punten, zoals 192.168.123.132. Om te begrijpen hoe subnetmaskers worden gebruikt om onderscheid te maken tussen hosts, netwerken en subnetwerken, onderzoekt u een IP-adres in binaire notatie.

Het IP-adres 192.168.123.132 is bijvoorbeeld (in binaire notatie) het 32-bits getal 11000000101010000111101110000100. Dit getal is misschien moeilijk te begrijpen, dus verdeel het in vier delen van acht binaire cijfers.

Deze 8-bits secties worden octetten genoemd. Het voorbeeld-IP-adres wordt vervolgens 11000000.10101000.01111011.10000100. Dit getal is alleen iets logischer, dus voor de meeste toepassingen converteert u het binaire adres naar het decimale formaat (192.168.123.132). De decimale getallen gescheiden door punten zijn de octetten die zijn geconverteerd van binaire naar decimale notatie.

Om ervoor te zorgen dat een WAN (TCP/IP Wide Area Network) efficiënt werkt als een verzameling netwerken, weten de routers die gegevenspakketten doorgeven tussen netwerken niet de exacte locatie van een host waarvoor een pakket informatie is bestemd. Routers weten alleen van welk netwerk de host lid is en gebruiken informatie die is opgeslagen in hun routetabel om te bepalen hoe het pakket naar het netwerk van de bestemmingshost moet worden gestuurd. Nadat het pakket is afgeleverd op het netwerk van de bestemming, wordt het pakket afgeleverd bij de juiste host.

Dit proces werkt alleen als een IP-adres uit twee delen bestaat. Het eerste deel van een IP-adres wordt gebruikt als netwerkadres, het laatste deel als hostadres. Als u het voorbeeld 192.168.123.132 opdeelt in deze twee delen, krijgt u 192.168.123. Netwerk .132 Host of 192.168.123.0 - netwerkadres. 0.0.0.132 - hostadres.

Subnetmasker

Het tweede item, dat vereist is om TCP/IP te laten werken, is het subnetmasker. Het subnetmasker wordt door het TCP/IP-protocol gebruikt om te bepalen of een host zich op het lokale subnet of op een extern netwerk bevindt.

In TCP/IP zijn de delen van het IP-adres die worden gebruikt als netwerk- en hostadressen niet vast. Tenzij u meer informatie hebt, kunnen de bovenstaande netwerk- en hostadressen niet worden bepaald. Deze informatie wordt geleverd in een ander 32-bits nummer dat een subnetmasker wordt genoemd. Het subnetmasker is 255.255.255.0 in dit voorbeeld. Het is niet duidelijk wat dit getal betekent, tenzij u weet dat 255 in binaire notatie gelijk is aan 11111111. Het subnetmasker is dus 11111111.11111111.11111111.00000000.

Door het IP-adres en het subnetmasker samen op te stellen, kunnen het netwerk en de hostgedeelten van het adres worden gescheiden:

11000000.10101000.01111011.10000100 - IP-adres (192.168.123.132)
11111111.11111111.11111111.00000000 - Subnetmasker (255.255.255.0)

De eerste 24 bits (het aantal enen in het subnetmasker) worden geïdentificeerd als het netwerkadres. De laatste 8 bits (het aantal resterende nullen in het subnetmasker) worden geïdentificeerd als het hostadres. U krijgt de volgende adressen:

11000000.10101000.01111011.00000000 - Netwerkadres (192.168.123.0)
00000000.00000000.00000000.10000100 - Hostadres (000.000.000.132)

U weet nu, voor dit voorbeeld met een subnetmasker 255.255.255.0, dat de netwerk-id 192.168.123.0 is en het hostadres 0.0.0.132. Wanneer een pakket binnenkomt op het subnet 192.168.123.0 (van het lokale subnet of een extern netwerk) en het een doeladres heeft van 192.168.123.132, ontvangt uw computer het van het netwerk en verwerkt het.

Bijna alle decimale subnetmaskers worden omgezet in binaire getallen die alle enen aan de linkerkant en alle nullen aan de rechterkant zijn. Enkele andere veelvoorkomende subnetmaskers zijn:

Decimale waarde Binary
255.255.255.192 1111111.11111111.1111111.11000000
255.255.255.224 1111111.11111111.1111111.11100000

Internet RFC 1878 (beschikbaar via InterNIC-Public Information Regarding Internet Domain Name Registration Services) beschrijft de geldige subnetten en subnetmaskers die kunnen worden gebruikt op TCP/IP-netwerken.

Netwerkklassen

Internetadressen worden toegewezen door de InterNIC, de organisatie die het internet beheert. Deze IP-adressen zijn onderverdeeld in klassen. De meest voorkomende zijn klassen A, B en C. Klassen D en E bestaan, maar worden niet gebruikt door eindgebruikers. Elk van de adresklassen heeft een ander standaardsubnetmasker. U kunt de klasse van een IP-adres identificeren door de eerste octet ervan te bekijken. Hier volgen de bereiken van internetadressen van klasse A, B en C, elk met een voorbeeldadres:

  • Klasse A-netwerken gebruiken een standaardsubnetmasker van 255.0.0.0 en hebben 0-127 als hun eerste octet. Het adres 10.52.36.11 is een klasse A-adres. Het eerste octet is 10, wat tussen 1 en 126 ligt.

  • Klasse B-netwerken gebruiken een standaardsubnetmasker van 255.255.0.0 en hebben 128-191 als eerste octet. Het adres 172.16.52.63 is een klasse B-adres. Het eerste octet is 172 en dat ligt tussen 128 en 191.

  • Klasse C-netwerken gebruiken een standaardsubnetmasker van 255.255.255.0 en hebben 192-223 als eerste octet. Het adres 192.168.123.132 is een klasse C-adres. Het eerste octet is 192 en dat ligt tussen 192 en 223.

In sommige scenario's voldoen de standaardsubnetmaskerwaarden om een van de volgende redenen niet aan de behoeften van de organisatie:

  • De fysieke topologie van het netwerk
  • Het aantal netwerken (of hosts) past niet binnen de standaardbeperkingen voor subnetmaskers.

In de volgende sectie wordt uitgelegd hoe netwerken kunnen worden verdeeld met behulp van subnetmaskers.

Subnetten

Een klasse A, B of C TCP/IP-netwerk kan verder worden opgedeeld of gesubnetteerd door een systeembeheerder. Het wordt noodzakelijk als u het logische adresschema van internet (de abstracte wereld van IP-adressen en subnetten) afstemt met de fysieke netwerken die door de echte wereld worden gebruikt.

Een systeembeheerder aan wie een blok IP-adressen is toegewezen, beheert mogelijk netwerken die niet zijn georganiseerd op een manier die gemakkelijk past bij deze adressen. U hebt bijvoorbeeld een WAN (Wide Area Network) met 150 hosts op drie netwerken (in verschillende steden) die verbonden zijn door een TCP/IP-router. Elk van deze drie netwerken heeft 50 hosts. U krijgt klasse C-netwerk 192.168.123.0 toegewezen. (Ter illustratie: dit adres komt eigenlijk uit een bereik dat niet is toegewezen op internet.) Dit betekent dat u de adressen 192.168.123.1 tot 192.168.123.254 kunt gebruiken voor uw 150 hosts.

Twee adressen die in uw voorbeeld niet kunnen worden gebruikt, zijn 192.168.123.0 en 192.168.123.255 omdat binaire adressen met een hostgedeelte van allemaal enen en allemaal nullen ongeldig zijn. Het nuladres is ongeldig omdat het wordt gebruikt om een netwerk op te geven zonder een host op te geven. Het adres 255 (in binaire notatie, een hostadres van allemaal enen) wordt gebruikt om een bericht uit te zenden naar elke host op een netwerk. Onthoud dat het eerste en laatste adres in een netwerk of subnet niet aan een individuele host kunnen worden toegewezen.

U zou nu IP-adressen aan 254 hosts moeten kunnen geven. Het werkt prima als alle 150 computers zich op één netwerk bevinden. Uw 150 computers bevinden zich echter op drie afzonderlijke fysieke netwerken. In plaats van meer adresblokken voor elk netwerk aan te vragen, verdeelt u uw netwerk in subnetten waarmee u één blok adressen op meerdere fysieke netwerken kunt gebruiken.

In dit geval verdeelt u uw netwerk in vier subnetten met behulp van een subnetmasker dat het netwerkadres groter maakt en het mogelijke bereik van hostadressen kleiner maakt. Met andere woorden, u 'leent' enkele van de bits die worden gebruikt voor het hostadres en gebruikt ze voor het netwerkgedeelte van het adres. Het subnetmasker 255.255.255.192 biedt u vier netwerken van elk 62 hosts. Het werkt omdat in binaire notatie 255.255.255.192 hetzelfde is als 1111111.11111111.1111111.11000000. De eerste twee cijfers van het laatste octet worden netwerkadressen, dus u krijgt de extra netwerken 00000000 (0), 01000000 (64), 10000000 (128) en 11000000 (192). (Sommige beheerders gebruiken slechts twee subnetten met 255.255.255.255.192 als subnetmasker. Zie RFC 1878 voor meer informatie over dit onderwerp.) In deze vier netwerken kunnen de laatste zes binaire cijfers worden gebruikt voor hostadressen.

Als u een subnetmasker van 255.255.255.192 gebruikt, wordt uw 192.168.123.0-netwerk vervolgens de vier netwerken 192.168.123.0, 192.168.123.64, 192.168.123.128 en 192.168.123.192. Deze vier netwerken zouden als geldige hostadressen hebben:

192.168.123.1-62 192.168.123.65-126 192.168.123.129-190 192.168.123.193-254

Onthoud nogmaals dat binaire hostadressen met allemaal enen of allemaal nullen ongeldig zijn, dus u kunt geen adressen gebruiken met het laatste octet van 0, 63, 64, 127, 128, 191, 192 of 255.

U kunt zien hoe het werkt door te kijken naar twee hostadressen: 192.168.123.71 en 192.168.123.133. Als u het standaard Klasse C-subnetmasker van 255.255.255.0 hebt gebruikt, bevinden beide adressen zich op het 192.168.123.0-netwerk. Als u echter het subnetmasker 255.255.255.192 gebruikt, bevinden ze zich op verschillende netwerken; 192.168.123.71 bevindt zich op het 192.168.123.64-netwerk, 192.168.123.133 bevindt zich op het 192.168.123.128-netwerk.

Standaardgateways

Als een TCP/IP-computer moet communiceren met een host op een ander netwerk, zal deze meestal communiceren via een apparaat dat een router wordt genoemd. In TCP/IP-termen wordt een router die op een host is gespecificeerd en die het subnet van de host met andere netwerken verbindt, een standaardgateway genoemd. In deze sectie wordt uitgelegd hoe TCP/IP bepaalt of pakketten naar de standaardgateway moeten worden verzonden om een andere computer of een ander apparaat in het netwerk te bereiken.

Wanneer een host probeert te communiceren met een ander apparaat via TCP/IP, voert hij een vergelijkingsproces uit met behulp van het gedefinieerde subnetmasker en het bestemmings-IP-adres versus het subnetmasker en zijn eigen IP-adres. Het resultaat van deze vergelijking vertelt de computer of de bestemming een lokale host of een externe host is.

Als het resultaat van dit proces bepaalt dat de bestemming een lokale host is, verzendt de computer het pakket op het lokale subnet. Als het resultaat van de vergelijking bepaalt dat de bestemming een externe host is, zal de computer het pakket doorsturen naar de standaardgateway die is gedefinieerd in de TCP/IP-eigenschappen. Het is dan de verantwoordelijkheid van de router om het pakket door te sturen naar het juiste subnet.

Problemen oplossen

TCP/IP-netwerkproblemen worden vaak veroorzaakt door een onjuiste configuratie van de drie belangrijkste vermeldingen in de TCP/IP-eigenschappen van een computer. Door te begrijpen hoe fouten in de TCP/IP-configuratie de netwerkbewerkingen beïnvloeden, kunt u veel voorkomende TCP/IP-problemen oplossen.

Onjuist subnetmasker: als een netwerk een ander subnetmasker gebruikt dan het standaardmasker voor zijn adresklasse en een client is nog steeds geconfigureerd met het standaardsubnetmasker voor de adresklasse, zal de communicatie naar sommige nabijgelegen netwerken mislukken, maar niet naar verre netwerken. Als u bijvoorbeeld vier subnetten maakt (zoals in het voorbeeld van een subnet), maar het onjuiste subnetmasker 255.255.255.0 gebruikt in uw TCP/IP-configuratie, kunnen hosts niet bepalen dat sommige computers zich op andere subnetten bevinden dan hun eigen. In deze situatie worden pakketten die bestemd zijn voor hosts op verschillende fysieke netwerken die deel uitmaken van hetzelfde klasse C-adres, niet naar een standaardgateway verzonden voor levering. Een veelvoorkomend symptoom van dit probleem is wanneer een computer kan communiceren met hosts die zich op zijn lokale netwerk bevinden en kan communiceren met alle externe netwerken, behalve de netwerken die in de buurt zijn en hetzelfde klasse A-, B- of C-adres hebben. Om dit probleem op te lossen, voert u gewoon het juiste subnetmasker in de TCP/IP-configuratie voor die host in.

Onjuist IP-adres: als u computers met IP-adressen die zich in afzonderlijke subnetten zouden moeten bevinden met elkaar op een lokaal netwerk zet, zullen ze niet kunnen communiceren. Ze zullen proberen pakketten naar elkaar te sturen via een router die ze niet correct kan doorsturen. Een symptoom van dit probleem is een computer die kan communiceren met hosts op externe netwerken, maar niet kan communiceren met sommige of alle computers op hun lokale netwerk. Om dit probleem te verhelpen, moet u ervoor zorgen dat alle computers in hetzelfde fysieke netwerk IP-adressen op hetzelfde IP-subnet hebben. Als u geen IP-adressen meer hebt op een enkel netwerksegment, zijn er oplossingen die buiten het bereik van dit artikel vallen.

Onjuiste standaardgateway: een computer die is geconfigureerd met een onjuiste standaardgateway, kan communiceren met hosts op zijn eigen netwerksegment. Maar het zal niet communiceren met hosts op sommige of alle externe netwerken. Een host kan communiceren met sommige externe netwerken, maar niet met andere als aan de volgende voorwaarden wordt voldaan:

  • Eén fysiek netwerk heeft meer dan één router.
  • De verkeerde router is geconfigureerd als een standaardgateway.

Dit probleem komt vaak voor als een organisatie een router heeft naar een intern TCP/IP-netwerk en een andere router die is verbonden met internet.

Verwijzingen

Twee populaire referenties over TCP/IP zijn:

  • 'TCP/IP Illustrated, Volume 1: The Protocols,' Richard Stevens, Addison Wesley, 1994
  • 'Internetworking with TCP/IP, Volume 1: Principles, Protocols, and Architecture,' Douglas E. Comer, Prentice Hall, 1995

Het wordt aanbevolen dat een systeembeheerder die verantwoordelijk is voor TCP/IP-netwerken ten minste één van deze verwijzingen beschikbaar heeft.

Woordenlijst

  • Broadcast-adres: een IP-adres met een hostgedeelte dat allemaal enen is.

  • Host: een computer of ander apparaat op een TCP/IP-netwerk.

  • Internet: de wereldwijde verzameling netwerken die met elkaar zijn verbonden en een gemeenschappelijk bereik van IP-adressen delen.

  • InterNIC: de organisatie die verantwoordelijk is voor het beheer van IP-adressen op internet.

  • IP: het netwerkprotocol dat wordt gebruikt voor het verzenden van netwerkpakketten via een TCP/IP-netwerk of internet.

  • IP-adres: een uniek 32-bits adres voor een host op een TCP/IP-netwerk of internetwerk.

  • Netwerk: er zijn twee toepassingen van de term netwerk in dit artikel. Een daarvan is een groep computers op een fysiek netwerksegment. De andere is een IP-netwerkadresbereik dat is toegewezen door een systeembeheerder.

  • Netwerkadres: een IP-adres met een hostgedeelte dat allemaal uit nullen bestaat.

  • Octet: een 8-bits nummer, waarvan 4 een 32-bits IP-adres bevatten. Ze hebben een bereik van 00000000-11111111 die overeenkomen met de decimale waarden 0-255.

  • Pakket: een gegevenseenheid die via een TCP/IP-netwerk of WAN (Wide Area Network) wordt verzonden.

  • RFC (Request for Comment): een document dat wordt gebruikt om standaarden op internet te definiëren.

  • Router: een apparaat dat netwerkverkeer tussen verschillende IP-netwerken doorgeeft.

  • Subnetmasker: een 32-bits getal dat wordt gebruikt om het netwerk- en hostgedeelte van een IP-adres te onderscheiden.

  • Subnet of subnetwerk: een kleiner netwerk gemaakt door een groter netwerk in gelijke delen te verdelen.

  • TCP/IP: algemeen gebruikt, de reeks protocollen, standaarden en hulpprogramma's die vaak worden gebruikt op internet en grote netwerken.

  • Wide Area Network (WAN): een groot netwerk dat bestaat uit een verzameling kleinere netwerken, gescheiden door routers. Het internet is een voorbeeld van een groot WAN.