Sophie

Sophie

distrib > Mandriva > 2008.1 > i586 > by-pkgid > b18def347e26205d555aee0e81cb7333 > files > 23

howto-text-nl-2006-1mdv2008.1.noarch.rpm


DHCP mini-HOWTO

Vladimir Vuksan

               <[1]vuksan@veus.hr>

Vertaald door: Ellen Bokhorst

   <[2]bokkie@nl.linux.org>
   Wijzigingen
   Herziening v4.12 22 oktober 2000 Herzien door: vv

   In dit document wordt getracht basisvragen te beantwoorden over hoe je
   Linux box op te zetten dat het dient als een DHCP server of een DHCP
   client.
     _________________________________________________________________

   Inhoudsopgave
   [3]Introductie
   [4]DHCP protocol
   [5]Client Setup
   [6]DHCP Server Setup

Introductie

Standaard Disclaimer

   Voor de inhoud van dit document kan geen aansprakelijkheid worden
   aanvaard. Gebruik de concepten, voorbeelden en andere inhoud op eigen
   risico. Aangezien dit een nieuwe editie van dit document is, kunnen er
   fouten en onzurgvuldigheden in staan, die schade aan je systeem zouden
   kunnen veroorzaken. Vervolg met de nodige voorzichtigheid, en alhoewel
   het zeer onwaarschijnlijk is, neem ik er geen enkele
   verantwoordelijkheid voor.

   Onthoud ook dat dit GEEN officiëe informatie is. Veel van de inhoud
   van dit document is gebaseerd op veronderstellingen, welke voor mensen
   schijnen te werken. Gebruik de informatie op eigen risico.
     _________________________________________________________________

Nieuwe versies van dit document

   Nieuwe versies van dit document zijn beschikbaar vanaf

   [7]http://www.oswg.org/oswg-nightly/DHCP.html

   De volgende vertalingen van de DHCP mini-HOWTO zijn beschikbaar:

     * Chinees - [8]http://www.linux.org.tw/CLDP/mini/DHCP.html
     * Japans - [9]http://www.linux.or.jp/JF/JFdocs/DHCP.html
     * Spaans -
       [10]ftp://cuates.pue.upaep.mx/pub/linux/LuCAS/DHCP-mini-Como/

   Het is hierbij alle individuen die het document willen vertalen in hun
   moedertaal toegestaan dit te doen. Ik vraag je alleen een link naar
   dit document op te nemen en me de URL te geven van je vertaling, zodat
   ik er een verwijzing naar op kan nemen.
     _________________________________________________________________

Feedback

   Feedback is voor dit document zeer zeker welkom. Zonder jullie
   bijdragen en inbreng, zou dit document niet bestaan. Dus stuur
   alsjeblieft jullie aanvullingen, opmerkingen en kritiek op naar
   <[11]vuksan-feedback@veus.hr>.
     _________________________________________________________________

Medewerkers

   Dit document is een aangepaste versie van het oorspronkelijke document
   geschreven door Paul Makeev.

   De volgende mensen hebben aan deze mini-HOWTO een bijdrage geleverd:

     * Heiko Schlittermann
     * Jonathan Smith
     * Dan Khabaza
     * Hal Sadofsky
     * Henrik Stoerner
     * Paul Rossington
     * ontelbare anderen
     _________________________________________________________________

Copyright Informatie

   Dit document is auteursrechtelijk beschermd (c) 1998 Vladimir Vuksan
   en gedistribueerd onder de voorwaarden van de OpenContent License
   (OPL). De volledige tekst van de licentie is te vinden op

   [12]http://www.opencontent.org/opl.shtml
     _________________________________________________________________

DHCP protocol

   DHCP staat voor het Dynamic Host Configuration Protocol. Het wordt
   gebruikt om vitale netwerkparameters van hosts (actieve clients) met
   de hulp van een server te besturen. DHCP is backward compatibel met
   BOOTP. Zie voor meer informatie RFC 2131 (oude RFC 1541) en anderen.
   (Zie de sectie Internetbronnen aan het einde van dit document). Je
   kunt ook het document
   [13]http://web.syr.edu/~jmwobus/comfaqs/dhcp.faq.html doorlezen.

   In deze mini-HOWTO worden zowel de DHCP _SERVER_ daemon als de DHCP
   _CLIENT_ daemon behandeld. De meeste mensen hebben de client daemon
   nodig die op werkstations wordt gebruikt om netwerkinformatie van een
   remote server te verkrijgen. De serverdaemon wordt door
   systeembeheerders gebruikt om netwerkinformatie naar clients te
   distribueren, dus als je een reguliere gebruiker bent, dan heb je de
   _CLIENT_ daemon nodig.
     _________________________________________________________________

Client Setup

   Thans bestaan er drie veschillende DHCP clientprogramma's voor Linux,
   dhcpcd, pump en dhclient. Deze mini-HOWTO gaat primair over dhcpcd.
     _________________________________________________________________

