
                        DHCP mini-HOWTO (DHCPd/DHCPcd)
                                       
: Vladimir Vuksan, vuksan@veus.hr
: ΰ dawei@sinica.edu.tw

   v2.5, 18 September 1998 : 20 Feb 1999
     _________________________________________________________________
   
   ļҪڽλΰ Linux 趨 DHCP ŷ DHCP
   ͻˣһЩ⡣
     _________________________________________________________________
   
1. 

     * 1.1 
     * 1.2 ȡļ°汾
     * 1.3 
     * 1.4 
     * 1.5 Ȩ
       
2. DHCP ͨѶЭ

3. 趨û

     * 3.1 û˼سʽ
     * 3.2 װ Slackware 
     * 3.3 װ RedHat 5.0 ϵİ汾
     * 3.4 RedHat 4.x  Caldera OpenLinux 1.1 趨
     * 3.5 Debian 1.3.1 趨
     * 3.6 LinuxPPC  MkLinux 趨
     * 3.7 ǺŻ(Token Ring)·
     * 3.8 ᣬµĶ
     * 3.9 ע
     * 3.10 ų
       
4. DHCP ŷ趨

     * 4.1 UNIX ϵ DHCP ŷ
     * 4.2 ·̬趨
     * 4.3 DHCPd ѡ
     * 4.4 ŷ
     _________________________________________________________________
   
1. 

1.1 

   ļݲκ⳥ҪļĸӡԼ
    ʱλҪԼеաһ³ļԿܻЩ
   Լ ȷĵطˣȻܶϵͳΣȻѲ̫
   ܷ СΪϣһŲκΡ
   
   ͬʱҲģļṩݲ  ʽѶ ļ
   ݣ඼Ǽģδؿԡʱ
   λ ҪԼеա
   
1.2 ȡļ°汾

   ļ°汾ᶨڵ comp.os.linux.answers Ⱥϡ 
   ҲᱻڸѶ FTP վ̨ϣ磺
   
   [1]ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO
   
   ⣬ͨ Linux ļƻҳҵļοַ
   
   [2]http://sunsite.unc.edu/LDP/
   
1.3 

   ǶļκλǳӭûĸͲ룬ļ
    ˵ǰԣ뽫Ľ顢ָ̼
   vuksan@veus.hr
   
1.4 

   ļ Paul Makeev İ汾޸Ķġ
   
   ļй׵ѣо£
     * Heiko Schlittermann
     * Jonathan Smith
     * Dan Khabaza
     * Hal Sadofsky
     * Henrik Stoerner
     * Paul Rossington
       
1.5 Ȩ

   ļ 1998 İȨ Vladimir Vuksan У밴¹涨ɢ
   
     * Linux HOWTO ļȫ򲿷֣ʹκӵýʽ
        ɢֻҪȨÿݿСҵΪɢ
        ܻӭģǣκεɢΪ߶ϣܱ֪
     * з롢Ĺϲκ Linux HOWTO ļľۼ
        ȨıҲ˵㲻Դ HOWTO һļ
       Ȼ ļɢǿһЩض״
       £ŻŵЩ  Linux HOWTO Эˣĵַ
       ¡
     * κʣ Linux HOWTO Э
       
   [3]linux-howto@sunsite.unc.edu
   
