De Linux Networkoverzicht HOWTO
v0.32, 8 juli 2000Het 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