xiadao_81发布于 2010-1-20 | 1468次阅读   字号:   (网友评论 3 ) 我要评论 

 

 

理论我就不再说了.网上大把"DHCP概述及dhcpd.conf详解"的课程,其中有DHCP的原理、功能还有dhcpd.conf的参数详解等。

 

下面是我的实验过程:

 

环境:vmware6.0+Centos5.4(一张DVD

 

1.挂载光驱安装。

默认CentOS5.4安装后没有安装DHCP服务端。用rpm -qa|grep dhcp 只能看见dhcpv6_client-0.10-33.e15

#mount /dev/cdrom /media //光驱的挂载

进入此/media/CentOS_5.4_Final/CentOS目录

# ls dhcp*

dhcp-3.0.5-21.el5.i386.rpm dhcpv6-1.0.10-17.el5.i386.rpm

dhcp-devel-3.0.5-21.el5.i386.rpm dhcpv6-client-1.0.10-17.el5.i386.rpm

我是把这四个包拷到系统中安装的。

#rpm -ivh dhcp*

 

2.检验安装

# rpm -qa|grep dhcp

dhcp-3.0.5-21.el5

dhcp-devel-3.0.5-21.el5

dhcpv6-client-1.0.10-17.el5

 

3.拷贝样板文件

安装完成后会生成/usr/share/doc/dhcp-3.0.5/dhcpd.conf.sample文件,把它CP/etc下并改名成dhcpd.conf(事实上/etc下已有了dhcpd.conf文件,是空的,打开会提示叫你查看样板文件)CP时会提示你覆盖已有文件!覆盖就是!

 

4.准备工作,服务器需要静态IP.我们看一下:

#vi /etc/sysconfig/network-scripts/ifcfg-eth0

2 DEVICE=eth0

3 BOOTPROTO=static

4 HWADDR=00:0C:29:22:08:99

5 ONBOOT=yes

6 NETMASK=255.255.255.0

7 IPADDR=192.168.2.220

8 GATEWAY=192.168.2.1

如果有改动请重启动网卡服务!

 

5.修改dhcp服务器的配置文件

#vi /etc/dhcpd.conf

注意更改以下几行:

4 subnet 192.168.2.0 netmask 255.255.255.0 {

本行默认是”subnet 192.168.1.0 netmask 255.255.255.0 这里注意,这个subnet一定要包括server的本地IP的在内.否则服务启动不了.

6 # --- default gateway

7 option routers 192.168.2.1;

8 option subnet-mask 255.255.255.0;

9

10 option nis-domain "domain.org";

11 option domain-name "domain.org";

12 option domain-name-servers 192.168.2.220;

这里注意网关和服务器IP要正确。我们设定网关为2.1DHCP服务器IP2.220

21 range dynamic-bootp 192.168.2.230 192.168.2.240;

22 default-lease-time 21600;

23 max-lease-time 43200;

这里是设置DHCP分发范围:定义地址池,租约时间和mac地址绑定。

 

Host ns{}”中的是mac地址绑定,比如像服务器一般是不会改动IP,所以可以将某个IP与该服务器的MAC地址绑定,这样的话服务器就一直是用这个IP.

 

6.启动dhcp服务器

#service dhcpd restart //重启DHCP服务器

#iptables -F //清掉防火墙规则

 

7.windows客户机上检验dhcp服务

设置自动获取IP地址,注意,如果网内还有其它DHCP服务器,请一定要先关闭。用到的命令:

c:\>ipconfig /all

c:\>ipconfig /release

c:\>ipconfig /renew

 

Ethernet adapter 本地连接:

Connection-specific DNS Suffix . : domain.org

Description . . . . . . . . . . . : Realtek RTL8139/810x Family Fast Eth

ernet NIC

Physical Address. . . . . . . . . : 00-24-1D-36-9D-28

Dhcp Enabled. . . . . . . . . . . : Yes

Autoconfiguration Enabled . . . . : Yes

IP Address. . . . . . . . . . . . : 192.168.2.240

Subnet Mask . . . . . . . . . . . : 255.255.255.0

IP Address. . . . . . . . . . . . : fe80::224:1dff:fe36:9d28%4

Default Gateway . . . . . . . . . : 192.168.2.1

DHCP Server . . . . . . . . . . . : 192.168.2.220

怎么样,是不是获取到了,注意:客户端在获取IP是从大到小,所以第一个获取的192.168.2.240

 

8.linuxdhcp的客户端时,我就不做了,配置如下:

#netconfig

"空格"键选中dhcp方式,退出;

#ifdown eth0 (关闭eth0网卡)

#dhclient eth0 (获取dhcp的客户端地址)

#ifup eth0 (激活eth0网卡)

9.linux同时做两个网段的dhcp服务器:

<1>必须加两块物理网卡,配置两个不同网段IP:

Eth0:192.168.10.1 eth1:192.168.20.1

<2>修改dhcp服务器的配置文件:

#vim /etc/dhcpd.conf

subnet 192.168.10.1 netmask 255.255.255.0 {

option routers 192.168.10.1;

option subnet-mask 255.255.255.0;

option nis-domain "domain.org";

option domain-name "domain.org";

option domain-name-servers 192.168.10.1;

range dynamic-bootp 192.168.10.10 192.168.10.20;

}

subnet 192.168.20.1 netmask 255.255.255.0 {

option routers 192.168.20.1;

option subnet-mask 255.255.255.0;

option nis-domain "domain.org";

option domain-name "domain.org";

option domain-name-servers 192.168.20.1;

range dynamic-bootp 192.168.20.10 192.168.20.20;

}

10.查看日志,看看是否有错

[root@server RPMS]# tail -20 /var/log/messages

11.DHCP客户租期数据库

DHCP服务器上,/var/lib/dhcp/dhcpd.leases文件中存放着DHCP客户租期数据库。只要DHCP服务器能够成功启动,该数据库就可以自动创建。并且,所有通过该DHCP服务器分配到地址的客户机的地址信息都会存储于该文件中。该租期数据库文件经常被重建,但是不应该手工修改。

另外如果主机上安装了两个网卡,但是只想让DHCP服务在其中的一个网卡上监听,则需要配置DHCP服务器只在那个设备上启动。在/etc/sysconfig/dhcpd中,把网卡接口的名称添加到DHCPDARGS列表中,如:

DHCPDARGS=eth0