服务器维护FreeBSD下DHCP服务器详细配置
发布时间:2019-02-13
       本文主要介绍基于FreeBSD系统的DHCP服务的配置及使用。
       一、简要认识DHCP
       DHCP是DynamicHostConfigurationProtocol(动态主机配置协议)的简称。它主要用于对多个客户计算机集中分配IP地址以及IP地址相关的信息,常用在网络中对众多DOS/Windows计算机的管理方面,节省了网络管理员手工设置和分配地址的麻烦。
       任何事物有利也有弊,DHCP同样存在缺点。例如一台DHCP客户计算机没有一个固定的IP地址,而对于提供网络服务的服务器来讲,经常变化的IP地址并不适合。并且当前的DNS协议并不能和DHCP协作,为DHCP客户直接提供主机名解析任务。
       二、配置过程
       在FreeBSD的PackagesCollection中,有两个不同的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的设备文件。
       第三步:从PackagesCollecion包中将DHCP所需文件dhcpd、dhclient、和dhcprelay安装到/usr/local/sbin目录下。
       第四步:按下图设置其配置文件/etc/dhcpd.conf。
       解释:
     “server-identifier192.168.3.1”为本机服务器IP地址。一般不必设置这个参数,dhcpd能自动侦测。
     “Subnet”字段项设定了一个子网段。即可供DHCP服务器分配的IP地址范围为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。
     “hosta1”字段项针对某个特定主机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配置的相关资料进行。
联系我们,马上获得服务支持

400-000-6930

服务器维护贵宾专线

北京 上海 天津 重庆 河北 山东 辽宁 黑龙江 吉林 甘肃 青海 河南 江苏 湖北 湖南 江西 浙江 广东 云南 福建 海南 山西 四川 陕西 贵州 安徽 广西 内蒙古 西藏 新疆 宁夏 澳门 香港 台湾