Downloaden van de client daemon (dhcpcd)

   Afhankelijk van je distributie, moet je wellicht de DHCP clientdaemon
   downloaden. Als je het vanuit de broncode wilt compileren, dan heb je
   het dhcpcd package nodig waarvan de huidige versie, versie 1.3.18 is.
   Het wordt onderhouden door Sergei Viznyuk <[14]sergei@phystech.com> en
   tegenwoordig wordt het bij de meeste distributies als een binair
   package meegeleverd.

   De broncode van dhcpcd kan worden gedownload vanaf de volgende
   lokaties:

     * [15]ftp://ftp.phystech.com/pub/ (Primary site)
     * [16]http://www.cps.msu.edu/~dunham/out/

   Volg dan de instructies hieronder. Ze zouden hetzelfde moeten zijn:
     _________________________________________________________________

Slackware

   Je kunt de laatste kopie downloaden van DHCPcd vanaf elke Metalab
   mirror of vanaf:

     * [17]ftp://metalab.unc.edu/pub/Linux/system/network/daemons
     * [18]ftp://ftp.phystech.com/pub/ (Primary site)

   Download de laatste versie van dhcpcd.tar.gz.

     * Pak het uit
       tar -zxvf dhcpcd-1.3.18pl1.tar.gz
     * ga naar die directory en maak dhcpcd:
       cd dhcpcd-1.3.18pl1
       make
     * Installeer het (je moet de volgende opdracht als root uitvoeren)
       make install

   Hiermee zal de directory /etc/dhcpc worden aangemaakt waar DHCPcd de
   DHCP informatie zal opslaan en het dhcpcd bestand zal worden
   gekopieerd naar /usr/sbin.

   Typ om het systeem te initialiseren met DHCP tijdens het booten:

   cd /etc/rc.d

   mv rc.inet1 rc.inet1.OLD

   Hierdoor zal het oude netwerkinitialisatiescript worden hernoemd in
   rc.inet1.OLD. Je moet nu het nieuwe rc.inet1 script aanmaken. De
   volgende code is alles wat je nodig hebt:
#!/bin/sh
#
# rc.inet1      Dit shellscript boot het basis INET systeem.

HOSTNAME=`cat /etc/HOSTNAME` #Dit is waarschijnlijk niet nodig, maar ik
                             # laat het voor wat het is

# Koppel het loopback device aan.
/sbin/ifconfig lo 127.0.0.1
/sbin/route add -net 127.0.0.0 netmask 255.0.0.0 lo

# ALS JE EEN ETHERNET CONNECTIE HEBT, gebruik je de regels hieronder om de
# eth0 interface te configureren. Gebruik je alleen loopback of SLIP, voeg
# de rest van de regels dan niet in, in dit bestand.

/usr/sbin/dhcpcd

   Sla het op en reboot je computer.

   Ga naar de [19]laatste stap zodra je klaar bent.
     _________________________________________________________________

RedHat 6.x en Mandrake 6.x

   De configuratie van DHCPcd onder RedHat 6.0+ is echt makkelijk. Je
   hoeft alleen het Control Panel op te starten door te typen
   control-panel.

     * Selecteer "Network Configuration"
     * Klik op Interfaces
     * Klik op Add
     * Selecteer Ethernet
     * In de Edit Ethernet/Bus Interface selecteer "Activate interface at
       boot time" als ook "DHCP" en "Interface configuration protocol"

   In RedHat 6.x heeft RedHat als standaard en DHCP client opgenomen
   genaamd pump in plaats van de bovengenoemde dhcpcd. Op de CD-ROM staat
   wel een dhcpcd RPM, dus probeer dhcpcd als je geen gelukt hebt met
   pump. Nadat je dhcpcd hebt geïnstalleerd (b.v. rpm -i
   dhcpcd-1.3.17pl2-1.i386.rpm) dan moet je wat [20]wijzigingen
   aanbrengen.

   Aanvullende notities van Alexander Stevenson
   <[21]alexander.stevenson@home.com>:

   Ik had geen geluk met DHCPcd. Wat uiteindelijk werkte was "pump", wat
   wordt meegeleverd met Linux Mandrake 6.0 (en dus veronderstel ik dat
   het ook is opgenomen in RedHat). De opdracht die ik gebruikte was:

   pump -i eth0 -h hostname

   Het deed er niet toe wat "hostname" was, maar zonder dat, reageerde de
   server niet.

   Ik wijzigde toen de regel in mijn /sbin/ifup script om de wijziging te
   weerspiegelen; de standaardversie heeft geen -h switch, en dus werkte
   niet voor mijn.

   Probeer "-h hostname toe te voegen aan de pump regel in het /sbin/ifup
   script als je gebruik maakt van linuxconf en het na het instellen van
   de adapter op "DHCP" nog steeds niet werkt. Mijn script ziet er nu
   ongeveer zo uit:
...
if [ -n "$PUMP" ]; then
    echo -n "Vaststellen van IP informatie voor $DEVICE..."
    if /sbin/pump -i $DEVICE -h hostname; then
        echo " klaar."
    else
        echo " mislukt."
        exit 1
    fi
