一、安装DHCP服务
dhcp-3.0.5-6.el5.i386.rpm
这是DHCP主程序包,包括dhcp服务和中继代理程序,安装该软件包进行相应配置,即可为客户机动态分配ip地址及其他tcp/ip信息。
dhcp-devel-3.0.5-7.el5.i386.rpm
这是dhcp服务器开发工具软件包,为dhcp开发提供库文件支持。
dhcpv6-0.10-33.el5.i386.rpm
这是dhcp的ipv6扩展工具,是dhcp能支持ipv6的最新功能,如ipv6地址的动态配置以及ipv6中继代理等。
dhcpv6_client-0.10-33.el5.i386.rpm
这是dhcp客户端ipv6软件包,帮助客户端获取动态ip地址。
二、dhcp的安装
用此命令rpm -qa | grep dhcp来查看是否安装了dhcp包
三、dhcp常规服务器配置
基本dhcp服务器搭建流程:
(1)编辑主配置文件dhcpd.conf,指定ip作用域(指定一个或多个ip地址范围)。
(2)建立租约数据库文件。
(3)重新加载配置文件或重新启动dhcpd服务使配置生效。
四、主配置文件dhcpd.conf
1)dhcpd.conf主配置文件组成部分
parameters(参数)
declarations(声明)
option(选项)
2)dhcpd.conf主配置文件整体框架:全局配置和局部配置。
全局配置可以包含参数或选项,该部分对整个dhcp服务器生效。
局部配置通常由声明部分来表示,该部分对局部生效,比如只对某个ip作用域生效。
当dhcp主程序包安装好后会自动生成主配置文件的范本文件:/usr/share/doc/dhcp-3.0.5/dhcpd.conf.sample
注意当一行内容结束时,以“;”结束。
3)常用参数介绍:
(1)ddns-update-style(none|interim|ad-hoc)
作用:定义所支持的dns动态更新类型。
none:表示不支持动态更新
interim:表示dns互动更新模式
ad-hoc:表示特殊dns更新模式
注意:这个选项是必选参数,配置文件中必须包含这一个参数且要放在第一行。
(2)ignore client-updates
作用:忽略客户端更新
注意:这个参数只能在服务器端使用。
(3)default-lease-time number(数字)
作用:定义默认ip租约时间
(4)max-lease-time number(数字)
作用:定义客户端ip租约时间的最大值
注意:(3)、(4)都是以秒为单位,该参数可用于全局也可用于局部。
4)常用声明介绍
声明一般用来指定ip作用域、定义为客户端分配的ip地址池等
(1)subnet 网络号 netmask 子网掩码 {.......}
作用:定义作用域,指定子网。如图:
linux dhcp_linux

注意:网络号必须与dhcp服务器的网络号相同
(2)range 起始ip地址 结束ip地址
作用:指定动态ip地址范围
注意:可以再subnet声明中指定多个range,但多个range所定义ip范围不能重复。
5)常用选项介绍:
(1)option routers ip地址
作用:为客户端指定默认网关
(2)option subnet-mask 子网掩码
作用:设置客户端的子网掩码
(3)option domain-name-servers ip地址
作用:为客户端指定dns服务器地址
注意(1)、(2)、(3)选项可以用于在全局配置中,也可以使局部。
6)租约数据库文件
租约数据库文件用于保存一系列的租约声明,其中包含客户端的主机名、mac地址、分配到的ip地址,以及ip地址的有效期等相关信息。这个数据库文件是可编辑的ASCII格式文本文件。每当发生租约变化的时候,都会在文件结尾添加新的租约记录。
dhcp刚装好后租约数据库文件dhcpd.leases是个空文件。
当dhcp服务正常运行后就可以使用cat命令查看租约数据库文件的内容了。
五、应用案例I
技术部有60太计算机,ip地址段为192.168.0.1-192.168.0.254,子网掩码是255.255.255.0,网关为192.168.0.1,192.168.0.2-192.168.0.30网段地址给服务器配置,客户端可以使用的地址段为192.168.0.100-200,其余剩下的ip地址为保留地址。
定制全局配置和局部配置,局部配置需要把192.168.0.0/24网段声明出来,然后在该声明中指定一个ip地址池,范围为:192.168.0.100-192.168.0.200,分配给客户端使用,最后重新启动dhcpd服务让配置生效。如图:
linux dhcp_休闲_02

重启dhcpd服务
测试
查看租约数据库文件:cat /var/lib/dhcpd/dhcpd.leases 如图:
linux dhcp_职场_03