2. DHCP ͨѶЭ

   DHCP Ƕ̬趨Э (Dynamic Host Configuration Protocol)ļд
   DHCP  Ҫ;ǣ͸ŷЭعִܸеû
   ϲȱٵ· ߲DHCP Э BOOTP Эһ
   Ѷο RFC 2131 ׼ RFC 1531 ɱ׼Լϡο
   ļĩβοԴĲ֣ ҲԲ [4]DHCP FAQ
   (http://web.syr.edu/ jmwobus/comfaqs/dhcp.faq.html)
   
   ļΪλ˵ DHCP ŷˡسʽ(daemon)û˼س
   ʽ ڹվϻҪõ˼سʽԱԶŷȡ·
   ѶϵͳԱ ʹŷ˼سʽԱɢ·Ѷû
   ȡãԣֻǸһ ʹߣ㽫Ҫû˼سʽ
   
3. 趨û

3.1 û˼سʽ

    2.0.x 
   
   ʹһ Linux ķа汾㶼û˼سʽ
   Ҫص ʽ׼Ϊ dhcpcd Ŀǰİ汾 0.70 [5]˴ 
   ׼˵
   (ftp://sunsite.unc.edu/pub/Linux/system/network/daemons/dhcpcd-0.70.ls
   m)
   
    2.1.x 
   
   춺 2.1.x е ipv4 ·ʽ׼޸Ĺ磬λ趨
   Ԥֵ dhcpcd ޷Ȼ󲿷ֵʹ߲
   ʵĺĳʽ Ӧò⡣͵ʹ dhcpcd 1.3.6
    Sergei Viznyuk sergei@phystech.com Ϊ޸ĵİ汾
   ¼ط ȡã
   
     * [6]ftp://phystech.dyn.ml.org/pub/
     * [7]http://www.cps.msu.edu/~dunham/out/dhcpcd-1.3.6.tar.gz
       
3.2 װ Slackware 

   Դκ sunsite ľվ̨¼طµ DHCPcd ׼
   
     * [8]ftp://ftp.cdrom.com/pub/linux/sunsite/system/network/daemons/
     * [9]ftp://sunsite.unc.edu/pub/Linux/system/network/daemons
     * [10]ftp://ftp.kobe-u.ac.jp/pub/PC-UNIX/Linux/network/dhcp (վ̨λ
       ձ)
       
    dhcpcd.tar.gz °汾
   
     *  dhcpcd.tar.gz ⿪
       tar -zxvf dhcpcd-0.70.tar.gz
     * л׼⿪Ŀ¼ dhcpcd ʽ
       cd dhcpcd-0.70
       make
     * װ׼ ( root ִµ)
       make install
       
   Ὠ /etc/dhcpc Ŀ¼DHCPcd ׼ڸô DHCP 
   Ѷ ҽ dhcpcd ʽƵ /usr/sbin Ŀ¼
   
   Ϊܹڿʱϵͳ趨ֵڼ䣬ʹ DHCP Ĺܣµ趨
   
   cd /etc/rc.d
   
   mv rc.inet1 rc.inet1.OLD
   
   Ὣɵ·ֵ趨ʽת rc.inet1.OLD뽨
   µ rc.inet1 ʽĳʽҪݣ
     _________________________________________________________________
   
#!/bin/sh
#
# rc.inet1       shell ʽڿʱ INET ϵͳĻ趨

HOSTNAME=`cat /etc/HOSTNAME` #Ҫһ
                             #

#  loopback װá
/sbin/ifconfig lo 127.0.0.1
/sbin/route add -net 127.0.0.0 netmask 255.0.0.0 lo

# ̫·ʹ趨 eth0 档ֻ loopback  SLIP

# Ҫʹ

/usr/sbin/dhcpcd
     _________________________________________________________________
   
   浵Ὣĵ¿
   
   ϵĶᣬ [11]Ĳ
   
3.3 װ RedHat 5.0 ϵİ汾

   DHCPcd 趨 RedHat 5.0 ϵİ汾סҪ飬
    ̨(Control Panel)
   
   control-panel
   
   Ȼѡá·趨(Network Configuration) interface ѡȡ
   ethernet 棨ͨeth0 DHCP ΪýͨѶЭĲӦ
   ñֿհס
   
   ϵĶᣬ [12]Ĳ
   
3.4 RedHat 4.x  Caldera OpenLinux 1.1 趨

   DHCPcd ڱ׼ RedHat 汾 RPM İװʽеģ
    CD-ROM ϵ RPMS Ŀ¼ҵַأ
   
   [13]ftp://ftp.redhat.com/pub/redhat/redhat-4.2/i386/RedHat/RPMS/dhcpcd
   -0.6-2.i386.rpm 
   [14]ftp://linux.sinica.edu.tw/pub1/redhat/redhat-4.2/i386/RedHat/RPMS/
   dhcpcd-0.6-2.i386.rpm
   
   Ұװ
   
   rpm -i dhcpcd-0.6-2.i386.rpm
   
   ߣ Slackware ǽķһԼİ汾
   
   л nothing nothing@cc.gatech.edu ṩµѶ
     _________________________________________________________________
   
ҰѾ̬ ip λַƣӵ /etc/resolv.conf Ƴǣ
search  nameserver 趨УΪĳЩԭҵ dhcpcd  /etc/dhcpc/reso
lv.conf
ұʹþ̬ /etc/resolv.conf

 /etc/sysconfig/network Ƴ HOSTNAME  GATEWAY 趨Сǣ
趨(NETWORKINGDOMAINNAMEGATEWAYDEV)

 /etc/sysconfig/network-scripts/ifcfg-eth0 Ƴ IPADDRNETMASK
