FreeBSD下DHCP服务器详细配置(图)

来源:岁月联盟 编辑:zhu 时间:2008-01-19
FreeBSD下DHCP服务器详细配置(图)内容简介:【FreeBSD教程】关于FreeBSD系统的安装,我们已在前面的文章有所介绍。本文主要介绍基于FreeBSD系统的DHCP服务的配置及使用。 一、 简要熟悉DHCP DHCP是Dynamic Host Configuration Protocol(动态主机配置


【FreeBSD教程】关于FreeBSD系统的安装,我们已在前面的文章有所介绍。本文主要介绍基于FreeBSD系统的DHCP服务的配置及使用。

一、 简要熟悉DHCP

DHCP是Dynamic Host Configuration Protocol(动态主机配置协议)的简称。它主要用于对多个客户计算机集中分配IP地址以及IP地址相关的信息,常用在网络中对众多DOS/Windows计算机的治理方面,节省了网络治理员手工设置和分配地址的麻烦。

任何事物有利也有弊,DHCP同样存在缺点。例如一台DHCP客户计算机没有一个固定的IP地址,而对于提供网络服务的服务器来讲,经常变化的IP地址并不适合。并且当前的DNS协议并不能和DHCP协作,为DHCP客户直接提供主机名解析任务。

二、 配置过程

在FreeBSD的Packages Collection中,有两个不同的DHCP客户机和服务器软件,一个为ISC-DHCP,另一个为WIDE-DHCP,两个软件都包括了DHCP客户软件和服务器软件,其中ISC-DHCP 更为常用一些,以下就以ISC-DHCP为例介绍在FreeBSD上安装和设置DHCP。

同时,要使FreeBSD系统支持DHCP,还得确认系统内核是否支持伪设备bpfilter,它是一个答应应用程序接收网络的原始数据包的界面,这样应用程序就能接收目的地址非本机IP地址的数据包了。

那么DHCP为什么要bpfilter支持呢?因为在DHCP设置好计算机的TCP/IP之前,由于计算机本身没有定义IP地址,而TCP/IP堆栈本身不会接收不具备本机IP地址的数据包。要接收DHCP服务器发送回客户的数据包,就需要绕过TCP/IP堆栈,而必须使用伪设备bpfilter。

第一步:定制bpfilter内核。

第二步:保证/dev/目录下具有对应bpfilter的设备文件。

第三步:从Packages Collecion包中将DHCP所需文件dhcpd、dhclient、和dhcprelay 安装到/usr/local/sbin目录下。

第四步:按下图设置其配置文件/etc/dhcpd.conf。


解释:
 “server-identifier 192.168.3.1”为本机服务器IP地址。一般不必设置这个参数,dhcpd能自动侦测。

 “Subnet”字段项设定了一个子网段。即可供DHCP服务器分配的I P地址范围为192.168.3.10到192.168.3.20,这个地址范围也可以不是连续的,不连续的地址可以使用多个range设置参数来设置。此外,还设置了这一组内分配的IP地址的租期限制default-lease-time 和max-lease-time,使用其缺省值600和7200即可。后面的option参数设置是DHCP的附加功能,例如本例中设置DHCP客户的子网掩码为255.255.255.0、广播地址为192.168.3.1、DNS服务器地址为192.168.3.1、域名为exampleorg.org.cn。

 “host a1” 字段项针对某个特定主机a1进行的设置。这个主机被绑定为所使用网卡的MAC地址的计算机,将给其分配一个固定地址。这种分配方式实际等价于固定地址分配方式,唯一的好处就是能够对IP地址进行集中治理,不必每个计算机分别设置了。这里同样也可以使用option参数,设置上一字段所述的子网掩码等参数。

第五步:当配置了dhcpd.conf文件后,就能启动dhcpd守护进程了。由于计算机会有多个网络界面,故需要指定dhcpd 服务器的网络界面,以便回应相应界面上的DHCP请求。

第六步:此后,dhcpd正常运行的时候,会将每一次客户请求及其回应的IP地址分配的记录,都记录在/var/run/dhcpd.leases 文件中。为了使dhcpd能正常进行日志记录,还应该在启动dhcpd之前使用touch 命令,生成一个新的日志文件。以便日后查看这个日志文件的内容,得到当前DHCP服务器的状态和客户机IP地址分配的情况。日志文件示例:

后记:

经过以上配置后,就能设置网络中的客户机使用FreeBSD系统的DHCP协议来获取合法的IP地址了。通常Windows计算机的TCP/IP设置中能直接设置支持DHCP协议,而假如客户机系统为Linux等(包括FreeBSD)时,就需要dhclient的支持,本文就不一一详述了。有爱好的朋友请参阅客户机为Linux等系统的DHCP配置的相关资料进行。

图片内容