一.DHCP的基本概念
1.DHCP的定义
DHCP:(Dynamic Host Configuration Protocol )动态主机配置协议,是TCP/IP协议集所提供的一种实现自动分配IP配置信息的子协议,基于UDP协议实现。
2.DHCP的功能
① 动态分配(每一个IP地址都具有租约)
② 分配网关、WINS、DNS系统信息
③ 与DNS相结合实现动态更新
④ 保留IP地址给指定主机

3.DHCP的体系结构

DHCP服务器的基本配置与使用_DHCP服务器


DHCP服务器:运行DHCP服务软件包和DHCP协议的主机
DHCP客户机:运行DHCP协议可以发送DHCP请求的主机
4.分配IP地址过程
① CLIENT发送广播DHCPDISCOVER寻找DCHP服务器。
② 服务器发送广播DHCPOFFER响应CLIENT的请求。
③ CLIENT会检查得到的IP信息是否完整并且发送广播DHCPREQUEST通知DHCP服务器已获得IP地址。
④ SERVER发送广播DHCPACK确认客户机的请求,表示分配成功。
过程即:DHCP Discovery->DHCP Offer->DHCP Request->DHCP ACKnowledge
5.更新租约
①  每次DHCP客户端重新启动时, 都会自动利用广播的方式,给DHCP服务器发送DHCPREQUEST更新信息,要求继续租用原来的IP地址
② 50%时,CLIENT以点到点方式发送DHCPREQUEST请求服务器的更新租约。
③ 87.5%时,CLIENT发送广播DHCPREQUEST寻找其他DHCP服务器,如果更新成功的话,DHCP服务器向CLIENT发送DHCPACK;如果不成功的话则发送DHCPNACK。
二. DHCP服务的配置
1.安装DHCP的服务软件包
  dhcp-3.0.5-21.e15.i386.rpm
2.相关文件和目录:
主配置文件:/etc/dhcpd.conf
执行程序:/usr/sbin/dhcpd,/usr/sbin/dhcrelay
服务脚本:/etc/init.d/dhcpd,/etc/init.d/dhcrelay
执行参数配置:/etc/sysconfig/dhcpd
DHCP中继配置:/etc/sysconfig/dhcrelay

3.配置文件

vim /etc/dhcpd.conf

第一次打开主配置文件,可能没有配置信息,此时需要

DHCP服务器的基本配置与使用_DHCP_02

(1) 声明
 subnet  网络号  netmask  子网掩码  { ……..}
功能:定义子网 (定义作用域 )
注意:网络号必须与服务器的网络号相同,如果服务器有多块网卡时,必须为每一个网卡都建立一个相同网络号的子网,但是不用分配地址的子网可以不定义地址范围
(2) shared-network  名称 {………..}
功能:设置DHCP服务器多个IP子网共享同一个物理网络,即超级作用域
注意:通常用于包含多个subnet声明
(3) range 起始IP地址   终止IP地址;
功能:定义作用域范围

(4)mac地址绑定

DHCP服务器的基本配置与使用_DHCP服务器_03

hardware ethernet 需要绑定的mac地址

fixed-address 绑定的IP地址

三.案例实现

案例一:设置dhcpd.conf文件,达到以下要求:
(1) 不支持dns动态更新,且忽略客户机的更新
(2) 服务器的默认地址租约时间为3600秒,最大地址租约时间为7200秒
(3) 所有作用域的客户机后缀域名为abc.com,DNS服务器地址为192.168.0.254
(4) 所有作用域的客户机默认网关地址192.168.0.1
(5) 定义作用域192.168.0.0子网,地址掩码为255.255.255.0,地址范围为192.168.0.2-----192.168.0.150
(6) 保留192.168.0.0子网中的192.168.0.8给以太网卡物理地址为00:E0:4C:70:33:65的客户机DHCP服务:

1.安装DHCP服务:yum install dhcp -y

(或者 rpm -ivh dhcp-3.0.5-21.e15.i386.rpm)

 

2.修改主配置文件

vim   /etc/dhcpd.conf
ddns-update-style  none;
ignore  client-updates;
default-lease-time   3600;
max-lease-time   7200;
option routers 192.168.0.1;
option domain-name “abc.com”;
option domain-name-servers  192.168.0.254;
subnet  192.168.0.0  netmask  255.255.255.0 {
range  192.168.0.2  192.168.0.150;
host  c1 {
hardware   ethernet  00:E0:4C:70:33:65;
fixed-address  192.168.0.8;
}
}

3.启动服务:service dhcpd start

开机自启:chkconfig dhcpd on

4,.实验效果验证:

   对于linux客户端:

1)设置网卡采用dhcp启动协议,自动获取ip地址信息

                 vim   /etc/sysconfig/network-scripts/ifcfg-ethXX可以012……

         修改BOOTPROTO为:BOOTPROTO=dhcp

2)       获取IP地址

ifdown ethX ;

ifup ethX:

 

对于windows客户端:

(1) 右击网上邻居----属性------双击tcp/ip协议----选择“自动获动IP地址”

 (2开始->运行->cmd

     输入:ipconfig/release 释放IP地址

    ipconfig/renew     重新获取IP地址

案例二:DHCP实现中继代理

DHCP服务器的基本配置与使用_服务器_04

①对于dhcrelay主机,先安装yum install dhcp,需要两个网卡:eth0用来跟服务器主机相连,eth1用来跟客户端主机相连

开启路由功能:echo 1 > /proc/sys/net/ipv4/ip_forward
       selinux:       setenforce 0
vim /etc/syscofig/network-scripts/ifcfg-eth0
IPADDR=192.168.1.1
NETMASK=255.255.255.0

vim /etc/syscofig/network-scripts/ifcfg-eth1
IPADDR=192.168.2.1
NETMASK=255.255.255.0

vim /etc/sysconfig/dhcrelay
INTERFACES="eth0 eth1"
DHCPSERVERS="192.168.1.2"

service dhcrelay start
②对于服务器主机:subnet 192.168.1.0 netmask 255.255.255.0 {
   option  routers 192.168.1.1;
   option domain-name "fan.com";
   option  subnet-mask 255.255.255.0;
   range 192.168.1.10 192.168.1.200;
}
③service dhcpd start
添加网关:route add default gw dhcrelay 192.168.1.2

进行实验效果验证。