NETWORK BROADCAST 趨Сǣұ DEVICE  ONBOOT 趨У
BOOTPROTO 趨Уĳ BOOTPROTO=dhcp

浵¿
     _________________________________________________________________
   
   ϵĶᣬ [15]Ĳ
   
3.5 Debian 1.3.1 趨

   Եַȡ deb 汾 DHCPcd װʽ
   
   [16]ftp://ftp.debian.org/debian/stable/binary/net/
   
   Բ Slackware İװ˵ װʽ⿪װ
   
   
   dpkg -i /where/ever/your/debian/packages/are/dhcpd*deb
   
   㼸κε DHCPcd 趨Ϊ
   
   From: Heiko Schlittermann (heiko@os.inf.tu-dresden.de)
   
    dhcpcd װʽͬ debian װʽһὫ尲
   װ /etc/init.d/<package_name> ֮ϣ˴Ϊ /etc/init.d/dhcpcd֮
    ᵽ /etc/rc?.d/ Ŀ¼С
   
    /etc/rc?.d/ Ŀ¼ŵĸ൵ǿʱִе塣
   
   ڰװ᲻¿Ӧÿʹ˹سʽ(daemon)
   ķʽ
   
   /etc/init.d/dhcpcd start
   
   ϵĶᣬ [17]Ĳ
   
