DHCP服务


1、DHCP服务的简介
DHCP (Dynamic Host Configuration Protocol,动态主机配置协议) 是一个局域网的网络协议,使用UDP协议工作,给内部网络或网络服务供应商自动分配IP地址,给用户或者内部网络管理员作为对所有计算机作中央管理的目的。

  • DHCP 概念和原理

dhcp 服务作用:

为大量客户机自动分配地址,提供集中管理
减轻管理和维护成本,提高网络配置效率

DHCP 可分配的地址信息主要包括:

网卡的IP地址、子网掩码
对应的网络地址
默认网关地址
DNS服务器地址
引导文件、TFTP服务器地址

DHCP 原理:地址租约四部曲

rhel7和centos7命令有区别吗_dhcp


DHCP工作流程 :======================================

(1)客户机寻找服务器:客户端网卡设置为dhcp 获取。 BOOTPROTO=dhcp,广播发送 discover 包,地址是??,寻找dhcp服务器,进行地址请求。
(2)服务器响应请求:单播 发送offer包,对客户机做出响应。提供客户端网络相关的租约以供选择,其中服务器在收到客户端的请求后。
会针对客户端的mac地址与本身的设置进行以下工作:

a) 到服务器的登录文件中寻找该用户之前曾经使用过的 ip,若有且该 ip 目前没有人使用,则为客户机提供此ip
    b) 若配置文件中有针对该 mac 提供额外的固定 ip,且该 ip 没有被使用,则提供此 ip 给客户机
    c) 如果没有符合以上两个条件,则随机从地址池中挑选有一个IP,给客户机,并记录到 leases 文件中

(3)客户机发送ip请求:广播 request包,选择一个服务器提供的 IP地址 。
此外,客户机会发送一个广播封包给局域网内的所有主机,告知自己已经接受服务器的租约。

(4)服务器确认租约:单播 确认包,服务器与客户机确认租约关系并记录到 彼此 的 租约leases文件 中 。
一个局域网/广播域 内最好只有一个dhcp服务器,当一个局域网内存在多个服务器时,客户机只选择最先到达的 offer。

DHCP客户机续租:======================================

rhel7和centos7命令有区别吗_DHCP_02


DHCP客户机会在租期过去50%的时候,直接向为其提供IP地址的DHCP服务器发送DHCPREQUEST消息包。如果客户机接收到该服务器回应的DHCPPACK消息包,客户机就根据包中所提供的新的租期以及其他已经更新的TCP/IP参数更新自己的配置,IP租用更新完成。如果没有收到该服务器的回复,则客户机继续使用现有的ip地址,因为当前租期还有50%。

如果在租期过去50%的时候没有更新,则DHCP客户机在租期过去87.5%的时候再次向为其提供IP地址的DHCP服务器联系,如果还不成功,到租约的100%的时候,DHCP客户机必须放弃这个IP地址,重新申请。如果此时无DHCP服务器可用,DHCP客户机会使用169.254.0.0/16中随机的一个地址,并且每隔5分钟再进行尝试。

  • DHCP 配置文件

安装DHCP软件包

yum install dhcp*    ##安装 dhcp 软件包
cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example   /etc/dhcp/dhcpd.conf    #拷贝示例文件覆盖原来的空文件

修改主配置文件

[root@deng-120 ~]# vim /etc/dhcp/dhcpd.conf
  subnet 10.10.1.0 netmask 255.255.255.0 {   ##网段和掩码
  range 10.10.1.100 10.10.1.128;             ##地址范围
  option domain-name-servers 202.96.128.166; ## dns
  option domain-name "rosen.com";            ##该网段的域名,可以省略
  option routers 10.10.1.1;                  ##网关
  option broadcast-address 10.10.1.255;      ##广播地址 
  default-lease-time 300;                    ## 租约时间
  max-lease-time 7200;                       ## 最大租约时间
  host serverftp {                           ## 备注名称,可以自行定义
       hardware ethernet 12:34:56:78:AB:CD;  ## mac 地址绑定
       fixed-address 207.175.42.254;         ## 地址绑定
       };
}

如果需要设置两个网段,必须拥有三张网卡,另外一张网卡配置所需的网段地址,上述配置文件信息可复制多一段,编辑地址等信息就好。

启动 httpd 服务

[root@deng-120 ~]# systemctl start httpd

通过客户机进行测试,把网卡里面的 static 换成 dhcp,重启网卡就可以通过自动获取到地址。