else ...

   Een andere elegantere manier om het hostname veld toe te voegen wordt
   geleverd door Aad van der Klaauw:

   Thans ben ik thuis een gateway systeem aan het configureren, nodig om
   het MAC adres in te stellen en de '-h hostname' workaround te
   gebruiken. Dus besloot ik het script *niet* te wijzigen, maar het
   configure bestand te gebruiken. In mijn
   /etc/sysconfig/network-scripts/ifcfg-eth0 heb ik het volgende
   toegevoegd:
DEVICE="eth0"
MACADDR="00:11:22:33:44:55"
DHCP_HOSTNAME="trigger_for_terayon"

   het is imho een "zuiverder" manier.

   Dat is het. Reboot je machine of tik op de opdrachtregel in /sbin/ifup
   eth0.
     _________________________________________________________________

RedHat 5.x

   De configuratie van DHCPcd onder RedHat 5.0+ is echt makkelijk. Je
   hoeft alleen het Control Panel op te starten door te typen
   control-panel.

     * Selecteer "Network Configuration"
     * Klik op Interfaces
     * Klik Add
     * Selecteer Ethernet
     * In de Edit Ethernet/Bus Interface selecteer je "Activate interface
       at boot time" als ook "DHCP" en "Interface configuration protocol"

   Ga naar de [22]laatste stap zodra je klaar bent.
     _________________________________________________________________

RedHat 4.x en Caldera OpenLinux 1.1/1.2

   DHCPcd is opgenomen in de standaard RedHat distributie als een RPM en
   je kunt het vinden op de CD-ROM van je distributie in de directory
   RPMS of je kunt het downloaden vanaf:

   [23]ftp://ftp.redhat.com/pub/redhat/redhat-4.2/i386/RedHat/RPMS/dhcpcd
   -0.6-2.i386.rpm

   Installeer het met rpm -i dhcpcd-0.6-2.i386.rpm.

   Als alternatief kun je je eigen versie compileren door de stappen te
   volgen uiteengezet in de [24]Slackware.

   De volgende informatie werd geleverd door nothing
   <[25]nothing@cc.gatech.edu>.

     Mijn statische ip en naam verwijderd uit /etc/resolv.conf. Ik liet
     echter de search regel staan en mijn twee nameserver regels (om een
     of andere reden maakt mijn dhcpcd nooit een /etc/dhcpc/resolv.conf
     aan, dus moet ik een statisch /etc/resolv.conf gebruiken).

     In /etc/sysconfig/network verwijderde ik de HOSTNAME en GATEWAY
     entry's. Ik liet de andere entry's zoals ze waren (NETWORKING,
     DOMAINNAME, GATEWAYDEV).

     In /etc/sysconfig/network-scripts/ifcfg-eth0 verwijderde ik de
     IPADDR, NETMASK, NETWORK, en BROADCAST entry's. Ik liet DEVICE en
     ONBOOT zoals ze waren. Ik wijzigde de BOOTPROTO regel in
     BOOTPROTO=dhcp.

     Sla het bestand op. Reboot je computer.

   Ga wanneer je klaar bent naar de [26]laatste stap.
     _________________________________________________________________

Debian

   Er bestaat een deb package van DHCPcd (zorgt dat het begint met
   dhcpcd) op:

   [27]http://ftp.debian.org/debian/dists/slink/main/binary-i386/net/

   Of volg de [28]Slackware installatie instructies op.

   Pak het deb package uit door in te tikken: dpkg -i
   /where/ever/your/debian/packages/are/dhcpcd*deb.

   Het schijnt dat het configureren van DHCPcd niet nodig is, omdat:


   Het dhcpcd package installeert zijn opstartscript zoals gewoonlijk
   voor debian packages in /etc/init.d/package_name, hier als
   /etc/init.d/dhcpcd, en linkt dit naar de diverse /etc/rc?.d/
   directory's.

   --From: Heiko Schlittermann <[29]heiko@os.inf.tu-dresden.de>

   De inhoud van de /etc/rc?.d/ dirs wordt dan tijdens het booten
   uitgevoerd.

   Als je het systeem na de installatie niet opnieuw opstart, dan zou je
   kunnen overwegen de daemon handmatig te starten: /etc/init.d/dhcpcd
   start.

   Ga naar de [30]laatste stap zodra je klaar bent.
     _________________________________________________________________

LinuxPPC en MkLinux

   De volgende sectie is geschreven door R. Shapiro

   Sinds de "1999" (R5) release, is Linuxppc nu bijna volledig compatibel
   met Redhat 6, met één voorbehoud (zie hieronder). Over het algemeen
   zijn de instructies exact hetzelfde als voor de huidige release van
   [31]RedHat 6.x en Mandrake 6.x.

   Een probleem dat overblijft is dat Redhat 6 standaard gebruik maakt
   van de 'pump' client voor dhcp, en 'pump' werkt niet betrouwbaar onder
   Linuxppc. Om dit te omzeilen zou je de laatste dhcpcd van Sergei
   Viznyuk moeten downloaden, en dan /sbin/ifup moeten bewerken dat het
   dhcpcd gebruikt in plaats van pump.

   Wijzig