3.6 LinuxPPC  MkLinux 趨

    R. Shapiro ׫дġ
   
    LinuxPPC  MkLinux ӦÿִУ Yoichi Hariguchi չ
   汾 0.65  0.7  dhcpcd ʽǣע¼Ҫ㣺
   
   * ҪҪ͸ԭʼʽִеĵע⣬ppc
   linux ϵ Ὣ 'char' ٶΪ 'unsigned char'ǣHariguchi 
   ԭʼʽȷ 'char' ٶΪ 'signed char'ԣҪ͸ԭʼʽ
   ִе༭ Makefile CFLAGS а "-fsigned-char" ѡ
   
   
   * Ŀǰ linuxppc [ν linux-pmac] ƽ̨ȶİ汾 2.1.24
   ҪĻ ɵַȡã [18]2.1 
   (http://www.cro.net/ vuksan/dhcppatch) mklinux ƽ̨е DR2.1
    DR3.0 汾õ 2.0 ĺ (2.0.33) ԣʹ
   룬ǣʹװҲûʲ˺ע linuxppc 
   װƬ dhcpcd ʽ rpm װ 2.1 룬 
    linuxppc ƽ̨޷ǣ mklinux ƽִ̨С
   
   * ʹ linuxppc ƽ̨ 2.1 ʱ dhcpcd ʽ֮ᣬῴ
   һ ̵·ѶϢԺ
   
   * Hariguchi  dhcpcd ʽỨһЩʱ䣬Լ 30 룬
   ŷ 趨·ɵĶʹõ linuxppc ƽ̨ 2.1 ʱ
   ľѶϢֻ ˵·Ѿ趨ɡʹõ mklinux㻹
   ʹ netstat -r ʾ· 趨
   
    Viznyuk չ dhcpcd ʽһ Viznyuk 
   dhcpcd v1.3.7ִее linuxppc ģ2.1.102103
   115 119 ִУѾɲԡӦÿ͸ԭʼʽ
   ִеǣҲ֪ʵ ϸڡȻ Hariguchi  dhcpcd ʽ
   ׶ˡ
   
   ֮ܶ
     _________________________________________________________________
   
2.1.24:   Hariguchi: ִУִеף; Viznyuk: 
2.1.102+: Hariguchi: ; Viznyuk: ִ (ִеҪɣ
     _________________________________________________________________
   
   һ dhcpcd װᣬִµĶ⣬㻹 [19]Ĳ
    ᵽ resolv.conf 趨
   
     *  /etc/sysconfig/network-scripts/ifcfg-eth0 ɾ
     * ˱ NETWORKING Ŀ⣬뽫 /etc/sysconfig/network 
        ƳҪʹù̶ĻƣҲ뱣 HOSTNAME 
       Ŀ
       
   Ҫȡÿ linuxppc 2.1 ִУԤȱ֮ dhcpcd 
   0.70  ʽŵ [20]reshapiro@mediaone.net ȡ
   
3.7 ǺŻ(Token Ring)·

   㳢 Token Ring ·ִ dhcpcd ʽ޷
    Henrik Stoerner (henrik_stoerner@olicom.dk) ṩҵĽ
   
    dhcpcd ֻʶ Ethernet̫·ֵ
   Token-Ring · ܾκε飬ұ˵治̫·
   
   
   ʹһ򵥵޸ dhcpcd ԭʼʽ롣Ѿ
    һСҳϣṩ RedHat  RPM װһԤȱõ
   Ԫ [21]http://eolicom.olicom.dk/~storner/dhcp/
   
   Ѿ͵ dhcpcd άϣˣϣδе
   dhcpcd 汾 á
   
3.8 ᣬµĶ

   Ļ¿֮ᣬӦ趨·Ľ档룺
   
   ifconfig
   
   Ӧûῴµ
     _________________________________________________________________
   
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
     _________________________________________________________________
   
    inet addr ֮ῴһЩ֣ʾѾ趨ˡ
   㿴  0.0.0.0 ҲҪֻ dhcpcd ȡ IP λַǰʱ
   趨ֵڼ ֮ᣬȻ 0.0.0.0 ο [22]ų
   DHCPcd һسʽ(daemon)ֻҪĻ
   ִ ״̬ÿСʱ DHCP ŷһΣԼ IP λַ
   ڡὫ еѶϢ¼ syslog У Slackware ϣΪ
   /var/adm/syslog RedHat/OpenLinux ϣΪ /var/log/syslog
   
   Ҫһ¡ָŷʽ裬
   Ҫ· Ӧ̣֪ŷ IP λַȻᣬٽλַ
   /etc/resolv.conf  ߣҲ DHCPcd  DHCP ŷȡ
   Ȼ /etc/dhcpc Ŀ¼²  resolv.confҾʹ DHCPcd 
    resolv.conf ݣ£
   
   ݾɵ /etc/resolv.conf 
   
   mv /etc/resolv.conf /etc/resolv.conf.OLD
   
   Ŀ¼ /etc/dhcpc ڣԼһ
   
   mkdir /etc/dhcpc
   
   Ȼ /etc/resolv.conf ᡱ /etc/dhcpc/resolv.conf
   
   ln -s /etc/dhcpc/resolv.conf /etc/resolv.conf
   
   ʽ޷볢ķ 
   nothing@cc.gatech.edu ģ޸ Henrik Stoerner ṩ
   
   
   һִ裬ֻΪҵ dhcpcd 
   /etc/dhcpc/resolv.conf  /etc/sysconfig/network-scripts/ifup 
   Уµ޸ģȻĵĲ ܺãѾԽˣ
     _________________________________________________________________
   
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
     _________________________________________________________________
   
   Ұ޸ĳɣ
     _________________________________________________________________
   
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
     _________________________________________________________________
   
   ע ! (bang)  if [ ! -f /var/run/dhcp-wait-${DEVICE}.pid ];
   
   󹦸ɣܳɹ :-).
   
3.9 ע

   µĲ費ǾԱҪǶĳЩ˶ԣܾɵó
   
   a) ֻżŻ·ߵʹеķʽ
   dhcpcdҪ裬ӵ root ݣ
   
   /usr/sbin/dhcpcd
   
   Ҫص·
   
   /usr/sbin/dhcpcd -k
   
