1.DHCP定义
DHCP(dynamic host configuration protocol)就是动态主机分配协议,它用于给某个网络段上的主机进行动态分配IP地址和相关网络环境的配置工作。DHCP基于客户/服务器模式。当DHCP客户端启动时,它会自动与DHCP服务器通信,由DHCP服务器为DHCP客户端提供自动分配IP地址的服务。安装了DHCP服务软件的服务器称为DHCP服务器,而启用了DHCP功能的客户机称为DHCP客户端。
工作原理:
向DHCP服务器索取IP地址的过程
(1)DHCPDISCOVER(DHCP发现)客户端上线发送,广播包
(2)DHCPOFFER(DHCP提供) 服务器返回携带
(3)DHCPREQUEST(DHCP请求)
(4)DHCPACK(DHCP确认)
A.手工manual 在服务器上配置ip地址和mac地址一对一的地址池,当客户端上线时向服务器发出请求,服务器给它配置一个固定的IP地址
B.自动 automatic 在服务器上配置一个网段的地址池(起始地址,结束地址),当客户端上线时向服务器发出请求,服务器给给它分配一个IP地址,并把客户端MAC地址和IP地址的映射存储,下次请求时为其分配同样的IP地址
C动态dynamic 在服务器上配置一个网段的地址池(起始地址,结束地址),当客户端上线时向服务器发出请求,服务器给给它分配一个带有租期的IP地址。
更新IP地址租约
① 当DHCP客户端的IP地址使用时间达到租期的一半时,它就会向DHCP服务器发送一个新的DHCPREQUEST。若服务器在接收到该信息后并没有可拒绝该请求的理由,就会送一个DHCPACK信息。当DHCP客户端收到该应答信息后,就重新开始一个租用周期。
② 当进行IP地址的续租过程中出现以下两种特例中的任意一种时,需要另外处理。
DHCP客户端重新启动时
IP地址的租期超过一半但续约失败时
2. DHCP安装
Red Hat Enterprise Linux安装程序默认没有安装DHCP服务,使用下面的命令可以检查系统是否已经安装了DHCP服务或查看已经安装了何种版本。
rpm -q dhcp
如果系统还没有安装DHCP服务。如果现在需要安装,可将Red Hat Enterprise Linux 5的第3张安装盘放入光驱,加载光驱后在光盘的Server目录下找到DHCP服务的RPM
安装包文件dhcp-3.0.5-3.el5.i386.rpm,然后使用下面的命令安装DHCP服务。
rpm -ivh /mnt/Server/dhcp-3.0.5-3.el5.i386.rpm
3.DHCP的配置
DHCP配置文件dhcpd.conf的格式如下:
选项/参数 # 这些选项/参数全局有效
声明{
选项/参数 # 这些选项/参数局部有效
}
dhcpd.conf文件中常用的声明及功能
声明 |
功能 |
shared-network 名称 {…} |
定义超级作用域 |
subnet 网络号 netmask 子网掩码 {…} |
定义作用域(或IP子网) |
range 起始IP地址 终止IP地址 |
定义作用域(或IP子网)范围 |
host 主机名 {…} |
定义保留地址 |
group {…} |
定义一组参数 |
dhcpd.conf文件中常用的参数及功能
参数 功能 ddns-update-style 类型 定义所支持的DNS动态更新类型(必选) allow/ignore client-updates 允许/忽略客户机更新DNS记录 default-lease-time 数字 指定默认的租约期限 max-lease-time 数字 指定最大租约期限 hardware 硬件类型 MAC地址 指定网卡接口类型和MAC地址 server-name 主机名 通知DHCP客户机服务器的主机名 fixed-address IP地址 分配给客户端一个固定的IP地址
dhcpd.conf文件中常用的选项及功能
选项 |
功能 |
subnet-mask 子网掩码 |
为客户端指定子网掩码 |
domain-name “域名“ |
为客户端指定DNS域名 |
domain-name-servers IP地址 |
为客户端指定DNS服务器的IP地址 |
host-name “主机名” |
为客户端指定主机名 |
routers IP地址 |
为客户端指定默认网关 |
broadcast-address 广播地址 |
为客户端指定广播地址 |
netbios-name-servers IP地址 |
为客户端指定WINS服务器的IP地址 |
netbios-node-type 节点类型 |
为客户端指定节点类型 |
ntp-server IP地址 |
为客户端指定网络时间服务器的IP地址 |
nis-servers IP地址 |
为客户端指定NIS域服务器的地址 |
nis-domain “名称” |
为客户端指定所属的NIS域的名称 |
time-offset 偏移差 |
为客户端指定与格林尼治时间的偏移差 |