De Linux Networkoverzicht HOWTO

v0.32, 8 juli 2000

Het doel van dit document is een overzicht te verstrekken van de netwerkmogelijkheden van het besturingssysteem Linux, te voorzien in verwijzingen naar meer informatie en details over de implementatie.

IntroductieHet doel van dit document is een overzicht te verstrekken van de netwerkmogelijkheden van het besturingssysteem Linux. Alhoewel één van de sterke kanten van Linux is dat er een overvloed aan informatie voor bijna iedere component bestaat, is veel van deze informatie gericht op de implementatie. Nieuwe Linux gebruikers, in het bijzonder degenen die vanuit een Windows omgeving komen, zijn zich vaak niet bewust van de netwerkmogelijkheden van Linux. Dit document is erop gericht je een algemeen beeld van dergelijke mogelijkheden met een beknopte beschrijving van iedere mogelijkheid te laten zien inclusief verwijzingen naar meer informatie. De informatie is vanuit veel bronnen bijeenvergaard: HOWTO's, faqs, webpagina's van projecten en mijn eigen opgedane ervaringen. Volledige krediet wordt gegeven aan de auteurs van deze andere bronnen. Zonder hen en hun programma's zou dit document niet mogelijk of nodig zijn.Linux.

Wat is Linux?De primaire auteur van Linux is Linus Torvalds. Sinds de oorspronkelijke versies, is het door ontelbare aantallen mensen verbeterd. Het is een kloon van het besturingssysteem Unix, volledig vanaf het begin af aan geschreven. Een van de interessantere feiten over Linux is dat de ontwikkeling ervan simultaan over de gehele wereld plaatsvindt.Linux is copyrighted onder de voorwaarden van de GNU General Public License (GPL). Dit is een licentie geschreven door de Free Software Foundation (FSF) welke werd ontworpen mensen te verhinderen een beperking op de distributie van de software op te leggen. Samengevat zegt het dat hoewel geld kan worden gevraagd voor een kopie, de persoon die de kopie ontving niet verhinderd kan worden het voor niks weg te geven. Het betekent ook dat de sourcecode beschikbaar moet zijn. Dit is van nut voor programmeurs. Iedereen kan Linux aanpassen en zelfs zijn/haar aanpassingen distribueren, op voorwaarde dat ze de code onder hetzelfde copyright houden.
NetwerkprotocollenLinux biedt ondersteuning voor veel verschillende netwerkprotocollen:

TCP/IPHet Internet Protocol werd oorspronkelijk twee tiental jaren geleden ontworpen voor de United States Department of Defensie (DoD), met hoofdzakelijk als doel verschillende merken computers met elkaar te verbinden. De TCP/IP suite met protocollen maakte het mogelijk door zijn gelaagde structuur, applicaties van netwerkhardware te isoleren.Alhoewel het is gebaseerd op een model welke uit lagen bestaat, is het meer gericht op leveren van interconnectiviteit dan star trouw blijven aan functionele lagen. Dit is één van de redenen waarom TCP/IP het de facto standaard internetwerk protocol is geworden in tegenstelling tot OSI.TCP/IP netwerken is vanaf het begin in Linux aanwezig. Het is van het begin geïnstalleerd. Het is één van de meest robuuste, snelle en betrouwbare implementaties en is één van de sleutelfactoren in het succes van Linux.Gerelateerde HOWTO:
Ondersteunde netwerkhardwareLinux biedt ondersteuning voor een brede variëteit aan netwerkhardware, inclusief wat verouderde uitrustingen.Een aantal interessante documenten: Delen van bestanden en printersHet primaire doel van veel op de PC gebaseerde Local Area Networks is services te leveren aan gebruikers zoals het delen van bestanden en printers. Linux is als een gemeenschappelijke file en printerserver een geweldige oplossing.

Apple omgevingZoals in vorige secties uiteengezet, biedt Linux ondersteuning voor de Appletalk familie aan protocollen. Linux netatalk maakt het Macintosh clients mogelijk Linux systemen als een andere Macintosh op het netwerk te zien, bestanden te delen en gebruik te maken van printers die op de Linux servers zijn aangesloten.Netatalk faq en HOWTO:
Internet/IntranetLinux is een geweldig platform om als een Intranet / Internetserver te fungeren. De term Intranet refereert naar de applicatie met Internet technologiën binnen een organisatie met hoofdzakelijk als doel informatie binnen het bedrijf te distribueren en het beschikbaar te maken. Internet en Intranet services door Linux geboden bestaan onder andere uit mail, news, WWW servers en heel veel meer wat in de volgende secties aan de orde zal komen.

Mail