3.10 ų

   㰴Ĳ裬ȴȻ޷ȡ·ܿΪ
   
   I. ·趨ȷ 
   
   ڿĹУ·ңӦûʾ漸
   
     _________________________________________________________________
   
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
     _________________________________________________________________
   
    Linux ϵͳѶϢʾ·޷
   ʶ ʹʹõһ̫·NE2000 ݣӦûõһ
   Ƭ DOS ߴƬ 趨·趨 IRQs ֵһֱ
   Linux Աʶ· IRQ ֵ趨ͨΪ 9,10,12
   
   II. ʹõ DHCP ŷ֧Ԯ RFC 1541 ׼
   
   ִ dhcpcd 
   
   dhcpcd -r
   
   ʹ ifconfig 鿴Ƿ·Ѿ趨ˣῴ
   Inet.addr=0.0.0.0 õȴ趨ʱ䣩
   
   Խ⣬ӦصĿм "-r" ѡ
     /sbin/dhcpcd ޸ĳ /sbin/dhcpcd -r 
   
   III. ڿڼѶϢ "Using DHCP for eth0 ... failed"ǣ
   ϵͳ ȴ
   
   ܿʹõ RedHat ϵͳң㲢δϸذ˵ :-)
    if  © ! (bang) š [23]˴ 
   
   
   IV. ҵ·֮ᣬûзӦˡ
   
    gatedբسʽ(gateway daemon)) رѶŪ
   Linux  ·ɣŻ⡣Ƿ gated ִ
   
   ps -auxww | grep gate
   
   ʹ RedHat  RPM ʽƳֶ
    /etc/rc.d/ Ƴ
   
   V. ڿʱԱʶҵ̫·ǣҵѶϢ¼УȻ
   "NO DHCPOFFER" ѶϢͬʱ״Ҳᷢҵ PCMCIA ̫·
   
   
   ȷ·ʹõ 10BaseT Ӳ绰ߵĲ)ü
   һ£ ʱ·趨ʹǸӲ
     _________________________________________________________________
   
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
     _________________________________________________________________
   
   ʹϥ͵Ե˱Թʹ PCMCIA ߣر ifport
   Ӳ Ϊ 10Base2 (ϸͬ·(thinnet)Ҳ⡣
   㲻趨 ·ؿȷʹõ 10BaseT 
   
   
   VI. ûŷӦ DHCP û˵Ĺ㲥Ҫ Peter Amstutz ṩ
   
   ĳЩϵͳϣĹ㲥Ҫбơ dhcpcd Ϊ
   ִ 'dhcpcd -h foohost'ʹ·ϵʻƣ
   Ϊơ
   
   VII. ѾеĲ趨ǣҵĻȻ޷ߡ
   
   ݻ(cable modem)ͨס·̫·λַԣ
   Ҫ ĵԻ·ĳ̵ַ cable
   modem ϵµĵ/· ͨȹص cable modem Կ
   ʹ cable modemԵ绰 ֧Ԯ֪ԷĵѾ
   ·
   
   ķǽipfwadm Ĺ򣩲 67/68 DHCP ʹɢ
   Ѷ ϸķǽ
   
   VIII. ʹõ MediaOne Express ṩķ񣬵ǣȻ޷ߡ
   
   ԭ MediaOne  DHCP и˲ӦóֵѶϢһţ
   ѲǸ ⣬޷ʹãԳⷽ顣㣨
   ʹõ Windows NT ʱʹá¼(Event Viewer)
   㽫ῴµľʾѶϢ
   
   DHCP յһδ֪ĳΪ 005  067 ѡԭʼѡʾ
   
   0000: 62 61 73 69 63 basic
   
   ⣬뵽 [24]ftp://vanbuer.ddns.org/pub/  
   Ԫȡԭʼ롣
   
4. DHCP ŷ趨

4.1 UNIX ϵ DHCP ŷ

   ڸ UNIX ݵҵϵͳϣҵѵ DHCP ŷʽá
   У ŷʽ Paul Vixie/ISC  DHCPdĿǰµ
   汾 1.0 ʹã 2.0  beta ԵĽ׶ΡԵ
   ַȡ
   
   [25]ftp://ftp.isc.org/isc/dhcp/
   
   ֮ᣬ뽫⿪Ȼ⿪Ŀ¼룺
   
   ./configure
   
   Ҫðװǰ趨ҪỨʱ䡣룺
   
   make
   
   Լ
   
   make install
   
4.2 ·̬趨

   ɰװ֮ᣬ ifconfig -a㽫µѶϢ
     _________________________________________________________________
   
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
     _________________________________________________________________
   
   δʾ MULTICAST ѶϢӦ趨ĺģԡַ
   (multicast) ֧Ԯ춴ϵͳԣ㼸
   
   ¸ǣ 255.255.255.255 ·ɡµ˵ DHCPd ʽ
   ҵ (README)
   
   Ϊ dhcpd ܹȷط޵ DHCP ûˣ磬Windows 95
   dhcpd ܹͷ 255.255.255.255  IP λַϡҵǣLinux
   Ὣ 255.255.255.255 Ϊ·Ĺ㲥λַ˴Ϊ 192.5.5.223
   Υ DHCP ͨѶЭȻ DHCP û˲Ӱ죬Щ磬
   Microsoft DHCP ûˣȴᡣд ûˣῴŷ
    DHCPOFFER ѶϢ
   
   룺
   
   route add -host 255.255.255.255 dev eth0
   
   㿴µѶϢ
   
   "255.255.255.255: Unknown host"
   
   ӦýѶ뵽 /etc/hosts У
   
   255.255.255.255 all-ones
   
   Ȼᣬ룺
   
   route add -host all-ones dev eth0
   
   
   
   route add -net 255.255.255.0 dev eth0
   
   eth0 ӦĿǰʹ·װơǣʵȷ
   ޸ġ
   
4.3 DHCPd ѡ

   ڣ趨 DHCPdΪˣ༭ /etc/dhcpd.conf
   
   ͨҪǣָ IP λַΪˣ밴ķʽ趨
     _________________________________________________________________
   
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;
}
     _________________________________________________________________
   
   趨ĽΪDHCP ŷṩûˣʹáΧ
   192.168.1.10-192.168.1.100  192.168.1.150-192.168.1.200  IP λַ
   ûûرԼ IP λַ ʱ䣬ͳʱԤΪ 600 룬
   ҪȻͳʱΪ 7200 롣ͬʱ ŷҲᡰ֪ͨû
   Ҫʹ 255.255.255.0 Ϊ·֣192.168.1.255 Ϊ㲥λַ
   192.168.1.254 Ϊ·/բ 192.168.1.2 Ϊ DNS ŷ
   
   Ҳû˵̫·λַָض IP λַûˣ
     _________________________________________________________________
   
