Inleiding tot netwerking


Linux is veel meer dan de concurerende OS'sen gericht op "netwerking". Dat is in zo'n mate waar dat zelfs een alleenstaande PC met een van de grote linuxdistributies erop, reeds aan netwerking doet!
Laat ons dat even duidelijk maken: bij netwerking wordt altijd gesproken van enerzijds een "server" en anderzijds van een "client". Klassiek gaat het dan om twee verschillende computers waarvan de ene een server-programma draait en de andere een client-progamma. De server wordt geacht aan "dienstverlening" te doen en de client "profiteert" daarvan. Door de band gebeurt de communicatie met het TCP/IP-protocol om de gegevens door te sturen, langs utp-kabel, of draadloos, in een lokaal netwerk (lan).
Welnu in de alleenstaande Linux-PC waarover we het net hadden, gebeurt de communicatie tussen het window-manager-programma, dat zijn bevelen krijgt van muis en toetsenbord, en dat ervoor zorgt dat grafische dingen zoals bureaublad, iconen, menu's, enz., op het scherm komen, met het TCP/IP-protocol via een "loopback" naar een heus IP-adres, nl. 127.0.0.1
Die "loopback" (lo) vervult hier in feite de rol van netwerkkaart!
In principe zou men een ander adres kunnen gebruiken en zou dat scherm zich ergens totaal anders kunnen bevinden!
Eigenlijk kan linux perfect draaien zonder grafische omgeving. maar dan is het scherm alleen een console die een soort "betere Dos" (tekstmodus of charactermode) toelaat.
In de meeste linux distributies kom je in die "tekstmodus" terecht door b.v. de toetsen Ctrl-Alt-F2 terzelfdertijd in te drukken, terug naar grafische mode is dan Alt-F7.

Maar we wilden de richting van netwerking uit!
Iedereen heeft thuis, of bij zijn buurman, al een router gezien. Of ze draadloos zijn of verbonden via utp-kabel maakt weinig uit.
Bij de meest voorkomende routers heb je één WAN-plugin, dat is naar het internet toe, en vier LAN-plugins, waar je vier verschillende PC's kan aanhangen. Ieder van die PC's krijgt, door de router en meestal automatisch via "dhcp", een IP-nummer toegekend. In feite kan je dat een "internet-adres" noemen. Het bestaat uit vier groepjes van (tot) drie cijfers, b.v. 192.168.1.2 en hetzelfde systeem wordt toegepast in het World Wide Web. Als je dus een adres ziet "www.abcd.be" is dat gewoon een alternatief voor viermaal drie cijfers.
In de praktijk betekent dit, dat je met twee of drie computers die verbonden zijn met je router al over een thuisnetwerkje, of LAN (local Area Network)  beschikt. Je kan met andere woorden contact nemen van de ene PC naar de andere, bestanden en data doorsturen, contact maken met de "gebruiker" op een andere computer en eventueel zelfs de besturing op afstand overnemen.

Om met een simpel voorbeeld te beginnen zullen we gebruik maken van de "netwerkcapaciteit" van een alleenstaande linux computer. Installeer daarvoor, indien dat nog niet standaard het geval zou zijn, het programma "netcat". (via synaptic) (Het bestand  /bin/nc wijst op de aanwezigheid van Netcat)
Open een terminal venster en typ  nc -l -p 4321 (druk enter) ; de -l parameter staat hier voor "listen" en de -p voor "port" (mag ook een ander nummer zijn)
Open een tweede venster en typ telnet 127.0.0.1 4321 (druk enter); hiermee wordt de "verbinding" gelegd tussen de twee vensters. Er verschijnt "Connected to 127.0.0.1." Typ daaronder b.v. "Kijken of het werkt.. " en druk Enter. Die tekst moet nu in het andere venster verschijnen. Ga met de muis naar dat eerste venster en typ daar b.v "Jawel hoor!!!", druk opnieuw Enter en dat "antwoord" verschijnt in het tweede venster. De twee terminals zijn duidelijk in verbinding met elkaar en kunnen onderling tekst uitwisselen, in feite is dit het principe van "chatten" op het web!
Als je wil stoppen doe je in venster nummer twee "Ctrl-]" en je ziet dan "telnet >" typ daar gewoon "quit" naast en doe weer Enter.

