Linux架设DHCP服务器

原创:行动者

本来在研究DNS服务器架设的,最近一直看DNS的书,头都大了,想换个来玩玩,就选DHCP了,原以为应该要花个一天才能搞定的,结果只看了一下理论,一下子就搞定可,真是太简单了。原来还想找本专门研究DHCP的书来看看,深入下去看看的,结果都找不到,汗,DHCP真是是这么简单么?

1、OS系统版本
[root@server ~]# more /etc/redhat-release
Red Hat Enterprise Linux AS release 4 (Nahant Update 4)

2、查看系统是否已经安装DHCP服务端软件
[root@server ~]# rpm -qa | grep dhcp
dhcpv6_client-0.10-14_EL4

3、将光盘mount上去,然后安装DHCP服务端软件
[root@server ~]# mount /media/cdrom
mount: block device /dev/hdc is write-protected, mounting read-only
[root@server RPMS]# find /media/cdrom -name "dhcp*"
/media/cdrom/RedHat/RPMS/dhcpv6-0.10-14_EL4.i386.rpm
/media/cdrom/RedHat/RPMS/dhcpv6_client-0.10-14_EL4.i386.rpm
/media/cdrom/RedHat/RPMS/dhcp-3.0.1-58.EL4.i386.rpm
/media/cdrom/RedHat/RPMS/dhcp-devel-3.0.1-58.EL4.i386.rpm
[root@server RPMS]# rpm -ivh /media/cdrom/RedHat/RPMS/dhcp-3.0.1-58.EL4.i386.rpm
[root@server RPMS]# rpm -qa | grep dhcp
dhcp-3.0.1-58.EL4
dhcpv6_client-0.10-14_EL4

到这儿已经安装成功了,哈哈

4、查看一下,都有那些文件
[root@server RPMS]# rpm -ql grep dhcp
...
/etc/dhcpd.conf    ----------------------------dhcp配置文件
/etc/rc.d/init.d/dhcpd
/etc/rc.d/init.d/dhcrelay
/etc/sysconfig/dhcpd
/etc/sysconfig/dhcrelay
/usr/bin/omshell
/usr/sbin/dhcpd
/usr/sbin/dhcrelay
/usr/share/doc/dhcp-3.0.1
/usr/share/doc/dhcp-3.0.1/README
/usr/share/doc/dhcp-3.0.1/RELNOTES
/usr/share/doc/dhcp-3.0.1/dhcpd.conf.sample-----dhcp配置文件的模板
/usr/share/man/man1/omshell.1.gz
/usr/share/man/man5/dhcp-eval.5.gz
/usr/share/man/man5/dhcpd.conf.5.gz
/usr/share/man/man5/dhcpd.leases.5.gz
/usr/share/man/man8/dhcpd.8.gz
/usr/share/man/man8/dhcrelay.8.gz
/var/lib/dhcp
/var/lib/dhcp/dhcpd.leases   -----------------分配IP的那个日志文件

5、[root@server RPMS]# more /etc/dhcpd.conf
这儿有没有什么东东的,还是把模板文件COPY过来吧
[root@server RPMS]# cp /usr/share/doc/dhcp-3.0.1/dhcpd.conf.sample /etc/dhcpd.conf

6、查看配置文件,并根据自己的要求更改
[root@server RPMS]# more /etc/dhcpd.conf
ddns-update-style interim;
ignore client-updates;
subnet 192.168.0.0 netmask 255.255.255.0 {
# --- default gateway
        option routers                  192.168.0.1;
        option subnet-mask              255.255.255.0;
#       option nis-domain               "domain.org";
        option domain-name              "wiscom.com.cn";
        option domain-name-servers      219.141.136.10,211.147.6.3;
        option time-offset              -18000; # Eastern Standard Time
#       option ntp-servers              192.168.1.1;
#       option netbios-name-servers     192.168.1.1;
# --- Selects point-to-point node (default is hybrid). Don't change this unless
# -- you understand Netbios very well
#       option netbios-node-type 2;
        range dynamic-bootp 192.168.0.128 192.168.0.254;
        default-lease-time 21600;
        max-lease-time 43200;
        # we want the nameserver to appear at a fixed address
        host ns {
                next-server marvin.redhat.com;
                hardware ethernet 12:34:56:78:AB:CD;
                fixed-address 207.175.42.254;
        }
}

上面都已经很明了,该配置的都配置了

7、启动DHCP服务器啦
[root@server RPMS]# service dhcpd start
Starting dhcpd: [  OK  ]

8、查看日志,看看是否有错
[root@server RPMS]# tail -20 /var/log/messages
Dec  9 18:05:19 server dhcpd: Wrote 0 deleted host decls to leases file.
Dec  9 18:05:19 server dhcpd: Wrote 0 new dynamic host decls to leases file.
Dec  9 18:05:19 server dhcpd: Wrote 0 leases to leases file.
Dec  9 18:05:19 server dhcpd: Internet Systems Consortium DHCP Server V3.0.1
Dec  9 18:05:19 server dhcpd:
Dec  9 18:05:19 server dhcpd: Copyright 2004 Internet Systems Consortium.
Dec  9 18:05:19 server dhcpd: All rights reserved.
Dec  9 18:05:19 server dhcpd: For info, please visit http://www.isc.org/sw/dhcp/
Dec  9 18:05:19 server dhcpd: Wrote 0 deleted host decls to leases file.
Dec  9 18:05:19 server dhcpd: Wrote 0 new dynamic host decls to leases file.
Dec  9 18:05:19 server dhcpd: Listening on LPF/eth0/00:0c:29:c5:06:fc/192.168.0/24
Dec  9 18:05:19 server dhcpd: Wrote 0 leases to leases file.
Dec  9 18:05:19 server dhcpd: Listening on LPF/eth0/00:0c:29:c5:06:fc/192.168.0/24
Dec  9 18:05:19 server dhcpd: Sending on   LPF/eth0/00:0c:29:c5:06:fc/192.168.0/24
Dec  9 18:05:19 server dhcpd: Sending on   LPF/eth0/00:0c:29:c5:06:fc/192.168.0/24
Dec  9 18:05:19 server dhcpd:
Dec  9 18:05:19 server dhcpd: Sending on   Socket/fallback/fallback-net
Dec  9 18:05:19 server dhcpd: Sending on   Socket/fallback/fallback-net
Dec  9 18:05:19 server dhcpd:
Dec  9 18:05:20 server dhcpd: dhcpd startup succeeded

9、OK,都行了,看来在LINUX下面配置一个DHCP太简单了,只要原理懂得就OK了。