我的博客:http://wqmsl.blog.51cto.com
制作人:wqmsl
目标:1、常规DHCP服务器搭建(很简单的,借助模板立刻可以实现)
2、多作用域的配置(需要多个网卡来实现)
3、超级作用域的配置(只需要一个网卡即可实现)
4、DHCP代理服务器的搭建
一、IP说明:
192.168.0.2——主机名:dhcp.wqmsl.com DHCP服务器
192.168.0.3——主机名:client.wqmsl.com Client客户端
二、前期准备
更改主机名称(更改三处):1、hostname更改,2、hosts更改,3、/etc/sysconfig/network
三、所需软件包如下
检测dhcp包齐全就可以开始搭建了
开始搭建
1、安装所需包
我们可以使用yum以及rpm两种安装的方法安装组件
这里我使用yum安装,关于yum的配置方法请参照《YUM本地光盘源及VSFTPD的配置》
[root@dhcp ~]# yum install dhcp*
2、编辑主配置文档
以上是dhcp的主配置文档,默认是没有任何东东的,早末行模式下执行下面的命令就可以把/usr/share/doc/dhcp-3.0.5/dhcpd.conf.Sample的内容读取到本文档,它是一个dhcp的配置模板,有了模板我们就省事多了,读取后如下:
DHCP配置文件比较简单,就这么一个,下来我们把参数一个一个来解释一下
1、ddns-update-style 类型 定义所支持的DNS动态更新类型(必选),一般我们设置成关闭,interim和none 都是关闭的意思,
2、subnet 网络号 netmask 子网掩码 这是用来表明作用域的
3、option routers 网关
4、option subnet-mask 子网掩码
5、option nis-domain NIS,如果没有注释掉即可
6、option domain-name 域名
7、option domain-name-servers DNS服务器IP
8、range dynamic-bootp IP地址的范围
9、default-lease-time 21600; 地址租约时间
10、max-lease-time 43200; 租约最大时间
11、host ns {
next-server marvin.redhat.com;
hardware ethernet 12:34:56:78:AB:CD;
fixed-address 207.175.42.254;
} 这个是特殊声明,用来做地址和MAC绑定的,hardware ethernet为硬件类型为以太网然后写上MAC地址,fixed-address即是要绑定到上面那个MAC的IP地址。
下面是我配置好的一个文档:
我要实现的效果是,IP:192.168.0.30-192.168.0.100分给客户端使用,IP:192.168.0.88绑定给经理使用,IP:192.168.0.2——192.168.0.29给服务器保留使用。而且:现在的工作环境下的计算机剧增,本C类网段的IP地址已经不能够满足现在的需求了,所有我配置超级作用域来实现给分配不同网段的IP地址。
注意:每行参数写完之后一定要有“;”来结束,否则就是配置错误,无法启动服务的,具体的格式是
shared-network 超级作用域的名称 {
全局的参数,对所有的作用域都生效,可以写
DNS地址,租约的时间等信息,每行写完以“;”结束
(第一个作用域):subnet 网络号 netmask 子网掩码 {
作用域的参数设置,看个人情况进行设置即可,每行写完以“;”结束
}
(第二个作用域):subnet 网络号 netmask 子网掩码 {
作用域的参数设置,看个人情况进行设置即可,每行写完以“;”结束
}
}
写法格式就是这样了,写法比较灵活,自己慢慢琢磨哦!
重启服务
(1)DHCP服务启动
services dhcpd start
/etc/rc.d/init.d/dhcpd start
(2)DHCP服务停止
services dhcpd stop
/etc/rc.d/init.d/dhcpd stop
(3)DHCP服务重启
services dhcpd restart
/etc/rc.d/init.d/dhcpd restart
(4)DHCP服务重启
services dhcpd reload
/etc/rc.d/init.d/dhcpd reload
这样我们就对外提供了DHCP的服务,我们去看一下日志,如果你的DHCP服务启动失败了的话可以去看看日志,会告诉你哪里编辑错了,也许你会找自己错在哪里!
从以上日志可以看出DHCP已经启动,如下,网卡已经在监听了:
再看下面的图,说明正在监听的端口(DHCP使用67 68号端口)
下来我们在客户端进行测试:
当客户端在启动的时候,动态查看DHCP服务器的日志信息
从日志里面可以很清楚的看见客户端请求IP时候的过程,下面看一下我的客户端获取的IP地址,在服务器上的查看
这里可以看到DHCP已经正常运行并可以进行分配IP地址
下面我们开始测试MAC地址绑定,我修改一下DHCP主配置文件上的192.168.1.0的作用域的MAC地址为现在客户端的MAC地址,然后重新获取一下,最后效果应该是获取到的IP为:192.168.1.88,如下是客户端获取到IP地址的情况:
服务器端的租约数据库文件内容如下:
说明两个作用域都生效并且MAC地址绑定成功,说明我们实验成功。
一下是一些注意点和一些说明:
1、 DHCP术语
DHCP服务器:配置DHCP服务的计算机
DHCP客户端:启用DHCP设置的计算机
作用域:一个完整连续的可用IP地址范围,DHCP服务主要就是通过作用域来管理网络分布、IP地址分配及其他相关配置参数。
超级作用域:管理级的作用域集合,用于支持同一物理网络上的多个逻辑IP子网。超级作用域包含子作用域的列表,对子作用域进行统一管理。
排除范围:排除范围是作用域内从DHCP服务中排除的有限IP地址序列。排除范围确保在这些范围中的任何地址都不是由网络上的服务器提供给DHCP 客户机的。
地址池:在定义DHCP作用域并应用排除范围之后,剩余的地址在作用域内形成可用地址池,也就是作用域中包含的可用IP地址范围哈,地址池中的地址可以由DHCP服务器动态分配给DHCP客户机。
租约:客户计算机可以使用动态分配的IP地址的时间,这个时间可以由DHCP服务器设定哈。当向一台客户机发出租约后,此租约就被看作是活动的,在租约终止前,客户机可以向DHCP服务器更新其租约。当租约到期或被服务器删除后,它就变成不活动的了,租约持续时间决定了租约什么时候终止及客户机隔多久向DHCP服务器更新其租约。
预约:创建从DHCP服务器到客户机的永久地址租约指定,预约可以保证子网上的特定硬件设备总是使用相同的IP地址,这对于远程访问网关、DNS服务器等必须要配置IP地址的计算机非常有用。
选项类型:DHCP服务器向DHCP客户机提供租约服务时可以指定的其他客户机配置参数。典型地这些选项类型由各个作用域启用和配置。虽然大多数选项都是在RFC2132中预定义了,但若需要的话,我们还是可以使用DHCP管理器定义并添加自定义选项类型。
选项类别:DHCP服务用于进一步提供给客户机的选项类型的方法。选项类别可以在用户的DHCP服务器上配置以提供特定的客户机支持。当一个选项类别添加到服务器后,就可以为该类别的客户机配置提供特定类别的选项类型。
2、 DHCP工作原理
我们来了解下DHCP的工作原理哈~~
(1)当DHCP客户机第一次登录网络时,如果客户机上没有任何IP信息设定,它会向网络发出DHCP DISCVER数据包,为保证服务器能够接收到请求,数据包源地址设定为0.0.0.0,而目的地址为255.255.255.255,以广播形式发送DHCP DISCOVER的信息。
(2)当DHCP服务器监听到客户端发出的DHCP DISCOVER广播后,它会从那些还没有租出的地址范围内选择可用的IP及其他TCP/IP设定以DHCP OFFER数据包的形式发送给客户机。
(3)如果客户端收到网络上多台DHCP服务器的响应,客户端会挑选最快的一个DHCP OFFER并向网络发送一个DHCP REQUEST广播封包,告诉所有DHCP服务器它将使用哪一台服务器提供的IP地址。同时,客户端还会向网络发送ARP广播数据包,查询网络上面有没有其他机器使用该IP地址,如果发现该IP地址已经被占用,客户端则会发送一个DHCP DECLINE数据包给DHCP服务器,拒绝接受其DHCP OFFER,并重新发送DHCP REQUEST信息。
注:实际上并不是所有DHCP客户端都会无条件接受DHCP服务器的响应,客户端可以保留自己的一些TCP/IP设定,比如网关、DNS地址
(4)将地址分配给客户端后,DHCP服务器会发送一个DHCP ACK消息,以确认IP租约的正式生效,结束完整的DHCP工作过程。
(5)DHCP客户端成功地从服务器取得IP地址之后,一般不需要再发送DHCP DISCOVER信息了,除非其租约已经到期或者IP地址重新设定回0.0.0.0。此时客户端会直接使用已经租用到的IP地址向为其发此IP地址的DHCP服务器发出DHCP REQUEST信息,DHCP服务器会尽量让客户端使用原来的IP地址,如果没有特殊的情况,会直接响应DHCP ACK,允许客户端继续使用该IP地址。如果该地址已经失效或者已经被其他主机使用了,服务器则会响应一个DHCP NACK数据包给客户端,要求其重新执行DHCP DISCOVER。
注意:客户端执行DHCP DISCOVER后,如果没有DHCP服务器响应客户端的请求,客户端会随机使用169.254.0.0/16网段中的一个IP地址配置本机地址。
我的博客:http://wqmsl.blog.51cto.com/
欢迎大家一起和我学习进步
QQ:459176770
转载于:https://blog.51cto.com/wqmsl/360989