六、ip地址绑定
通过mac地址与ip地址的对应关系为制定的物理地址计算机分配固定ip地址。
(1)host 主机名 {......}
作用:用于定义保留地址
注意:该项通常搭配subnet声明使用
(2)hardware 类型 硬件地址
作用:定义网络接口类型和硬件地址。
(3)fixed-address ip地址
作用:定义dhcp客户端制定的ip地址。
注意:(2)、(3)项只能应用于hosts声明中。
七、应用案例II
技术部有200台计算机,采用192.168.8.0/24网段给技术部技术使用,路由器ip地址为192.168.8.1,dns服务器ip地址为192.168.8.2,dhcp服务器为192.168.8.3,客户端地址范围为192.168.8.30-192.168。8.。254,子网掩码为255.255.255.0,技术总监CIO使用的固定ip地址为192.168.8.88,部门经理使用的固定的ip地址为:192.168.8.66。
(1)编辑主配置文件dhcpd.conf 如图:
linux dhcp_linux_04

(2)重新启动
(3)测试验证
八、dhcp高级服务器配置
1、dhcp规划
(1)小型网络dhcp服务器 如图:
linux dhcp_职场_05


1)dhcp服务器硬件设备选择
2)计算机ip获取方式规划
(2)大型网络dhcp服务器 如图:
linux dhcp_休闲_06

1)dhcp服务器的配置
2)dhcp服务器作用域的设置(注意地址租约,因为有的部门总出差,租约不能设置过长)
(3)跨路由网路dhcp服务器 如图:
linux dhcp_休闲_07

在此我们搭建一台dhcp服务器,同时在连接多个子网的路由器上设置dhcp中继代理就可以利用路由器转发dhcp消息,所有计算机通过dhcp服务器获取tcp/ip信息。
配置时需注意两点:
1)存在dhcp服务器
一个屋里网络被划分为多个逻辑子网,在所有子网中必须存在一台dhcp服务器能够提供tcp/ip信息分配服务。
2)路由器中继代理设置
路由器默认并不转发广播数据包,为了能够传送DHCP DISCOVER 消息,必须要在路由器上配置dhcp中继代理。
(4)80/20规则
我们选择两台dhcp服务器,采用80/20规则划分dhcp服务器的作用域,一台dhcp服务器作为主的,管理80%的ip地址,另一台dhcp服务器作为辅助的,包含剩余20%的地址。日常工作中,由主dhcp服务器提供,当主服务器down掉后,辅助的开始起作用,此规则适用于多子网的网络拓扑结构。
2、dhcp多作用域设置
需求分析:公司ip地址规划为:192.168.2.0/24网段,可以容纳254台设备,使用dhcp服务器建立一个192.168.2.0网段的作用域,动态管理网路ip地址,但网络规模扩大到500台机器,显然一个C类网段的地址无法满足要求了。这时,可以再为dhcp服务器添加一个新作用域,管理分配192.168.3.0/24网段的ip地址,为网络增加254个新的ip地址。
项目实施:
(1)简单实现dhcp多作用域
注意:划分子网时,如果选择直接配置多作用域实现动态ip分配的任务,则必须要为dhcp服务器添加多块网卡,并配置多个ip地址,否则dhcp服务器只能分配与其现有网卡ip地址对应网段的作用域。
采用双网卡实现两个作用域 如图:
linux dhcp_linux_08

1)网卡配置ip地址
ifconfig eth0 192.168.2.1 netmask 255.255.255.0
ifconfig eth1 192.168.3.1 netmask 255.255.255.0
2)编辑dhcpd.conf主配置文件 如图:
linux dhcp_休闲_09

linux dhcp_职场_10

linux dhcp_职场_11

3)测试验证
重启dhcp服务后检查系统日志,检测配置是否成功,使用tail命令动态显示日志信息。
tail -F /etc/log/messages 如图:
linux dhcp_休闲_12

(2)dhcp超级作用域功能及实现
对于多作用域设置,使用多网卡的方式,虽然可以达到扩展可用的ip地址范围的目的,但会增加网络拓扑的复杂性,并加大维护的难度。而如果想保持现有网络的结构,并实现网络扩容,可以选择采用超级作用域。使用超级作用域组合为单个管理实体,进行统一的管理操作。
关于超级作用域的设置,在dhcpd.conf配置文件中有固定格式
shared-network 超级作用域名称 {
          [参数]
          subnet 子网编号 netmask 子网掩码 {
          [参数]
          [声明]
}
}
需求分析:企业内部建立dhcp服务器,网络规划采用单作用域的结构,使用192.168.0.0/24网段的ip地址。随着公司规模的扩大,设备数量增多,现有的ip地址无法满足网络的需求,需要添加可用的ip地址。这时我们使用超级作用域完成增加ip地址的目的,在dhcp服务器上添加新的作用域,使用192.168.8.0/24网段扩展网络地址的范围。如图:
linux dhcp_休闲_13

