Hoe werkt een thuisnetwerk
Als je thuis met meer dan één PC werkt zal je vroeg of laat de behoefte hebben om data van de ene PC naar de andere PC over te brengen. Maar de meeste gebruikers willen het Internet op. Door deze wensen ontkom je niet aan een “thuisnetwerk”. Maar, hoe werkt een thuisnetwerk.
Hardware Voor een thuisnetwerk met een koppeling naar het Internet heb je wat hardware nodig. Dit bestaat minimaal uit: - Modem (ADSL of kabel, beschikbaar gesteld door je service provider) - Router - Switch - UTP kabels
Gecombineerde modem/router/switch ADSL service providers leveren een apparaat waarin de functie van modem/router en switch gecombineerd zijn. B.v. een Thomson Speedtouch of een AVM Fritzbox. Al dan niet draadloos (WIFI) .
Multipc modem/routers zijn er van verschillende merken en types. Met of zonder WiFi (draadloos netwerk)
Modem van de kabel service provider Kabel service providers leveren veelal alleen het modem. Op de ethernet poort kun je een router of een switch aansluiten.
Ethernet netwerkkaart Elke PC die je in het netwerk mee wilt laten doen moet voorzien zijn van een netwerkkaart. Vaak zit er in een laptop en een moderne desktop al een netwerkkaart ingebouwd, dus daar kun je direct mee aan de slag maar als er geen netwerkkaart in je pc zit, moet je die eerst aanschaffen.
Netwerkkaart (intern PCI)
UTP kabel
Via de UTP poort op de netwerkkaart sluit je de PC met een (UTP) netwerkkabel aan op een LAN poort van je switch/router.
Achtergrondinformatie Het koppelen van PC’s in een ethernet netwerk en aan internet is best wel een ingewikkelde zaak en daarom zijn er wereldwijd afspraken gemaakt waar iedere fabrikant van de hard en software zich aan moet houden. Door deze afspraken kun je alle merken netwerkappartuur met elkaar koppelen. Een deel van deze afspraken zijn vastgelegd in het OSI 7 layer model. Het OSI 7 lagen model
De communicatie tussen pc’s is opgedeeld in 7 lagen. In de onderste laag (laag 1) zijn b.v. de afmetingen en het aantal draden in de UTP kabel vastgelegd. In laag 2 is vastgelegd hoe een ethernetkaart (ethernetprotocol IEEE802.3) in een pc werkt, welke spanning er wordt gebruikt en wat de maximale kabellengte is. Laag 3 gaat over router en het IP protocol. De afspraken over netwerkzaken gaan niet verder dan laag 3. Laag 4 en hoger zijn afhankelijk van de toegepaste programma(s) . In laag 4 wordt bepaald of er controle moet worden toegepast op de verzonden data en of die wel goed is overgekomen. Moet er wel controle (TCP,Transmission Control Protocol) of geen controle (UDP, User Datagram Protocol) worden toegepast? Laag 5 t/m 7 is helemaal afhankelijk van de toepaste programmatuur want een document wil je misschien ge-encrypt versturen (laag 6), maar flightsim data kan direct verstuurd worden. Deze zaken worden afgehandeld door (extra) software die je op je pc geladen hebt en heeft niets met het netwerk te maken.
Voorbeeld: FS9 multiplay sessie over internet Het lijkt dus, in laag 7 en 6, dat je met je Flightsimulator programma direct contact hebt met het “andere” Fligtsim programma of de server, maar dat is niet zo. De datastroom gaat door alle lagen zoals hieronder is voorgesteld.
Op je PC draait FS9. Om mee te doen in een multiplay sessie is ook FSCopilot opgestart en heb je connectie gemaakt met de server. Om andere deelnemers te zien en om ervoor te zorgen dat de andere deelnemers jou zien, moet er data worden uitgewisseld over je callsign, positie, vliegtuigtype enz. Het data pakketje komt vanaf laag 7/6 en moet de hele stack door om uiteindelijk bij laag 1 op het internet uit te komen. Onderweg voegt elke laag zijn eigen informatie toe aan het datapakket en wordt het daardoor steeds langer.
De dataflow
Als het frame bij het ontvangende station op de netwerkkaart aankomt gaat de data van onder naar boven door de stack waarbij elke laag zijn deel er weer afhaalt totdat op laag 7 de oorspronkelijke data overblijft.
Ethernet Het locale netwerk werkt volgens het Ethernet protocol. Het ethernet protocol werkt voor de adressering met MAC adressen en werkt alleen in laag 2 van het OSI model. Elke netwerkkaart heeft een uniek vast ingebakken 48 bits MAC (Media Access Control) adres. Bv: 00000000000011000110 01111101010010001000011101 Computers kunnen wel met die reeks enen en nullen werken maar mensen niet. Dus moet het makkelijker: In groepjes van 4? 0000 0000 0000 1100 0110 0111 1101 0100 1000 10000111 0110 Ook dat gaat niet. Dan maar zoals we het gewend zijn, decimaal: 0 0 0 12 6 15 14 2 1 1 15 6 Dat werkt ook niet, is nog steeds niet overzichtelijk, want we willen één cijfer per element van 4 bits. Met 4 bits zijn er 16 mogelijkheden en omdat we maar 1 karakter per 4 bits willen doen we het in het hexadecimale stelsel. (hex=6, deci=10) maar omdat cijfers slechts van 0 – 9 gaan, gaan we boven de 9 verder met letters: 10=A, 11=B, 12=C, 13=D, 14=E, 15=F. Niet tot 16? Nee, want de nul telt ook mee en dan hebben we 16 mogelijkheden. het MAC adres wordt dan 00 0C 6E D2 11 E6. Voor de leesbaarheid komt er nog : tussen, dus uiteindelijk wordt het 00:0C:6E:D2:11:E6 Om te voorkomen dat de verschillende fabrikanten hetzelfde MAC adres op hun kaarten bakken bestaat de linker helft van het MAC adres uit een fabrikant(merknaam)code. Zo kan de fabrikant in de rechter helft van het MAC adres zelf bijhouden of hij geen dubbele adressen uitgeeft. Hexadecimaal tellen waarde van de bitpositie: 8 4 2 1 0000=0 0001=1 0010=2 0011=3 0100=4 0 1 0 1 =5 0110=6 0111=7 1000=8 1001=9 1 0 1 0 = A (10) 1 0 1 1 = B (11) 1 1 0 0 = C (12) 1 1 0 1 = D (13) 1 1 1 0 = E (14) 1 1 1 1 = F (15)
Opstarten Hoe het internet aan je thuisnetwerk gekoppeld moet worden kun je het beste lezen in de handleiding van je service provider. Alle apparaten aanzetten en dan zou het moeten werken. . . . . Als je het leuk vindt kun je het verkeer op je netwerk volgen met een zogenaamde netwerksniffer, dat is software die “meeluistert” met alles wat er op je netwerk verzonden word. Uitleg en de download is te vinden op: http://www.wireshark.org/
een Wireshark scherm
Als het netwerk aanstaat, kun je de (eerste) pc aanzetten. Wanneer je een pc aanzet is die zich nog niet bewust van zijn bestaan. Tijdens de opstartprocedure wordt b.v. gekeken hoeveel geheugen erin zit, hoeveel harddisks erin zitten of er een toetsenbord e.d. aangesloten is en of er een netwerkkaart aanwezig is. Ook wordt allerlei software geladen (drivers) die bij de gevonden hardware horen. Daarna wordt Windows gestart en worden allerlei drivers (kleine programmaatjes) geladen om de hardware te laten werken. Ook vindt Windows in zijn opstartlijstje dat het IP protocol moet worden geladen om te communiceren met servers op het internet. Maar ja, hoe komt Windows aan de gegevens? Welk adres moet het gebruiken?
DHCP protocol Daar is DHCP (Dynamic Host Configuration Protocol) voor ontwikkeld. Op het netwerk moet één DHCP server aanwezig zijn. Deze server (software) draait meestal op de router en wordt vaak automatisch, out-of-the-box, ingesteld. Je kunt de DHCP server natuurlijk zelf wijzigen/configureren. Kijk daarvoor in de handleiding van je router. De pc, die nog geen IP gegevens heeft begint op het netwerk te vragen naar de DHCP server en vraagt tegelijk om IP gegevens. Op de sniffer ziet dat er zo uit:
Het antwoord van de DHCP server zie je in het bovenstaande overzicht. Bij de vraag om een IP adres geeft de server aan dat mijn pc al eerder een adres e.d. heeft gehad. Dit zijn de waarden tussen haakjes. Als het adres nog vrij is, dan reserveert de DHCP server ditzelfde adres weer voor mijn pc. Je ziet bij de opties ook staan: “IP Address Lease Time = 1 day”. Deze optie is ontstaan door krapte in de “private” adressen. Grote bedrijven hebben soms meer pc’s dan beschikbare adressen en met deze optie kun je dus een adres alleen maar leasen en niet vast toegewezen krijgen. Op de helft van de leasetijd vraagt de pc of hij het adres nog steeds mag leasen. Dat mag maar de leasetijd halveert bij elke verlenging. Vaak is niet iedereen aanwezig door ziekte, vakantie of parttime werken, of hun pc uitdoen om naar klanten te gaan. Hierdoor komen de adressen vrij voor uitgifte aan andere gebruikers.
Internet Protocol (IP) Om het internet op te kunnen heeft je pc een internet (IP) adres nodig. Zoals je hierboven kunt zien krijgt mijn pc het adres 192.168.1.70 van de DHCP server. Maar hij krijgt nog meer wat van belang is: het Subnet Mask 255.255.255.0 , het IP adres van de DNS (Domain Name Server) en het IP adres van de Router(default gateway), die weet waar het internet te vinden is. Nu kan ik met mijn pc naar het Internet. IP adres Een IP versie 4 IP adres bestaat uit 32 bits, dit wordt voorgesteld als 4 getallen bv. 192.168.1.70 Net als bij het MAC adres allemaal éénen of nullen maar voor de leesbaarheid voorgesteld in decimale getallen, gescheiden door een punt. Dit zijn dus 4 getallen van 8 bits. Met 8 bits heb je 256 mogelijkheden van 0 t/m 255. Met deze 32 bits kun je totaal 256x256x256x256= 4.294.967.296 adressen maken. Niet alle adressen kunnen worden gebruikt op het internet. Er zijn 3 adres-bereiken die alleen gebruikt worden op locale netwerken, de “private range addresses” Dit zijn adressen die beginnen met: 10.x.x.x , 192.168.x.x , en 172.16.x.x . Alle andere adressen zitten in de “public range”. De “private range” adressen worden niet gebruikt op het Internet. Verder worden er nog 270 miljoen adressen gebruikt voor speciale doeleinden. Er blijven ongeveer 4 miljard over en dat is eigenlijk te weinig. Men is al jaren bezig om IP adressen in te voeren van 128bit (IP versie 6) waarmee het tekort in adressen is opgelost. Als IP versie 6 is doorgevoerd kun je elke vierkante centimeter op aarde een IP adres geven. Een IP versie 6 adres ziet er zo uit: 2001:0:5ef5:79fd:2898:635:af9a:b93b
Subnetmask Met behulp het subnetmask kan de pc uitrekenen of het bestemmingsadres zich in het eigen netwerk zit of op internet. Dit is wel belangrijk want als de bestemming op het Internet ligt moet het bericht naar de router, de default gateway, gestuurd worden. Het subnetmask (255.255.255.0) bestaat uit een netwerkdeel en een host deel. Alle éénen horen bij het netwerkdeel en alle nullen horen bij het host deel. Bij 255 zijn alle 8 bits een één, en bij een 0 zijn alle bits 0. In ons geval ziet het subnetmask er zo uit: 11111111.11111111.11111111.00000000 Als ik (IP adres 192.168.1.70) connectie wil maken met 192.168.1.64 moet mijn pc weten of de bestemming zich in het eigen netwerk bevindt of op internet. De pc doet een logische AND (1 en 1=1, 0 en 0=1, 1 en 0=0, 0 en 1=0) operatie met z’n eigen adres en met het bestemmingsadres. De computer doet dat met enen en nullen (binair, bi=twee, 0 en 1) en niet zoals wij het adres lezen. mens: computer: subnetmask 255.255.255. 0 = binair-> 11111111.11111111.11111111.00000000 adres1 adres2
192.168.1.xx 192.168.1.xx and
= binair-> = binair->
11000000.10100000.00000001.- - - - - - - 11000000.10100000.00000001.- - - - - - - 11111111 11111111 11111111
De uitkomst zijn allemaal éénen dus het bestemmingsadres ligt in het eigen locale netwerk. Mijn pc zal d.m.v. een ARP request (zie hieronder) het MAC adres van de bestemmings pc proberen te vinden en het bericht sturen. Als ik een bericht wil sturen naar 184.200.3.12 doet mijn pc weer een logische AND met zijn eigen IP adres als volgt: subnetmask 255.255.255. 0
11111111.11111111.11111111.00000000
adres1 adres2
11000000.10100000.00000001.- - - - - - - 10111000.11001000.00000011.- - - - - - - 10000000 10000000 00000001
192.168.1.xx 184.200. 3.xx and
De uitkomst zijn niet allemaal éénen dus het bestemmingsadres ligt niet in het eigen netwerk maar in een ander netwerk. Hierdoor zal mijn pc het bericht naar de router(default gateway) sturen want die weet alle andere adressen te vinden. Mijn pc zal d.m.v. een ARP request het MAC adres van de router proberen te vinden en het bericht naar de router sturen.
ARP (Address Resolution Protocol) Bij verkeer tussen pc’s op je eigen locale netwerk heb je niets aan het IP adres/protocol. Als de pc er achter is gekomen dat de bestemming op het eigen netwerk zit (zie: Subnet mask), zal de pc op het netwerk vragen naar het MAC adres van de bestemmings pc middels een ARP request. Met de sniffer gezien ziet dat er zo uit:
Mijn pc kan nu het MAC adres van de bestemming toevoegen en het bericht op het locale netwerk zetten.
Domain Name Server DNS Alle computers op internet zijn te bereiken via hun IP adres. Als je naar de website van XS4ALL op internet wilt, tik je in de browser: http://194.109.6.92 maar dat onthoudt niemand. Gemakkelijker is het om de naam xs4all in te voeren in de browser maar daar kan de pc niets mee, die werkt alleen met IP adressen. Dus is er een database die namen koppelt aan IP adressen. Het adres zo’n DNS krijgt mijn pc van de DHCP server. Als ik http://www.xs4all.nl in mijn browser zet, gaat mijn pc eerst aan de DNS vragen welk IP adres bij die naam hoort. De DNS geeft antwoord: “194.109.6.92” en mijn pc zet dat nog een keer in de browser en stuurt de aanvraag opnieuw weg. Door de hele DNS procedure kan het voorkomen dat het lang duurt voordat je gewenste website op je scherm komt want als de DNS van je serviceprovider het niet weet, moet de serviceprovider een DNS verderop vragen en als die het ook niet weet . . . . kost allemaal tijd. Als een naam niet voorkomt in de DNS krijg je dat ook te zien:
foutcode 404 -> de naam staat niet in de DNS, dus onvindbaar. Wil je meer foutcode’s weten? kijk op: http://www.bedrijvenweb.nl/support/faq/http_foutcodes/
NAT (Network Address Translation) NAT heeft niets met nattigheid te maken maar met het tekort aan IP adressen. Grote bedrijven hebben datacenters met duizenden servers. Deze servers hadden in het verleden allemaal een direct internetadres. Het tekort aan adressen kwam al snel in zicht en toen heeft men NAT bedacht. De grote bedrijven kregen 1 “openbaar” IP adres en een reeks in de “private” ip adressen, b.v 10.1.0.0. Alle pc’s binnen dat bedrijf zijn nu dus via de router bereikbaar op dat ene openbare adres (mits de firewall goed is geconfigureerd). Zo gaat het bij jou en mij thuis ook. Je krijgt van je service provider één adres waarop je bereikbaar bent en die uitkomt op de internet (WAN) zijde van je router. Je eigen netwerk zit aan de andere kant van je router, de LAN zijde. Vanuit het Internet is alleen het adres van je router met zijn Internet adres zichtbaar en niet de pc’s op je locale netwerk.
Als je met adres 192.168.1.60 (PC1) naar het Internet gaat zal de router het locale adres omzetten naar het Internet adres. De router houdt een lijst bij van alle connecties. Op het moment dat er antwoord komt van het Internet, zal de router aan de hand van zijn lijst het locale adres aan het antwoord koppelen en doorsturen naar de juiste PC. De router kan meerdere connecties tegelijk onthouden. Bijkomend voordeel is dat de router standaard alle inkomend verkeer tegenhoud zodat je lokale netwerk is beschermd. Omdat de “private” adressen niet gebruikt worden op het Internet, zal je router nooit de adressen die je op je eigen netwerk gebruikt “doorvertellen” op het Internet.
Port Forwarding (virtual server) De router laat geen verkeer door dat vanaf het Internet naar binnen wil. Maar de router laat wel verkeer door als ik iets heb opgevraagd bij een website. Hoe werkt dat? Als je connectie wilt maken met een website, stuurt de pc een synchronisatie (SYN) bericht. In dit bericht worden verschillende afspraken gemaakt over de op te zetten connectie, o.a. een voorstel over de te gebruiken poortnumers (1-65535). Het antwoord van de website op dit SYN pakket is een acknowledge pakket (SYN, ACK). Dit pakket wordt doorgelaten door de router omdat het geen SYN pakket is en de connectie in zijn NAT lijstje staat. Sniffer voorbeeld:
Maar als je een website hebt draaien dan is het nodig dat men vanaf het internet je website kan bereiken. Met Portforwarding kun je zo’n koppeling maken maar dan moet je eerst weten hoe poortnummers werken. Een poortnummer is eigenlijk een extra toevoeging aan het adres om het verkeer naar het juiste proces op de pc/server te sturen. Op de server kunnen meerdere processen draaien, bv. een Website en Teamspeakserver. Als je met de internetbrowser naar de website gaat op server 192.168.1.100, toets je in: http://192.168.1.100 . Door “http” in te toetsen koppelt de internetbrowser automatisch poort 80 achter het IP adres en kom je uit op de website. Als je dat bij het adres van PC1 doet, http://192.168.1.60 , gebeurt er niets. Dat komt doordat er op PC1 geen webproces draait die “luistert” naar poort 80. Er zijn 65535 poortnummers die gebruikt kunnen worden.
Portforwarding
WiFi Een WiFi (draadloos) werkt hetzelfde als een “bedraad” netwerk. WiFi is slechts een vervanger van een kabel maar werkt als een radiozender en kan iedereen die het radiosignaal kan ontvangen ook meeluisteren. Dus kan de buurman gemakkelijk op je netwerk “meeliften”. Een draadloos netwerk moet dus beveiligd worden. Er zijn verschillende methodes maar WPA2 is de laatste en geeft de beste bescherming. Deze methode is het meest veilig, omdat zowel de sleutels als de encryptie is geregeld. Een nadeel is wellicht dat niet alle hard- en software WPA2 ondersteunt: voor Windows XP is sinds april 2005 ondersteuning voor WPA2 uitgebracht. Bij gebruik van Windows XP moet Servicepack 3 geïnstalleerd zijn. Als je een oude router/accesspoint hebt die alleen het WEP protocol gebruikt, kun je die beter vervangen of het WiFi deel niet gebruiken omdat het WEP protocol gemakkelijk te kraken is. Meer informatie op : http://www.microsoft.com/netherlands/artikelen/Techniek/beveiligingwifi.aspx#10 Een WiFi netwerk werkt als een HUB. Eén kanaal wordt gedeeld met alle gebruikers, maar er kan er maar één werken. De anderen moeten wachten tot het kanaal weer vrij is. Nu zul je denken: “Ach ik heb maar 2 pc’s die draadloos werken”, maar met alle gebruikers wordt in dit geval ook het WiFi netwerk van je buren bedoeld. Als je meerdere WiFi netwerken in je omgeving hebt die allemaal op hetzelfde kanaal werken, kan het WiFi netwerk erg traag werken. Of het druk is op het kanaal dat je gebruikt, kun je zien (en nog meer) met een gratis tool: http://www.netstumbler.com/downloads/
Je kunt dit voorkomen door je router op een ander kanaal te zetten. Kijk in de handleiding van je router hoe dat moet.
Tot slot Dit artikel gaat alleen over de werking van het netwerk en niet over de werking van Windows. Maar toch. . . . . Windows in het netwerk: Om een XP pc toe te voegen aan het netwerk doe je de volgende stappen: Start-> Configuratiescherm -> Netwerkverbindingen
kies: ”Thuisnetwerk of . . . . “
Volgende
Lezen en klikken op Volgende
enz. . .
Vul in naar wens en . . . Volgende
Als je bestanden wilt delen op de verschillende pc’s moet je delen aanzetten.
Het overzicht, als dit is wat je wilt, klik Volgende
Even zoeken . . . .
Kies de onderste optie en klik Volgende
Instellingen zijn compleet, klik Voltooien
Doe maar . . . . Ja
Klaar, de pc is opgenomen in de werkgroep. Nu alleen nog (indien gewenst) aangeven welke mappen moeten worden gedeeld.
Klik rechts op de map die je wilt delen en kies “Delen en Beveiliging”
Zet een vinkje bij de gewenste opties en wijzig eventueel de sharenaam. klik op Toepassen.
Als alles gelukt is staat er een handje in de icoon van de gedeelde map.
Mappen delen in Windows 7 Door de uitgebreidere beveiliging moet in Windows 7 bij het delen met een niet Windows 7 pc een extra stap gedaan worden. Bij het delen van mappen in Windows 7 krijg je op een Vista of XP pc de volgende melding:
Om toch toegang te krijgen tot de gedeelde map (in dit geval de map “Intel”), doe dan het volgende op de Windows 7 pc: In het Netwerkcentrum, klik in de linker kolom op “Geavanceerde instellingen voor delen wijzigen” Scroll naar beneden en activeer ”Met wachtwoord beveiligd delen uitschakelen” (zie onder)
En klik op “Wijzigen opslaan” Ga nu in de verkenner naar de betreffende map. Je had de map al gedeeld en klik onder het tabblad “Beveiliging” op “Bewerken”.
Klik op “Toevoegen” Klik op “Geavanceerd” Klik op “Nu zoeken”, scroll naar beneden en selecteer NETWORK en klik OK
Het item NETWORK is gevonden. Klik op OK
In het volgende scherm kun je, als je dat wilt, de rechten wijzigen. Klik op “Toepassen” en “OK”
Ziehier: het netwerk heeft toegang gekregen tot de gedeelde map. Klik op “Sluiten”
Ga nu weer naar de verkenner op de Vista of XP pc. Nu is de gedeelde map wel toegankelijk.
Als je meer gedeelde mappen hebt op je Windows 7 pc, pas deze procedure ook toe op de andere gedeelde mappen.
Links: Een schat van Nederlandstalige artikelen over verschillende versies van Windows en nog veel meer: http://www.pcwebplus.nl/tsoft/tsoft.htm# Wireshark (gratis) software om verkeer op je netwerk te analyseren: http://www.wireshark.org/ Netstumbler om draadloos netwerkverkeer te zien: http://www.netstumbler.com/downloads/ Foutcode in de Internetbrowser: http://www.bedrijvenweb.nl/support/faq/http_foutcodes/ Een overzicht van de meest bekende poortnummers: http://www.iana.org/assignments/port-numbers Dit artikel is te downloaden op: http://manuals.jandekker.net
Jan Dekker 02-2011