if [ "$BOOTPROTO" = bootp -o "$BOOTPROTO" = dhcp ]; then
     PUMP=true
 fi

 if [ -n "$PUMP" ]; then

   in
 if [  "$BOOTPROTO" = bootp ]; then
       echo " klaar."
     else
       echo " mislukt."
       exit 1
     fi
 elif [ "$BOOTPROTO" = dhcp ]; then
     echo -n "IP informatie vaststellen voor $DEVICE..."
     if /sbin/dhcpcd -d $DEVICE ; then
       if [ -f /etc/dhcpc/dhcpcd-${DEVICE}.exe ]; then
           /etc/dhcpc/dhcpcd-${DEVICE}.exe
       fi

   en corresponderende wijzigingen voor ifdown. Wijzig
if [ "$BOOTPROTO" = bootp -o "$BOOTPROTO" = dhcp ]; then
....
fi

   in
if [ "$BOOTPROTO" = bootp ]; then
fi

if [ "$BOOTPROTO" = dhcp ]; then
      if [ -f /var/run/dhcpcd-${DEVICE}.pid ]; then
              kill `cat /var/run/dhcpcd-${DEVICE}.pid`
              rm -f /var/run/dhcpcd-${DEVICE}.pid
      fi
fi

   Een werkende ppc rpm voor dhcpcd is opgenomen op de Linuxppc 1999 cd;
   een iets latere rpm is beschikbaar in de contrib directory op
   [32]ftp://ftp.linuxppc.org/. Broncode, welke kant-en-klaar onder Linux
   ppc 1999 compileert, is beschikbaar vanaf
   [33]ftp://ftp.phystech.com/pub/dhcpcd-1.3.17-pl9.tar.gz.
     _________________________________________________________________

Alles samengenomen

   Nadat je machine opnieuw is opgestart, zou je netwerkinterface moeten
   zijn geconfigureerd. Typ: ifconfig.

   Je zou iets moeten krijgen als:
          lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Bcast:127.255.255.255  Mask:255.0.0.0
          UP BROADCAST LOOPBACK RUNNING  MTU:3584  Metric:1
          RX packets:302 errors:0 dropped:0 overruns:0 frame:0
          TX packets:302 errors:0 dropped:0 overruns:0 carrier:0 coll:0

eth0      Link encap:Ethernet  HWaddr 00:20:AF:EE:05:45
          inet addr:24.128.53.102  Bcast:24.128.53.255  Mask:255.255.254.0
          ^^^^^^^^^^^^^^^^^^^^^^^
          UP BROADCAST NOTRAILERS RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:24783 errors:1 dropped:1 overruns:0 frame:1
          TX packets:11598 errors:0 dropped:0 overruns:0 carrier:0 coll:96
          Interrupt:10 Base address:0x300

   Als je onder inet addr een normaal nummer ziet, dan ben je klaar.
   Wanhoop niet als je 0.0.0.0 te zien krijgt, dit is een tijdelijke
   instelling voor dhcpcd het IP-adres verwerft. Als je zelfs na een paar
   minuten nog 0.0.0.0 ziet, kijk dan alsjeblieft in
   [34]Probleemoplossing. DHCPcd is een daemon en die zal blijven draaien
   zolang je machine aanstaat. Elke drie uur, zal het contact opnemen met
   de DHCP server en proberen het IP-adres te vernieuwen. Het zal alle
   berichten in de syslog loggen (onder Slackware /var/adm/syslog,
   RedHat/OpenLinux /var/log/syslog).

   Nog iets als laatste. Je moet je nameserver opgeven. Er zijn twee
   manieren om dit te doen, je kunt of je provider vragen je de adressen
   van je nameserver aan te leveren en die dan plaatsen in het bestand
   /etc/resolv.conf of DHCPcd zal de lijst verkrijgen van de DHCP server
   en zal een resolv.conf in /etc/dhcpc samenstellen.

   Ik besloot gebruik te maken van DHCPcd's resolv.conf door het volgende
   te doen:

   Maak een backup van je oude /etc/resolv.conf: mv /etc/resolv.conf
   /etc/resolv.conf.OLD

   Als de directory /etc/dhcpc nog niet bestaat, maak deze dan aan: mkdir
   /etc/dhcpc

   Maak een link van /etc/dhcpc/resolv.conf naar /etc/resolv.conf: ln -s
   /etc/dhcpc/resolv.conf /etc/resolv.conf

   Probeer als dat niet werkt (correctie aanbevolen door
   <[35]nothing@cc.gatech.edu> met wat informatie van Henrik Stoerner):

   Deze laatste stap moest ik alleen uitvoeren omdat mijn dhcpcd geen
   /etc/dhcpc/resolv.conf aanmaakt. In
   /etc/sysconfig/network-scripts/ifup bracht ik de volgende wijzigingen
   aan (een erg armzalige hack, maar het werkt):
elif [ "$BOOTPROTO" = dhcp -a "$ISALIAS" = no ]; then
    echo -n "Using DHCP for ${DEVICE}... "
    /sbin/dhcpcd -c /etc/sysconfig/network-scripts/ifdhcpc-done ${DEVICE}
    echo "echo \$$ > /var/run/dhcp-wait-${DEVICE}.pid; exec sleep 30" | sh

    if [ -f /var/run/dhcp-wait-${DEVICE}.pid ]; then
        ^^^^
        echo "failed."
        exit 1

   Wijzigde ik in:
