<!-- $Id: netconfig.xml,v 1.1.1.1 2004/03/21 21:02:22 cor Exp $ -->

<chapter> <?dbhtml filename="netconfig.html"?>
<title>Netwerkconfiguratie</title>

<sect1>
<title>Netwerk hardware</title>

<bridgehead>Netwerkkaarten</bridgehead>

<para>
De drivers voor netwerkkaarten worden tijdens de installatie ge&iuml;nstalleerd 
als kernel modules. De module voor je netwerkkaart dient
geladen te worden tijdens het starten van het systeem. De kans is
groot dat de netwerkkaart tijdens de installatie als geconfigureerd
is door de netwerk configuratie. Je kunt je netwerkkaart opnieuw
configureren met het <command>netconfig</command> commando.
<command>netconfig</command> zorgt ervoor dat de module voor de gedetecteerde
netwerkkaart geladen wordt in <filename>/etc/rc.d/rc.netdevice</filename>.
</para>

<para>
Je kunt natuurlijk ook zelf instellen welke modules geladen moeten worden
tijdens het starten van het systeem. Dit kunt je doen door een 
<command>modprobe</command> toe te voegen aan
<filename>/etc/rc.d/rc.modules</filename>. Stel je wilt de module voor
3Com 59x kaarten laden (3c59c.o), dan voeg je de volgende regel toe
aan <filename>/etc/rc.d/rc.modules</filename>:
</para>

<screen>
/sbin/modprobe 3c59x
</screen>

<bridgehead>PCMCIA kaarten</bridgehead>

<para>
Ondersteunde PCMCIA netwerkkaarten worden automatisch door de PCMCIA
software gedetecteerd. De pcmcia-cs package uit de "a" diskset biedt
PCMCIA functionaliteit voor Slackware Linux.
</para> 

</sect1>

<sect1>
<title>Configuratie van interfaces</title>

<para>
Netwerkkaarten zijn zichtbaar in Linux als zogenaamde "interfaces". Met
het <command>ifconfig</command>(8) commando kunt je zien welke interfaces
er zijn:
</para>

<screen>
# <command>ifconfig -a</command>
eth0      Link encap:Ethernet  HWaddr 00:20:AF:F6:D4:AD  
          inet addr:192.168.1.1  Bcast:192.168.1.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1301 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1529 errors:0 dropped:0 overruns:0 carrier:0
          collisions:1 txqueuelen:100 
          RX bytes:472116 (461.0 Kb)  TX bytes:280355 (273.7 Kb)
          Interrupt:10 Base address:0xdc00 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:77 errors:0 dropped:0 overruns:0 frame:0
          TX packets:77 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:8482 (8.2 Kb)  TX bytes:8482 (8.2 Kb)
</screen>

<para>
Netwerkkaarten krijgen de naam ethn, waarin n vervangen wordt met een
nummer beginnend met 0. In het bovenstaande voorbeeld heeft de eerste
netwerkkaart, interface eth0, al een IP adres. Maar als de interfaces
nog niet geconfigureerd zijn zul je in de <command>ifconfig</command>
uitvoer zien dat ze geen IP adres hebben. Je kunt interfaces configureren
in het bestand <filename>/etc/rc.d/rc.inet1.conf</filename>. De gevraagde
waarden wijzen voor zichzelf, bijvoorbeeld: 
</para>

<screen>
# Config information for eth0:
IPADDR[0]="192.168.1.1"
NETMASK[0]="255.255.255.0"
USE_DHCP[0]=""
DHCP_HOSTNAME[0]=""
</screen>

<para>
In dit voorbeeld krijgt de eerste interface (eth0) het IP adres
192.168.1.1 toegekend met de netmask 255.255.255.0. Als je een DHCP
server gebruikt (ofterwijl je IP adres toegekend wordt) dan kun
je de regel <emphasis>USE_DHP[n]=<quote></quote></emphasis> vervangen
met <emphasis>USE_DHP[n]=<quote>yes</quote></emphasis> (waarin
<quote>n</quote> vervangen dient te worden met het interfacenummer). 
De andere waarden dan, op <emphasis>DHCP_HOSTNAME</emphasis> 
na genegeerd. Bijvoorbeeld:
</para>

