一、了解DHCP服务

 1、DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)

2、由Internet工作任务小组设计开发

3、专门用于为TCP/IP网络中的计算机自动分配TCP/IP参数的协议

4、使用DHCP的好处

  • 减少管理员的工作量
  • 避免输入错误的可能
  • 避免IP地址冲突
  • 当更改IP地址段时,不需要重新配置每个用户的IP地址
  • 提高了IP地址的利用率
  • 方便客户端的配置

5、DHCP的分配方式

  • 自动分配:分配到一个IP地址后永久使用
  • 手动分配:由DHCP服务器管理员专门指定IP地址
  • 动分配:使用完后释放该IP,供其他客户机使用

二、DHCP的租约过程

1、客户机从DHCP服务器获得IP地址的过程称为DHCP的租约过程

2、分为四个步骤

Linux中的DHCP原理与配置_服务器

 

2.1 客户机请求IP地址

  • 当一个DHCP客户机启动时,客户机还没有IP地址,所以客户机要通过DHCP获取一个合法的地址
  • 此时DHCP客户机以广播方式发生DHCP Discover发现信息来寻找DHCP服务器

  Linux中的DHCP原理与配置_服务器_02

 

 2.2 服务器响应

  • DHCP服务器接收到来自客户机请求IP地址的信息时,在自己的IP地址池中查找是否有合法的IP地址提供给客户机
  • 如果有,DHCP服务器将此IP地址做上标记,加入到DHCP Offer的消息中,然后广播一则DHCP Offer

  Linux中的DHCP原理与配置_centos_03

 

2.3 客户机选择IP地址

  • DHCP客户机从接收到的第一个DHCP Offer消息中提取IP地址,发出IP地址的DHCP服务器将该地址保留,这样该地址就不能再分配给另一个DHCP客户机

  Linux中的DHCP原理与配置_dns服务器_04

 

2.4 服务器确定租约

  • DHCP服务器接收到DHCP Request消息后,以DHCP ACK消息的形式向客户机广播成功确认,该消息包含有IP地址的有效租约和其他可配置的信息
  • 当客户机收到DHCP ACK消息时,配置IP地址,完成TCP/IP的初始化

  Linux中的DHCP原理与配置_centos_05

 

2.5 重新登录

  • DHCP客户机每次重新登录网络时不需要再发送DHCP Discover信息,而是直接发送发送包含前一次所分配的IP地址的DHCP Request请求信息

  Linux中的DHCP原理与配置_ip地址_06

 

三、使用DHCP动态配置主机地址

1、DHCP服务

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

2、可分配的地址信息主要包括

  • 网卡的IP地址、子网掩码
  • 对应的网络地址、广播地址
  • 默认网关地址
  • DNS服务器地址

四、安装DHCP服务器

1、DHCP服务器软件

  • CentOS光盘中的dhcp-4.2.5-47.el7.centos.x86_64.rpm

2、DHCP软件包的主要文件

  • 主配置文件:/etc/dhcpd.conf
  • 执行程序:/usr/sbin/dhcpd、/usr/sbin/dhcrelay

3、配置DHCP服务器

Linux中的DHCP原理与配置_服务器_07
yum install -y dhcp
cd /etc/dhcp/
ls
less dhcpd.conf

cd /usr/ share/doc/dhcp-4.2.5/
ls
less dhcp.conf.example

cp /usr/ share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
Linux中的DHCP原理与配置_服务器_07

  vim /etc/dhcp/dhcpd.conf

Linux中的DHCP原理与配置_服务器_07
default-lease-time 21600;       //默认租约为6小时,单位为秒
max-lease-time 43200;          //最大租约为12小时,单位为秒
potion domain-name "benet.com";                   //指定默认域名
option domain-name-servers 202.106.0.20,202.106.148.1;       //指定DNS服务器地址
ddns-update-style none;                     //禁用DNS动态更新
//subnet网段声明(作用于整个子网段,部分配置参数优先级高于全局配置参数)
subnet 192.168.80.0 netmask 255.255.255.0 {    //声明要分配的网段地址
range 192.168.80.10 192.168.80.20;            //设置地址池
 option routers 192.168.80.254;               //指定默认网关地址
}
subnet 192.168.1.0 netmask 255.255.255.0 {
 range 192. 168.1.100 192.168.1.200;
 option routers 192.168.1.254;
}
subnet 192.168.2.0 netmask 255.255.255.0 {
 range 192.168.2.20 192.168.2.30;
 option routers 192. 68.2.254;
}
//host主机声明(给单机分配固定的IP地址)
host hostname{                              //指定需要分配固定IP地址的客户机名称
 hardware ethernet 00:c0:c3:22:46:81;        //指定该主机的MAC地址
 fixed-address 192. 168.4.100;               //指定保留给该主机的IP地址
}
//后面内容可都删除
systemctl start dhcpd
systemctl stop firewalld 
setenforce 0
Linux中的DHCP原理与配置_服务器_07

4、Linux客户端使用DHCP动态获取IP

4.1 方法一

vi /etc/ sysconfig/network-scripts/i fcfg-ens33
DEVICE=ens33
ONBOOT=yes
BOOTPROTO=dhcp
ifdown ens33 ; ifup ens33

4.2 方法二

dhclient -d ens33

5、查看租约文件

less / var/lib/ dhcpd/ dhcpd. lease

五、DHCP网络分配实验

  • PC1、PC2和PC3可以自动获取ip地址,DHCP服务器为Linux主机
  • 给VMware内的win10主机配置DHCP固定分配ip为:192.168.80.188

Linux中的DHCP原理与配置_centos_11

 

 

Linux中的DHCP原理与配置_centos_12

 

 在虚拟网络编辑器和网络适配器中将虚拟机和虚拟机网关为仅主机模式

Linux中的DHCP原理与配置_服务器_13

 

 Linux中的DHCP原理与配置_linux_14

 

 Linux中的DHCP原理与配置_服务器_15

 

 Linux中的DHCP原理与配置_ip地址_16

 

 Linux中的DHCP原理与配置_服务器_17

 

 Linux中的DHCP原理与配置_dns服务器_18

 

 Linux中的DHCP原理与配置_centos_19

 

 Linux中的DHCP原理与配置_centos_20

 

关闭防火墙

 Linux中的DHCP原理与配置_centos_21

 

 Linux中的DHCP原理与配置_linux_22

 

 Linux中的DHCP原理与配置_ip地址_23

 

 Linux中的DHCP原理与配置_linux_24