elif [ "$BOOTPROTO" = dhcp -a "$ISALIAS" = no ]; then
    echo -n "Using DHCP for ${DEVICE}... "
    /sbin/dhcpcd
    echo "echo \$$ > /var/run/dhcp-wait-${DEVICE}.pid; exec sleep 30" | sh

    if [ ! -f /var/run/dhcp-wait-${DEVICE}.pid ]; then
        ^^^^^^
       echo "failed."
       exit 1

   Opmerking

   Let op de ! (bang) in if [ ! -f /var/run/dhcp-wait-${DEVICE}.pid ];

   Leun nu lekker achterover en geniet ervan :-)
     _________________________________________________________________

Diverse notities

   De volgende stappen zijn niet nodig, maar wellicht dat ze voor een
   aantal mensen van nut zijn:

    a. Als je slechts zo nu en dan netwerkconnectiviteit nodig hebt, dan
       kun je dhcpcd vanaf de opdrachtregel starten (je moet hier root
       voor zijn) met: /usr/sbin/dhcpcd.
       Wanneer je het netwerk down wilt brengen, typ je: /usr/sbin/dhcpcd
       -k.
     _________________________________________________________________

Probleemoplossing

   Als je de hierboven uiteengezette stappen hebt opgevolgd en niet in
   staat bent het netwerk te benaderen dan zijn hier verscheidene
   mogelijke redenen voor:
     _________________________________________________________________

Je netwerkkaart is niet goed geconfigureerd

   Tijdens het bootproces probeert Linux je netwerkkaart en zou iets
   kunnen melden als:
eth0: 3c509 at 0x300 tag 1, 10baseT port, address  00 20 af ee 11 11, IRQ 10.
3c509.c:1.07 6/15/95 becker@cesdis.gsfc.nasa.gov

   Als een dergelijke melding niet verschijnt, dan wordt je ethernetkaart
   wellicht niet door je Linux systeem herkend. Als je een generic
   ethernetkaart hebt (een NE2000 kloon) dan zou je een disk moeten
   hebben ontvangen met DOS-utility's die je kunt gebruiken om de kaart
   in te stellen. Probeer de IRQ's uit totdat Linux je kaart herkent (IRQ
   9, 10 en 12 zijn gewoonlijk goed).
     _________________________________________________________________

Je DHCP server ondersteunt RFC 1541/Mijn DHCP server is Windows NT

   Probeer dhcpcd uit te voeren door het typen van dhcpcd -r.

   Gebruik ifconfig om te controleren of je netwerkinterface is
   geconfigureerd (wacht een paar seconden voor het configuratieproces
   initieel zal aankomen met Inet.addr=0.0.0.0)

   Als dit je probleem oplost, voegt dan de vlag "r" toe aan de
   opstartscripts, dwz: in plaats van /sbin/dhcpcd krijg je /sbin/dhcpcd
   -r.

   Bewerk bijvoorbeeld onder RedHat het script
   /etc/sysconfig/network-scripts/ifup en wijzig het volgende:
        IFNAME=$[ {DEVICE} \
        "/sbin/dhcpcd -r -c /etc/"- etc etc.
     _________________________________________________________________

Tijdens het booten krijg ik de foutmelding "Using DHCP for eth0 ... failed"
maar mijn systeem werkt prima.

   Je maakt naar alle waarschijnlijkheid gebruik van RedHat en hebt de
   instructies niet zorgvuldig opgevolgd :-) In één van de if statements
   ontbreekt de ! (bang). Spring [36]hier naar toe en controleer hoe het
   te corrigeren.
     _________________________________________________________________

Mijn netwerk werkt een paar minuten en reageert dan niet meer

   Er zijn meldingen over gated (gateway daemon) die de routing op Linux
   boxen verknalt wat resulteert in het hierboven beschreven probleem.
   Controleer of gate wordt uitgevoerd met: ps -auxww | grep gate.

   Als dit zo is, probeer het dan te verwijderen met RedHat's RPM manager
   of verwijder de entry in /etc/rc.d/.
     _________________________________________________________________

Mijn ethernetkaart wordt tijdens het booten herkend, maar ik krijg nog
steeds een "NO DHCPOFFER" melding in mijn logs. Ik heb een PCMCIA
ethernetkaart.

   Je moet ervoor zorgen dat de 10BaseT poort ("phone" plug) op je
   netwerkkaart is geactiveerd. De beste manier om dit te verifiëren is
   te controleren voor welk soort connector je kaart is geconfigureerd
   tijdens het booten, b.v.
eth0: 3c509 at 0x300 tag 1, 10baseT port, address  00 20 af ee 11 11, IRQ 10.
                            ^^^^^^^^^^^^
3c509.c:1.07 6/15/95 becker@cesdis.gsfc.nasa.gov

   Ik heb meldingen ontvangen van laptopgebruikers die dit soort
   problemen hebben door de PCMCIA utility's (in het bijzonder ifport)
   die het connector type zouden instellen op 10Base2 (thinnet). Je moet
   er zeker van zijn dat je 10BaseT gebruikt voor je connectie. Als dit
   niet zo is, dan moet je de kaart herconfigureren en de computer
   herstarten.
     _________________________________________________________________