修改dhcpd.conf配置文件,建立超级作用域并添加新作用域。如图:
linux dhcp_休闲_14


检测配置文件:dhcpd 如图:
linux dhcp_linux_15

重启dhcpd服务
使用cat命令查看系统日志
dhcp服务器启用超级作用域后,将会在其网络接口上根据超级作用域的设置,侦听并发送多个子网的信息。使用单块网卡就可以完成多个作用域的ip地址管理工作。想比多网卡实现多作用域的设置,能够不改变当前网络拓扑结构,轻松完成ip地址的扩容。
注意:dhcp服务器启用超级作用域能够方便的为网络中的客户机提供分配ip地址的服务,但是超级作用域可能由多个作用域组成,那么分配给客户机的ip地址也可以并不在同一个网段,这个时候,这些客户机相互访问和访问外网就成了问题,我们可以对网关配置多个ip地址,并在每个作用域中设置对应的网关ip地址,就可以使用客户机通过网关与其他不在同一网段的计算机进行通信。
3、dhcp中继代理
在ISC dhcp 软件中提供的中继代理程序为 dhcrelay,通过简单的配置就可以完成dhcp的中继设置,启动dhcrelay的方式为将dhcp请求中继到指定的dhcp服务器。
dhcrelay命令格式:
开启所有网络接口的dhcp中继功能,转发到指定dhcp服务器
dhcrelay dhcp服务器地址
开启指定网络接口的dhcp中继功能
dhcrelay -i 网卡 dhcp服务器地址
需求分析:公司内部存在两个子网,分别为192.168.2.0/24,192.168.3.0/24,现在需要使用一台dhcp服务器为这两个子网客户机分配ip地址。 如图:
linux dhcp_休闲_16

(1)配置dhcp服务器
配置dhcp服务器ip地址 如图:
linux dhcp_职场_17

dhcp服务器位于LAN1,需要为LAN1和LAN2的客户机分配ip地址,也就是声明那两个网段,这里可以建立两个作用域,声明192.168.2.0/24和192.168.3.0/24网段。如图:
linux dhcp_休闲_18

(2)配置dhcp中继代理
1)配置网卡的ip地址
根据网络拓扑设置dhcp服务器网卡ip地址 如图:
linux dhcp_职场_19

2)启用中继代理
在dhcp中继代理计算机上安装dhcp-3.0.5-7.el5.i386.rpm软件包。如图:
linux dhcp_职场_20

中继代理计算机默认不转发dhcp客户机的请求,需要使用dhcrelay指定dhcp服务器的位置 如图:
linux dhcp_休闲_21

(3)客户端测试验证:
在LAN2中选择客户机测试能否正常获取dhcp服务器的ip地址
dhcp服务器的日志信息 如图:
linux dhcp_休闲_22

LAN2中guest客户端获取ip地址 如图:linux dhcp_职场_23

LAN1客户端获取ip地址时dhcp服务器端日志信息 如图:
linux dhcp_职场_24

LAN1中客户端获取ip地址 如图:
linux dhcp_职场_25


注意:当有多台dhcp服务器时,把dhcp服务器放在不同子网上能够取得一定的容错能力,而不是把所有dhcp服务器都放在同一子网上。这些服务器在它们的作用域中不应有公共的ip地址。
九、客户端的配置:
重新申请ip地址:ipconfig /renew 注意前提是设置成自动获取ip 如图:
linux dhcp_linux_26


linux dhcp_职场_27

十、dhcp服务配置排错
1、dhcpd 如图:
linux dhcp_linux_28

2、租约文件
一定要确保租约文件存在,否则无法启动dhcpd服务
3、ping
4、MULTICAST
如果网络正常,dhcp服务器配置正确,但是还是无法获得ip地址的话,很可能是因为dhcp服务器网卡没有开启MULTICAST(多点传送)功能。
创建一个到地址255.255.255.255的路由,加这条路由命令道/etc/rc.d/rc.local使得每次启动后自动运行。如图:
linux dhcp_linux_29

如果提示:"255.255.255.255:Unkown host",那么我们需要修改/etc/hosts文件,并添加一条主机记录。
255.255.255.255后面为主机名,主机名没有特别约束。如图:
linux dhcp_职场_30

注意:可以编辑/etc/rc.d/rc.local文件,添加route add -host 255.255.255.255 dev eth0条目是多点传送功能长久生效。如图:
linux dhcp_职场_31

5、查看系统日志
/var/log/messages