<screen>
IPADDR[1]=""
NETMASK[1]=""
USE_DHCP[1]="yes"
DHCP_HOSTNAME[1]=""
</screen>

<para>
Hetzelfde is van toepassing op andere interfaces.
Je kunt de instellingen actief maken door het systeem opnieuw te starten
of door <command>/etc/rc.d/rc.inet1</command> uit te voeren.
</para>

</sect1>

<sect1>
<title>PPP</title>

<bridgehead>pppconfig</bridgehead>

<para>
Voor het configureren van PPP heeft Slackware een speciale tool,
<command>pppsetup</command>. Met <command>pppsetup</command> is
het mogelijk je modem comfortabel via een menu-interface te configureren.
Zowel voor het gebruik van PPP als <command>pppsetup</command>
onder Slackware moet de ppp package uit de a/ diskset ge&iuml;nstalleerd
zijn. Na het openingsscherm zal je gevraagd worden het telefoonnummer
van je provider in te toetsen. Toets hier "ATDT" met daaraan het
nummer van je provider en eventueel het nummer dat je moet gebruiken
om op de buitenlijn te komen. In het volgende scherm kunt u selecteren
welk serieel apparaat je wilt gebruiken voor de PPP verbinding. Voor
externe modems is dit meestal <filename>ttyS0</filename> of
<filename>ttyS1</filename>. Voor PCI modems kan dit varie&euml;ren,
bekijk de kernel uitvoer (met bijvoorbeeld <command>dmesg</command>(8))
om de juiste apparaatnaam te vinden. Vervolgens kunt je de baud rate
van de modem instellen. Als je niet weet welke baud rate je modem heeft
kan het over het algemeen geen kwaad om "115200" te kiezen. In
het volgende scherm kun je opgeven of je internet provider je terugbelt.
Bij vrijwel geen enkele internetprovider is dit het geval en kunt je hier
"No" kiezen. Daarna kunt je een extra string met commando's voor de
modem meegeven. Meestal is dit niet nodig en kunt je hier gewoon op
enter drukken. Vervolgens zal je gevraagd worden het domeinnaam
en de nameservers van je provider op te geven. Hiermee wordt
<filename>/etc/resolv.conf</filename> geupdated, zodat namen om
te zetten zijn in IP adressen. In de volgende schermen kun
je de gegevens voor de authenticatie invullen. Eerst wordt gevraagd
welke protocol je voor de authenticatie wilt gebruiken; de meeste
providers gebruiken PAP. Daarna kun je de gebruikersnaam en wachtwoord
invullen.
</para>

<para>
Nu PPP geconfigureerd is kun je verbinding maken met je internetprovider.
De PPP verbinding wordt geregeld met een speciale daemon die op de
achtergrond gestart wordt. Je kunt als volgt de daemon starten en een
verbinding maken met jouw provider:
</para>

<screen>
$ <command>ppp-go</command>
</screen>

<para>
De verbinding is weer te verbreken met een ander simpel commando:
</para>

<screen>
$ <command>ppp-stop</command>
</screen>

</sect1>

<sect1>
<title>Resolving</title>

<bridgehead>Hostnaam</bridgehead>

<para>
Elke computer op het internet heeft een zogenaamde hostnaam. Ook als je 
geen vaste hostnaam heeft die via DNS beschikbaar is, is het toch handig
om een hostname in te stellen omdat sommige software er gebruik van maakt.
Je kunt je hostnaam instellen in <filename>/etc/HOSTNAME</filename>.
E&eacute;n regel met je hostnaam voldoet. Een hostnaam heeft normaliter
de volgende vorm: host.domein.tld, bijvoorbeeld darkstar.slackfans.org.
Let op dat de hostnaam "resolvable" moet zijn, dat wil zeggen dat Linux
in staat moet zijn het in een IP adres om te zetten. Dit kun je doen
door de hostnaam aan <filename>/etc/hosts</filename> toe te voegen. Lees 
de volgende sectie voor meer informatie over dit bestand.
</para>