host haagen {
   hardware ethernet 08:00:2b:4c:59:23;
   fixed-address 192.168.1.222;
}
     _________________________________________________________________
   
   趨ָ IP λַ 192.168.1.222 ̫·λַΪ
   08:00:2b:4c:59:23  ûˡ
   
   · IP λַָԲɻ˫ƣƩ磬ĳЩӵС
   ̬ IP λַ磬ŷûȡá̬IP λַ
   磬ʹϥ ͵ԣʹߣѡƩ磬˵ wins 
   λַʱŷ ȵȣҪһ˽Ļ
   dhcpd.conf ˵ļ
   
4.4 ŷ

   ڣ DHCP ŷˡֻҪ루ӵ趨
   У
   
   /usr/sbin/dhcpd
   
   ҪȷǷһӦȿģʽŷŵ
   Ļǰ (foreground)ִСΪˣ
   
   /usr/sbin/dhcpd -d -f
   
   Ȼᣬκһû˻쿴ŷˡ̨(console)ө
   Ļ ῴһЩѶϢʾ

References

   1. ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO
   2. http://sunsite.unc.edu/LDP/
   3. mailto:linux-howto@sunsite.unc.edu
   4. http://web.syr.edu/~jmwobus/comfaqs/dhcp.faq.html
   5. ftp://sunsite.unc.edu/pub/Linux/system/network/daemons/dhcpcd-0.70.lsm
   6. ftp://phystech.dyn.ml.org/pub/
   7. http://www.cps.msu.edu/~dunham/out/dhcpcd-1.3.6.tar.gz
   8. ftp://ftp.cdrom.com/pub/linux/sunsite/system/network/daemons/
   9. ftp://sunsite.unc.edu/pub/Linux/system/network/daemons
  10. ftp://ftp.kobe-u.ac.jp/pub/PC-UNIX/Linux/network/dhcp
  11. file://localhost/tmp/bg5sgmltools.15485/DHCP.txt.html#nameserver
  12. file://localhost/tmp/bg5sgmltools.15485/DHCP.txt.html#nameserver
  13. ftp://ftp.redhat.com/pub/redhat/redhat-4.2/i386/RedHat/RPMS/dhcpcd-0.6-2.i386.rpm
  14. ftp://linux.sinica.edu.tw/pub1/redhat/redhat-4.2/i386/RedHat/RPMS/dhcpcd-0.6-2.i386.rpm
  15. file://localhost/tmp/bg5sgmltools.15485/DHCP.txt.html#nameserver
  16. ftp://ftp.debian.org/debian/stable/binary/net/
  17. file://localhost/tmp/bg5sgmltools.15485/DHCP.txt.html#nameserver
  18. http://www.cro.net/~vuksan/dhcppatch
  19. file://localhost/tmp/bg5sgmltools.15485/DHCP.txt.html#nameserver
  20. mailto:reshapiro@mediaone.net
  21. http://eolicom.olicom.dk/~storner/dhcp/
  22. file://localhost/tmp/bg5sgmltools.15485/DHCP.txt.html#troubleshooting
  23. file://localhost/tmp/bg5sgmltools.15485/DHCP.txt.html#error3
  24. ftp://vanbuer.ddns.org/pub/
  25. ftp://ftp.isc.org/isc/dhcp/