Mijn DHCP client broadcast verzoeken, maar niemand antwoordt (Aangeleverd
door Peter Amstutz)

   Op een aantal systemen, moet je een hostnaam voor je machine als
   onderdeel van het verzoek opnemen. Doe dit met dhcpcd met dhcpcd -h
   foohost Waarschijnlijk zal de gewenste hostnaam je
   gebruikersaccountnaam op het netwerk zijn.
     _________________________________________________________________

Ik heb alle stappen opgevolgd, maar nog steeds is mijn machine niet in staat
een verbinding te leggen

   De kabelmodem zal gewoonlijk het ethernetadres van je netwerkkaart
   onthouden, dus als je een nieuwe computer verbindt, of de
   netwerkkaarten verwisselt, dan zul je op een of andere manier je
   kabelmodem moeten "leren" de nieuwe computer/kaart te herkennen.
   Gewoonlijk kun je het modem uitschakelen en het weer inschakelen als
   de computer aan staat of je zult de technische ondersteuning in moeten
   schakelen en ze vertellen dat je de netwerkkaart in de computer hebt
   verwisseld.

   Je hebt firewall rules (ipfwadm rules) die geen poort 67/68 verkeer
   toestaan gebruikt door DHCP om configuratie informatie te
   distribueren. Controleer zorgvuldig je firewall rules.
     _________________________________________________________________

Ik heb MediaOne Express service en ik kan nog steeds geen verbinding maken.

   Het schijnt dat MediaOne wat dingen heeft toegevoegd aan DHCP die er
   niet in horen. Vermoedelijk is dit geen probleem meer, maar als je
   moeilijkheden ondervindt, controleer dan op deze zaken. Als je het
   (on)geluk hebt Windows NT op je machine te hebben geïnstalleerd, en de
   Event Viewer activeert, dan zul je waarschuwing te zien krijgen als:
DHCP received an unknown option 067 of length 005. The raw option data is
given  below.

0000: 62 61 73 69 63            basic

   Als dit het probleem is ga dan naar [37]ftp://vanbuer.ddns.org/pub/ en
   download een binary of haal de broncode op voor de wijziging.
     _________________________________________________________________

Alternatieve DHCP client (ISC dhclient)

   Als je geen succes had met het verkrijgen van je Linux connectie
   draaiend met dhcpcd, dan wil je wellicht de ISC dhclient proberen.
   dhclient wordt me de DHCP distributie van ISC geleverd, waarin zowel
   een DHCP client als een DHCP server is opgenomen. Instructies hoe de
   DHCP distributie te verkrijgen en compileren zijn te [38]hier te
   vinden. Wanneer je er klaar mee bent, keer dan naar deze sectie terug
   om de client te configuren.

   Opmerking

   De volgende informatie is aangeleverd door Ted Lemon
   <[39]mellon@isc.org> één van de auteurs van dhclient.

   Met de huidige versie van de DHCP client, heb je feitelijk geen
   dhclient.conf nodig. Het enige dat je hoeft te doen is het aanroepen
   van dhclient b.v.: /sbin/dhclient.

   Hiermee zullen alle broadcast interfaces worden geconfigureerd. Als
   dit niet werkt, of als je slechts één interface wilt, dan maak je een
   /etc/dhclient.conf bestand aan met deze voorbeeldconfiguratie:
interface "eth0" {
  send dhcp-client-identifier 1:xx:xx:xx:xx:xx:xx;
  send dhcp-lease-time 86400;
}

   Hier veronderstellen we dat de ethernet interface eth0 is. Zo niet dan
   overeenkomstig wijzigen. Vervang bovendien xx:xx:xx:xx:xx door je
   ethernetadres. Deze dhclient.conf laat de client meer op een Win95
   client lijken.
     _________________________________________________________________

DHCP Server Setup

DHCP server voor UNIX

   Er zijn verscheidene DHCP servers beschikbaar voor U*X-achtige OS'sen,
   zowel commercieel als gratis. Een van de populairdere vrije DHCP
   servers is Paul Vixie/ISC DHCPd. Thans is de laatste versie 2.0
   (aanbevolen voor de meeste gebruikers), maar 3.0 is in beta testfase.
   Je kunt het ophalen vanaf

   [40]ftp://ftp.isc.org/isc/dhcp/

   Een aantal distributies voorzien in binaire packages voor dhcpd, dus
   sla de volgende sectie over als je het op die manier installeerde.

   Pak het uit nadat je het hebt gedownload. Daarna ga je naar de
   distributiedirectory en typt: ./configure

   De configure fase duurt even. Daarna tik je in: make en make install.
     _________________________________________________________________

DHCP server configuratie

   Typ na de installatie ifconfig -a. Je krijgt iets te zien als:
eth0      Link encap:10Mbps Ethernet  HWaddr 00:C0:4F:D3:C4:62
          inet addr:183.217.19.43  Bcast:183.217.19.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2875542 errors:0 dropped:0 overruns:0
          TX packets:218647 errors:0 dropped:0 overruns:0
          Interrupt:11 Base address:0x210

   Als er geen MULTICAST is weergegeven, dan moet je de kernel opnieuw
   configureren en ondersteuning voor multicast opnemen. Op de meeste
   systemen zul je dit niet hoeven doen.

   De volgende stap bestaat uit het toevoegen van de route voor
   255.255.255.255. Aangehaald uit de DHCPd README:

     "Voor de juiste werking van dhcpd met lastige DHCP clients (b.v.
     Windows 95), moet het in staat zijn pakketjes met het IP doeladres
     255.255.255.255 te verzenden. Helaas staat Linux erop
     255.255.255.255 in het lokale subnet broadcastadres te wijzigen
     (hier is dat 192.5.5.223). Dit resulteert in een overtreding van
     het DHCP protocol, en ondanks dat veel DHCP clients het probleem
     niet opmerken, doen een aantal (b.v. alle Microsoft DHCP clients)
     dit wel. Clients die dit probleem hebben, lijken de DHCPOFFER
     meldingen van de server niet te zien."

   Typ: route add -host 255.255.255.255 dev eth0

   Als je de melding "255.255.255.255: Unknown host" krijgt, dan zou je
   moeten proberen de volgende entry aan het bestand /etc/hosts toe te
   voegen:
   255.255.255.255 all-ones

   Probeer daarna:
   route add -host all-ones dev eth0

   of
   route add 255.255.255.0 dev eth0

   eth0 is uiteraard de naam van het netwerkdevice dat je gebruikt. Als
   het verschilt, wijzig dit dan overeenkomstig.
     _________________________________________________________________

Opties voor DHCPd

   Nu moet je DHCPd nog configureren. Hiervoor moet je het bestand
   /etc/dhcpd.conf aanmaken of bewerken. Er bestaat onder KDE een
   grafische interface voor de configuratie van dhcpd. (
   [41]http://www.kde.org/ ) genaamd kcmdhcpd dat veel lijkt op de DHCP
   configurator onder Windows NT. Wanneer KDE 2.0 uitkomt, zal het met
   kcmdhcpd worden meegeleverd, of kun je het direct ophalen vanaf:

   [42]ftp://ftp.us.kde.org/pub/kde/unstable/apps/network/

   Volg onderstaande instructies op als je het met de hand wilt
   configureren:

   Het meest gebruikelijke dat je zult willen is het willekeurig
   toekennen van IP-adressen. Dit kan met instellingen als volgt worden
   gedaan:
# Voorbeeld /etc/dhcpd.conf
# (voeg hier je opmerkingen toe)
default-lease-time 600;
max-lease-time 7200;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.1.255;
option routers 192.168.1.254;
option domain-name-servers 192.168.1.1, 192.168.1.2;
option domain-name "mydomain.org";

subnet 192.168.1.0 netmask 255.255.255.0 {
   range 192.168.1.10 192.168.1.100;
   range 192.168.1.150 192.168.1.200;
}

   Dit zal resulteren in een DHCP server die een client een IP-adres in
   het bereik 192.168.1.10-192.168.1.100 of 192.168.1.150-192.168.1.200
   toekent. Het zal voor 600 seconden een IP-adres verstrekken als de
   client niet vraagt om een speciek tijdsfragment. Anders zal de
   maximaal (toegestande) tijd 7200 seconden zijn. De server zal de
   client ook "adviseren" dat het 255.255.255.0 als subnetmask gebruikt,
   192.168.1.255 als het broadcastadres, 192.168.1.254 als de
   router/gateway en 192.168.1.1 en 192.168.1.2 als DNS servers.

   Als je een WINS server voor je Windows clients op moet geven, dan zul
   je de optie netbios-name-servers op moeten nemen, b.v.:
   option netbios-name-servers 192.168.1.1;

   Je kunt ook specifieke IP-adressen toekennen gebaseerd op het
   ethernetadres van de client, b.v.:
host haagen {
   hardware ethernet 08:00:2b:4c:59:23;
   fixed-address 192.168.1.222;
}

   Dit zal IP-adres 192.168.1.222 toekennen aan een client met het
   ethernetadres 08:00:2b:4c:59:23.

   Je kunt ook mengen en matchen, b.v. je kunt bepaalde clients
   "statisch" IP-adressen (b.v. servers) toekennen en anderen dynamische
   IP's (b.v. mobiele gebruikers met laptops). Er zijn een aantal andere
   opties, b.v. nis server adressen, time server adressen enz., mocht je
   een van die opties nodig hebben, lees dan alsjeblieft de manpage van
   dhcpd.conf.
     _________________________________________________________________

De server starten

   Voor het starten van de server moet er nog één ding worden gedaan. In
   de meeste gevallen maakt de DHCP installatie geen dhcpd.leases bestand
   aan. Dit bestand wordt door DHCPd gebruikt om informatie over huidige
   leases op te slaan. Het is in gewoon tekstformaat, dus je kunt het
   gedurende de werking van DHCPd bekijken. Typ voor het aanmaken van
   dhcpd.leases:
   touch /var/state/dhcp/dhcpd.leases

   Hiermee zal een leeg bestand (bestandsomvang = 0) worden aangemaakt.
   Een aantal van de oudere versies van dhcpd 2.0 plaatste het bestand in
   /etc/dhcpd.leases. Je hoeft geen wijzigingen aan te brengen aan het
   leases bestand, het zal worden gemanipuleerd door dhcpd. Als je een
   melding krijgt waarin wordt aangegeven dat het bestand bestaat, dan
   kun je dit simpelweg negeren en verder gaan met de volgende stap.

   Je kunt nu de DHCP server aanroepen. Typ simpelweg (of neem het op in
   de opstartscripts):
   /usr/sbin/dhcpd

   Hiermee zal dhcpd met het eth0 device worden aangeroepen. Als je het
   wilt aanroepen met een ander device, dan kun je dit simpelweg op de
   opdrachtregel opgeven, b.v.:
   /usr/sbin/dhcpd eth1

   Ter verificatie dat alles prima werkt, zou je als eerste de debugging
   modus aan moeten zetten en de server in de voorgrond plaatsen. Je kunt
   dit doen met:
   /usr/sbin/dhcpd -d -f

   Start dan één van de clients en bekijk de console van je server. Je
   zult een aantal debugging meldingen tevoorschijn zien komen. Als alles
   prima werkt, dan ben je klaar :-). Verlaat dhcpd en start het zonder
   de -d en -f argumenten. Als je wilt dat dhcpd tijdens het booten
   opstart, neem dhcpd dan op in b.v.:
   /etc/rc.d/rc.local
     _________________________________________________________________

