Hoofdstuk 4. Netwerkconfiguratie

Inhoudsopgave
4.1. Netwerk hardware
4.2. Configuratie van interfaces
4.3. PPP
4.4. Resolving
4.5. IPv4 Forwarding

4.1. Netwerk hardware

Netwerkkaarten

De drivers voor netwerkkaarten worden tijdens de installatie geï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 netconfig commando. netconfig zorgt ervoor dat de module voor de gedetecteerde netwerkkaart geladen wordt in /etc/rc.d/rc.netdevice.

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

/sbin/modprobe 3c59x

PCMCIA kaarten

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

4.2. Configuratie van interfaces

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

# ifconfig -a
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)

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 ifconfig uitvoer zien dat ze geen IP adres hebben. Je kunt interfaces configureren in het bestand /etc/rc.d/rc.inet1. Je kunt simpelweg het commentaar lezen en de gevraagde waarden invoeren. Een voorbeeld:

# Edit these values to set up your first Ethernet card (eth0):
IPADDR="192.168.1.1"  # REPLACE with YOUR IP address!
NETMASK="255.255.255.0" # REPLACE with YOUR netmask!
# Or, uncomment the following lines to set up eth0 using DHCP:
#USE_DHCP=yes
# If your provider requires a DHCP hostname, uncomment and edit below:
#DHCP_HOSTNAME="CCHOSTNUM-A"

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 een commentaarteken (#) voor de IPADDR en NETMASK regels zetten en de commentaarteken voor de USE_DHCP regel verwijderen. Het geheel ziet er dan als volgt uit:

# Edit these values to set up your first Ethernet card (eth0):
#IPADDR="192.168.1.1"  # REPLACE with YOUR IP address!
#NETMASK="255.255.255.0" # REPLACE with YOUR netmask!
# Or, uncomment the following lines to set up eth0 using DHCP:
USE_DHCP=yes
# If your provider requires a DHCP hostname, uncomment and edit below:
#DHCP_HOSTNAME="CCHOSTNUM-A"

Hetzelfde is van toepassing op de tweede interface (zie het commentaar). Je kunt de instellingen actief maken door het systeem opnieuw te starten of door /etc/rc.d/rc.inet1 uit te voeren.

4.3. PPP

pppconfig

Voor het configureren van PPP heeft Slackware een speciale tool, pppsetup. Met pppsetup is het mogelijk je modem comfortabel via een menuinterface te configureren. Zowel voor het gebruik van PPP als pppsetup onder Slackware moet de ppp package uit de a/ diskset geï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 ttyS0 of ttyS1. Voor PCI modems kan dit varieëren, bekijk de kernel uitvoer (met bijvoorbeeld dmesg(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 /etc/resolv.conf 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.

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:

$ ppp-go

De verbinding is weer te verbreken met een ander simpel commando:

$ ppp-stop

4.4. Resolving

Hostnaam

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 /etc/HOSTNAME. Eé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 /etc/hosts toe te voegen. Lees de volgende sectie voor meer informatie over dit bestand.

/etc/hosts

/etc/hosts 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 /etc/hosts:

127.0.0.1       	localhost
192.168.1.1             tazzy.blowgish.org tazzy
192.168.1.2             gideon.blowgish.org

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.

/etc/resolv.conf

In het bestand /etc/resolv.conf 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:

nameserver 192.168.1.1
nameserver 192.168.1.69

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

4.5. IPv4 Forwarding

IPv4 forwarding maakt een verbinding tussen twee of meer netwerken door de pakketjes die op éé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 in-/uitgeschakeld worden onder Slackware Linux door de IPV4_FORWARD variabele in /etc/rc.d/rc.inet2 te manipuleren. Standaard staat het als volgt ingesteld:

IPV4_FORWARD=1

Dit betekend dat IPv4 forwarding aan staat. Je kunt het uitschakelen door 1 in deze regel in 0 te veranderen. De instellingen kunnen actief gemaakt worden door de computer opnieuw starten. Ook is het mogelijk IPv4 forwarding op een lopen systeem uit te schakelen (of te activeren door 0 in het volgende voorbeeld in 1 te veranderen) met:

# echo 0 > /proc/sys/net/ipv4/ip_forward

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 iptables. Ook NAT (Network Address Translation) is een onderdeel van iptables. NAT maakt het mogelijk een netwerk te "verbergen" achter een IP adres, zodat u met slechts één IP adres toch een heel netwerk internettoegang kunt geven.