Mail serversSendmail is het de facto standaard mailserver programma (genaamd een MTA, of Mail Transport Agent) voor Unix platformen. Het is een robuust, schaalbaar en volkomen geconfigureerd en met de benodigde hardware kan het loads van duizenden gebruikers afhandelen zonder daarbij "met de ogen te knipperen". Ook alternatieve mailservers, zoals smail en qmail zijn beschikbaar. Mail HOWTO's:

Remote toegang tot mail In een organisatie of bij een ISP zullen gebruikers naar alle waarschijnlijkheid hun mail op afstand vanaf hun desktops willen benaderen. Er zijn hier onder Linux verscheidene alternatieven voor, waaronder POP (Post Office Protocol) en IMAP (Internet Message Access Protocol) servers. Het POP protocol wordt gewoonlijk gebruikt om berichten vanaf de server naar de client te transporteren. IMAP staat ook manipulatie van de berichten op de server toe, het op afstand aanmaken en verwijderen van folders op de server, in samenwerking benaderen van gedeelde mailfolders, enz. Aan mail gerelateerde HOWTO's:

Mail User AgentsEr zijn voor onder Linux een aantal MUA's (Mail User Agents) beschikbaar voor zowel de grafische als de tekstmode. De meest gebruikte zijn: pine, elm, mutt en Netscape.

Mailing list softwareEr zijn veel MLM (Mail List Management) programma's beschikbaar voor Unix in het algemeen en voor Linux in het bijzonder.Een goede vergelijking van bestaande MLM's is te vinden op:

FetchmailEen handig aan mail gerelateerd utility is fetchmail. Fetchmail is een vrij, robuust, goed gedocumenteerd remote mail ontvangst en forwarding utility met volledige mogelijkheden bedoeld te worden gebruikt over TCP/IP links waarbij de verbinding op verzoek tot stand wordt gebracht (zoals bij SLIP en PPP connecties). Het ondersteunt elk remote mailprotocol thans in gebruik op het Internet. Het kan zelfs ondersteuning bieden voor IPv6 en IPSEC.Fetchmail haalt mail van remote mailservers op en stuurt dit door via SMTP, waarna het vervolgens met gewone mail user agents, zoals mutt, elm, of BSD Mail kan worden gelezen. Het staat alle bewerkingen van de MTA toe op mail, zoals die gewoonlijk op gewone mail zouden worden toegepast, zoals het filteren, forwarden en gebruiken van de alias faciliteiten.Fetchmail kan worden gebruikt als een POP/IMAP-naar-SMTP gateway voor een geheel DNS domein, waarbij mail vanaf een enkele drop box bij een ISP wordt verzameld en gebaseerd op headeradressen via SMTP wordt doorgestuurd.Een klein bedrijf kan zijn mail in een enkele mailbox centraal verzamelen, fetchmail zo configureren dat het alle uitgaande mail bijeen vergaart, het via een enkele mailbox bij de ISP versturen en alle inkomende mail vanaf dezelfde mailbox ophalen.
Remote uitvoering van applicatiesEen van de meest verbazingwekkende mogelijkheden van Unix (één van de meest nog onbekende voor nieuwe gebruikers) is de geweldige ondersteuning voor de remote en gedistribueerde uitvoering van applicaties.

Telnet Telnet is een programma waarmee iemand een remote computer kan gebruiken alsof die persoon zich in feite op die site op afstand bevindt. Telnet is één van de meest krachtige hulpmiddelen voor Unix, die beheer echt op afstand toestaat. Het is ook een interessant programma uit oogpunt van gebruikers, omdat het op afstand toegang biedt aan bestanden en programma's die zich elders op het Internet bevinden. Gecombineerd met een X-server, is er (afgezien van de vertragende werking) geen verschil tussen werken vanuit een console of vanaf de andere kant van de planeet. Telnet daemons en clients zijn in de meeste Linux-distributies opgenomen.Versleutelde remote shell-sessies zijn beschikbaar via SSH () waarmee dus effectief beveiligd beheer op afstand mogelijk is.
Netwerk interconnectieLinux netwerken zijn rijk aan mogelijkheden. Een Linux box kan zodanig worden geconfigureerd dat het als een router, bridge, enz... fungeert. Een aantal van de beschikbare opties wordt hieronder beschreven.

RouterDe Linux kernel heeft ingebouwde ondersteuning voor routing functies. Een Linux box kan óf als een IP óf als een IPX router fungeren voor een fractie van de kosten van een commerciële router. Recente kernels bevatten speciale opties voor computers die primair als routers fungeren: Multicasting: De Linux computer kan als een router fungeren voor IP-pakketjes met verscheidene bestemmingsadressen. Het is nodig op de MBONE, een netwerk met hoge bandbreedte bovenop het Internet waarmee audio en video broadcasts worden overgebracht.IP policy routing: Normaal gesproken beslist een router wat te doen met een ontvangen pakket slechts gebaseerd op het uiteindelijke bestemmingsadres van het pakketje, maar routing kan ook rekening houden met het aanvankelijke adres en het netwerkdevice waar het 't pakketje van ontving.Er zijn een aantal gerelateerde projecten waarvan er een is gericht op het bouwen van een compleet, Linux draaiende router op een diskette:
Netwerkbeheer