Andere interessante documenten

   Linux Magazine heeft een tamelijk goed artikel in hun uitgave van
   april genaamd [43]Network Nirvana: How to make Network Configuration
   as easy as DHCP waarin de setup voor DHCP wordt besproken.

References

   1. mailto:vuksan@veus.hr
   2. mailto:bokkie@nl.linux.org
   3. file://localhost/tmp/DHCP-NL/DHCP-NL.html#AEN24
   4. file://localhost/tmp/DHCP-NL/DHCP-NL.html#AEN76
   5. file://localhost/tmp/DHCP-NL/DHCP-NL.html#AEN81
   6. file://localhost/tmp/DHCP-NL/DHCP-NL.html#AEN376
   7. http://www.oswg.org/oswg-nightly/DHCP.html
   8. http://www.linux.org.tw/CLDP/mini/DHCP.html
   9. http://www.linux.or.jp/JF/JFdocs/DHCP.html
  10. ftp://cuates.pue.upaep.mx/pub/linux/LuCAS/DHCP-mini-Como/
  11. mailto:vuksan-feedback@veus.hr
  12. http://www.opencontent.org/opl.shtml
  13. http://web.syr.edu/~jmwobus/comfaqs/dhcp.faq.html
  14. mailto:sergei@phystech.com
  15. ftp://ftp.phystech.com/pub/
  16. http://www.cps.msu.edu/~dunham/out/
  17. ftp://metalab.unc.edu/pub/Linux/system/network/daemons
  18. ftp://ftp.phystech.com/pub/
  19. file://localhost/tmp/DHCP-NL/DHCP-NL.html#NAMESERVER
  20. file://localhost/tmp/DHCP-NL/DHCP-NL.html#LINUXPPC-RH6
  21. mailto:alexander.stevenson@home.com
  22. file://localhost/tmp/DHCP-NL/DHCP-NL.html#NAMESERVER
  23. ftp://ftp.redhat.com/pub/redhat/redhat-4.2/i386/RedHat/RPMS/dhcpcd-0.6-2.i386.rpm
  24. file://localhost/tmp/DHCP-NL/DHCP-NL.html#SLACKWARE
  25. mailto:nothing@cc.gatech.edu
  26. file://localhost/tmp/DHCP-NL/DHCP-NL.html#NAMESERVER
  27. http://ftp.debian.org/debian/dists/slink/main/binary-i386/net/
  28. file://localhost/tmp/DHCP-NL/DHCP-NL.html#SLACKWARE
  29. mailto:heiko@os.inf.tu-dresden.de
  30. file://localhost/tmp/DHCP-NL/DHCP-NL.html#NAMESERVER
  31. file://localhost/tmp/DHCP-NL/DHCP-NL.html#REDHAT6
  32. ftp://ftp.linuxppc.org/
  33. ftp://ftp.phystech.com/pub/dhcpcd-1.3.17-pl9.tar.gz
  34. file://localhost/tmp/DHCP-NL/DHCP-NL.html#TROUBLESHOOTING
  35. mailto:nothing@cc.gatech.edu
  36. file://localhost/tmp/DHCP-NL/DHCP-NL.html#ERROR3
  37. ftp://vanbuer.ddns.org/pub/
  38. file://localhost/tmp/DHCP-NL/DHCP-NL.html#DHCPSERVER
  39. mailto:mellon@isc.org
  40. ftp://ftp.isc.org/isc/dhcp/
  41. http://www.kde.org/
  42. ftp://ftp.us.kde.org/pub/kde/unstable/apps/network/
  43. http://www.linux-mag.com/2000-04/networknirvana_01.html