Indien het bovenstaande gelukt is kunnen we een stapje verder gaan, nl. "chatten" tussen twee PC's. Eerste vraag is dan: welke twee PC's?
We zullen er eerst vanuit gaan dat je over twee computers beschikt met een linux versie op. Staat er op die tweede geen linux dan kan je hem nog altijd even opstarten met een LiveCD, b.v. ubuntu, maar het mag ook Knoppix of Kanotix of nog een andere zijn, je moet dan wel kijken of ook je netwerkkaart geactiveerd is m.a.w. hang je aan het internet of kan je minstens je router adresseren? (meestal is dat op http://192.168.1.1)
 Zorg dat de beide computers aan je router hangen en dat deze in bedrijf is. Open op beide toestellen een terminal venstertje en typ sudo ifconfig, kwestie van de twee IP-adressen te achterhalen. Het IPadres van  de "luisterende PC" (computer A) heb je in elk geval nodig. Er is veel kans dat het respectievelijk 192.168.1.2 betreft voor computer A, en 192.168.1.3 voor computer B.
Bij LiveCD's die op Debian gebaseerd zijn is Netcat normaal aanwezig.
Zet computer A in wachtmode door in te tikken: nc -l -p 4321 en start op computer B de verbinding door in te typen: telnet 192.168.1.2 4321
Indien er verschijnt "connected to 192.168.1.2 ( IPadres van computer A) dan zit je goed en het chatten kan beginnen!
Eindig weer op computer B met "Ctrl-]" en "quit" zoals bij de eerste proef hogerop.
Voor de aardigheid kan je alles nog eens overdoen in niet grafische mode, door op beide toestellen in te loggen op een "Ctrl-Alt-F2" scherm, dat werkt evengoed!
Tussen haakjes, we hebben in bovenstaande proeven gebruik gemaakt van Telnet, dat is een eenvoudig server-client netwerkprotocol dat interactieve verbinding toelaat. Het is vrij oud en eigenlijk alleen nog geschikt voor lokaal gebruik.

Voor de volledigheid nemen we ook de volgende toestand: de tweede computer is eigendom van je vrouw, en je hebt er geen linux mogen opzetten! Vanwege ongerechtvaardigde angst mocht alleen de XP erop! Met alle rampzaligheid vandien, maar goed, je zou toch eens een chat-sessie willen demonstreren. Hoe ga je tewerk?
Terwijl ze boodschappen doet installeer je het kleine en totaal ongevaarlijke programmetje (wat de norton-beveiliging ook moge beweren.. ) Netcat op de XP. Je vind het in .zip-formaat op http://www.vulnwatch.org/netcat/  (Netcat 1.11 is OK)
Maak vervolgens een map C:\Netcat en unzip het gedownloade programma daarin.
Open een terminal-venster: in XP is dat te vinden op  --> Alle Proramma's --> Bureau-accessoires --> c:\Opdrachtprompt
Kijk nu eerst naar het IPadres: typ ipconfig en doe enter  (let op GEEN ifconfig zoals in linux!)
Ga naar de map die je gemaakt had, typ cd \Netcat
Typ nu nc -l -p 4321 doe Enter en wacht..
(Het is mogelijk dat de firewall vraagt of hij de "bloccage" moet opheffen, zeg dan ja natuurlijk.)
Laat die XP-terminal verder in standby staan.
Ga naar de linuxcomputer (B), open een terminal en, met gebruik van het juiste IPadres,
typ:  telnet 192.168.1.2 4321 en doe enter. (Gewone spatie tussen IPadres en poortnummer.)
Hierna zou chatten in beide richtingen mogelijk moeten zijn.

Bovenstaande proeven geven een idee van hoe data kunnen verstuurd worden van één computer naar een andere. In een volgend hoofdstuk zullen we aantonen dat ook bestanden kunnen worden uitgewisseld, dat programma's op afstand kunnen worden opgestart, en dat zelfs het bestuur van een PC kan worden overgenomen.




ONLx6


Inleiding          Vorige pagina           Volgende pagina