<bridgehead>/etc/hosts</bridgehead>

<para>
<filename>/etc/hosts</filename> is een tabel van IP adressen met
bijbehordende namen. Dit bestand is ideaal om in een klein netwerk
verschillende computers van een naam te voorzien. Dit is een voorbeeld
van <filename>/etc/hosts</filename>:
</para>

<screen>
127.0.0.1       	localhost
192.168.1.1             tazzy.blowgish.org tazzy
192.168.1.2             gideon.blowgish.org
</screen>

<para>
De localhost regel moet altijd aanwezig zijn. Het koppelt de naam "localhost"
aan een speciale interface, de loopback. In dit voorbeeld is te zien dat
de namen "tazzy.blowgish.org" en "tazzy" aan het IP adres 192.169.1.1
gekoppeld worden en de naam "gideon.blowgish.org" aan IP adres 192.168.1.2. 
Op het systeem met dit dit hosts bestand zijn beide computers met de
genoemde namen.
</para>

<bridgehead>/etc/resolv.conf</bridgehead>

<para>
In het bestand <filename>/etc/resolv.conf</filename> kun je instellen
welke nameservers het systeem moet gebruiken. Een nameserver zet hostnamen om
in IP adressen. Hoogstwaarschijnlijk heeft je provider je ten minste
twee nameservers (DNS servers) toegekend. Je kunt deze nameservers in
dit bestand opgeven door per nameserver de regel "nameserver ipadres"
toe te voegen. Bijvoorbeeld:
</para>

<screen>
nameserver 192.168.1.1
nameserver 192.168.1.69
</screen>

<para>
Je kunt controleren of hostnamen goed omgezet worden met behulp van het
ping commando, door <command>ping hostnaam</command> uit te voeren.
Hostnaam kunt je vervangen met bijvoorbeeld de website van je internetprovider
(www.provider.nl).
</para>

</sect1>

<sect1>
<title>IPv4 Forwarding</title>

<para>
IPv4 forwarding maakt een verbinding tussen twee of meer netwerken
door de pakketjes die op &eacute;&eacute;n interface naar binnen
komen naar een andere interface te sturen. Dit maakt het mogelijk
om een Linux computer te laten fuctioneren als een router tussen
verschillende netwerken. Zo kun je bijvoorbeeld je thuisnetwerk
koppelen met het internet. IPv4 forwarding kan ingeschakeld
worden onder Slackware Linux door <filename>/etc/rc.d/rc.ip_forward</filename>
uitvoerbaar te maken. Dit kun je doen met het <command>chmod</command>
commando: 
</para>

<screen>
# <command>chmod a+x /etc/rc.d/rc.ip_forward</command>
</screen>

<para>
IPv4 forwarding is weer uit te schakelen door het bestand onuitvoerbaar
te maken:
</para>

<screen>
# <command>chmod a-x /etc/rc.d/rc.ip_forward</command>
</screen>

<para>
De instellingen kunnen actief
gemaakt worden door de computer opnieuw starten. Ook is het mogelijk
IPv4 forwarding op een lopend systeem uit te schakelen (of te activeren
door 0 in het volgende voorbeeld in 1 te veranderen) met: 
</para>

<screen>
# <command>echo 0 > /proc/sys/net/ipv4/ip_forward</command>
</screen>

<para>
Let op! Er zijn standaard geen filters actief. Dit betekend dat
iedereen op het netwerk kan komen! Om binnenkomend en uitgaand
verkeer te filteren en te controleren kun je onder Linux 2.4 kernels
gebruik maken van <command>iptables</command>. Ook NAT (Network
Address Translation) is een onderdeel van <command>iptables</command>.
NAT maakt het mogelijk een netwerk te "verbergen" achter een IP adres,
zodat u met slechts &eacute;&eacute;n IP adres toch een heel netwerk
internettoegang kunt geven.
</para>

</sect1>

</chapter>
