Om op Internet te kunnen surfen, heb je een IP-adres nodig. Dit IP-adres krijg je door middel van DHCP, het Dynamic Host Configuration Protocol. Bij het opstarten stuurt de DHCP-client een pakketje naar het broadcast-adres 255.255.255.255. Hierop antwoord de DHCP-server van pandora met een pakket dat een hele hoop gegevens bevat:
Het bestand /etc/resolv.conf bevat de DNS-instellingen. Bij pandora ziet dit er normaal zo uit:
domain pandora.be nameserver 195.130.132.17 nameserver 195.130.132.18De DHCP-client maakt dit bestand aan a.d.h.v. de informatie die hij van de DHCP-server ontving, maar sommige dhcp-clients zetten het bestand niet op de correcte plaats, i.c. /etc/resolv.conf.
DISCLAIMER: ik heb enkel praktijkervaring met RedHat 6.x. Gelieve uw ervaringen met andere distributies door te mailen naar ben.de.rydt@pandora.be.
Omdat je onder Linux altijd moet kunnen kiezen, zijn er verschillende DCHP-clients in de omloop:
Gebruikers van RedHat 5.x met de oude kernel (2.0.3x) kunnen hier dhcpcd-0.70-5 downloaden. Deze versie lost een probleem op met vendor-specific DHCP-options.
Het instellen van DHCP is eenvoudig: dit kan via hetzij linuxconf, netcfg of manueel. Welke methode je ook gebruikt, uiteindelijk moet er in /etc/sysconfig/network-scripts/ifcfg-eth0 het volgende staan:
DEVICE="eth0" IPADDR="" NETMASK="" ONBOOT="yes" BOOTPROTO="dhcp"
RedHat 6.0 gebruikt pump, maar de versie die bij RedHat 6.0 geleverd wordt, blijkt niet te werken. Update deze naar versie 0.7, dan zou alles moeten werken. Overigens zijn er voor RedHat 6.0 nog een hele hoop andere updates die de moeite waard zijn: kijk eens naar de RedHat-errata voor een mooi overzicht van alle updates en/of errata. Je kan alle updates lokaal op de mirror vinden: ftp://mirrors.pandora.be/mirrors2/ftp.redhat.com/redhat/updates/6.0/i386/.
Redhat 6.1: pump 0.7.2 blijkt zonder al te veel problemen te werken.
Het instellen van DHCP onder RedHat 6.0 is identiek aan RedHat 5.x.
Kijk ook eens naar de site van Koen De Boeve: http://users.pandora.be/de.boeve/pandora.html.
Met S.u.S.E. zijn er blijkbaar weinig problemen.
Je moet ervoor zorgen dat je het package dhclient geïnstalleerd hebt. Dit bevindt zich onder Series "n" (Network-Support (TCP/IP, UUCP, Mail, News)). Verder kan je dhclient configureren via YaST -> System Administration -> Network Configuration -> DHCP client.
De volledige tekst over de S.u.S.E DHCP-server en client vind je hier: http://www.suse.de/sdb/en/html/dhcp_client.html. Let wel op: als je meer dan één netwerkkaart in je computer hebt zitten, dan werkt het S.u.S.E. dhcp-script alleen voor de eerste, eth0.
Kijk ook eens naar de site van Hans Njefsky: http://users.pandora.be/w3d/linet.htm#kabel.
Bij slackware 4.0 zit standaard de dhcpcd 1.13. Enige wat moet gedaan worden om die aan de klap te krijgen is vrij eenvoudig : Aan het einde van /etc/rc.d/rc.inet1 voeg je de regel /sbin/dchpcd eth0 toe. (Natuurlijk interface invullen naar eigen smaak en setup ;-) (met dank aan Bram Kerkhof).
Slackware 7.x is voorzien van dhcpcd 1.3. Configuratie is mogelijk nog eenvoudiger: in het bestand /etc/rc.d/rc.inet1 pas je volgende regel aan:
DHCP="no" wordt:
DHCP="yes"
Slack gaat er dan van uit dat eth0 de netwerkkaart is die je hiervoor wil gebruiken. Als je meer dan 1 kaart hebt, is de kans groot dat je zelf kan uitdokteren wat er moet gebeuren om dit aan te passen. [Bram Kerkhof]
Blijkbaar gebruiken oudere versies van Slackware dhcpcd-0.70. Je kan mijn patch en broncode van de laatste versie hier vinden.
De standaard Debian 2.1 (a.k.a. "slink") DHPC-client, dhcpcd, blijkt niet te werken. De oplossing hier blijkt te zijn: installeer dhcp-client-beta 2.0b1pl6-0.2 (dhclient) of download dhclient van het Internet Software Consortium en installeer deze. De client automatisch laten opstarten kan door een script te zetten in de directory /etc/rc.boot/. Dit script hoeft niet meer te bevatten dan:
#!/bin/sh # als pandora niet de eerste netwerkkaart gebruikt, zet er dan eth1,2,... dhclient eth0
(Met dank aan Nathan Van Overloop).
Nog geen info.
Yet Another Linux Distribution :-).
FreeBSD gebruikt dhclient. Meer info vind je hier.
Wat werkt niet? Als het derde lichtje van de kabelmodem brandt, dan wil dit zeggen dat wat DHCP betreft, alles in orde is. Ben je niet vergeten de proxy in te stellen onder Netscape?
Als het derde lichtje van de kabelmodem niet brandt, kijk dan eerst en vooral of je netwerkkaart wel goed geïnstalleerd is.
Check vervolgens de volgende punten:
Met "ps ax" zie je alle programma's die draaien. Je DHCP-client moet hiertussen staan. Bv. op mijn machine:
165 ? S 0:00 /sbin/dhcpcd -c /etc/sysconfig/network-scripts/ifdhcpc-done 349 ? S 0:03 syslogd 358 ? S 0:00 klogd
Als de client hier niet tussen staat, start hem dan manueel op.
De meeste DHCP-clients sturen berichten naar de syslog. In het bestand /var/log/messages zul je mogelijke foutmeldingen terugvinden.
De meeste DHCP-clients beschikken over een debug-mode die je kunt opstarten met één of andere command-switch. Bij dhcpcd-1.13-17 is dit: "dhcpdcd -d" waardoor deze veel meer informatie naar syslog zal sturen.
Als je computer over meerdere netwerkkaarten beschikt, vergewis je er dan van dat de DHCP-client op de juiste netwerkkaart loopt. Voor dhcpcd is de syntax "dhcpcd <interface>", waarbij interface staat voor eth0, eth1, ....
Als je Pandora ervan verdenkt ongeldige DHCP-pakketten te versturen, kijk dan eens met tcpdump wat er allemaal voorbij komt (en lees de RFC's). Met "tcpdump -n -i eth0 -l -s 500 -x udp port 67 or port 68 | tee dhcp_dump" dump je alle DHCP-pakketten naar een file voor verdere inspectie. Als er na een kwartier geen pakketten voorbijgekomen zijn dan weet je zeker dat er iets mis is.
Zit de UTP-kabel in de netwerkkaart? Staat de kabelmodem aan?