Netwerkbeheer applicatiesEr bestaat een indrukwekkend aantal hulpmiddelen gericht op netwerkbeheer en beheer op afstand. Een tweetal interessante remote beheerprojecten zijn linuxconf en webmin: Andere hulpmiddelen zijn onder andere analyse tools voor netwerkverkeer, netwerk security tools, monitoring tools, configuratietools, enz. Een archief van veel van deze tools is te vinden op: .
Enterprise Linux NetworkingIn bepaalde situaties is het voor de netwerkinfrastructuur nodig dat er juiste mechanismen zijn om de beschikbaarheid van het netwerk vrijwel 100% van de tijd te garanderen. Een aantal hieraan gerelateerde technieken worden in de volgende secties beschreven. Het meeste van het volgende materiaal is te vinden op de uitstekende Linux website: en in de

High Availability Redundancy wordt gebruikt om te voorkomen er op het gehele IT-systeem enkele punten zijn waar gebreken op kunnen treden. Een server met slechts één netwerkkaart of een enkele SCSI-disk heeft twee op zichzelf staande punten waar gebreken op kunnen treden. Het doel is niet geplande uitvallen voor gebruikers te verbergen op een manier waarbij gebruikers snel weer verder kunnen werken. High availability software bestaat uit een set scripts en tools die automatisch gebreken in de gaten houden en detecteren, de passende stappen ondernemen om de normale werking te herstellen en systeembeheerders op de hoogte te brengen.
InformatiebronnenAls je onder Linux netwerkproblemen ondervindt, e-mail de vragen dan alsjeblieft niet naar mij. Ik heb gewoon geen tijd om ze te beantwoorden. Je maakt een grotere kans om hulp te verkrijgen als je een vraag post in de nieuwsgroep comp.os.linux.networking newsgroup (die je kunt benaderen via ). Zorg dat je eerst de relevante informatie leest, voordat je naar deze lijst post. Doorzoek dan het nieuwsarchief, omdat de kans bestaat dat iemand anders ooit dezelfde vraag heeft gesteld (en deze door iemand is beantwoord). Leg bij het posten alle genomen stappen uit en de foutmeldingen die je daarbij kreeg. Waar je meer informatie vandaan kunt halen: Linux: Linux Documentatie Project: (bekijk de Linux Network Administrator Guide) Freshmeat: De laatste releases van Linux Software. Linux links: Document historie 0.32 Veel links bijgewerkt die zijn gewijzigd. Met dank in het bijzonder aan voor zijn zorgvuldige voorbeschouwing en gedetailleerde beschrijving van wat er moest worden gewijzigd. Veel dank ook aan en die me wezen op andere links die niet langer geldig waren. 0.31 (17 sept 1999) Adres van linux router project gewijzigd (met dank aan John Ellis) en een andere PPTP link toegevoegd (met dank aan Benjamin Smith) 0.30 (6 april 1999) Sectie over CODA opgenomen (met dank aan 0.2-0.29 Bugfixes :-) (zie erkenningen, aan het einde van dit document) 0.1 (5 juni 1998)Erkenningen en disclaimerDit document is gebaseerd op het werk van vele andere mensen die het mogelijk hebben gemaakt tot wat Linux nu is: één van de beste netwerk besturingssystemen. Alle krediet komt hun toe. Er is veel moeite genomen dit document zo simpel maar accuraat en compleet mogelijk te houden, maar niet overdreven lang. Niettemin, wordt er onder geen enkele omstandigheid door de auteur aansprakelijkheid aanvaardt. Gebruik de informatie in dit document op eigen risico. Mail me gerust je suggesties, correcties of algemene opmerkingen over het document zodat ik het kan verbeteren. In toekomstige versies van dit document zullen waarschijnlijk onderwerpen worden opgenomen, zoals radius, web/ftp mirroring tools zoals wget, traffic analyzers, CORBA... en vele anderen die mogelijk worden gevraagd of van toepassing zijn. Je kunt me bereiken via .Tenslotte zou ik , , en in het bijzonder en willen bedanken voor hun zorgvuldige voorbeschouwingen en opmerkingen over deze HOWTO. Hun hulp wordt enorm gewaardeerd. Je kunt een versie van dit document aantreffen op .Daniel Lopez Ridruejo 8 juli 2000