DHCP自动分配IP

一.了解DHCP服务

1.1 DHCP的由来

DHCP (Dynamic Host,Configuration Protocol,动态主机配置协议)由Internet工作小组设计开发专门用于为 TCP/IP网路中的计算机自动分配TCP/IP参数的协议
DHCP自动分配IP_第1张图片

1.2 DHCP服务的好处

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

1.3 为什么使用DHCP

DHCP 服务避免了因手动设置IP 地址所产生的错误,同时也避免了把一个IP地址分配给多台工作站所造成的地址冲突。DHCP提供了安全、可靠且简单的 TCP/IP 网络设置,降低了配置 IP地址的负担

1.4 DHCP的模式

典型的C/S模式
在网络中架设一台专用的 DHCP 服务器,负责集中分配各种网络地址参数( 主要包括IP地址、子网掩码、广播地址、默认网关地址、DNS服务器地址 );其他主机作为DHCP客户机,将网卡配置为自动获取地址,即可与 DHCP 服务器进行通信,完成自动配置过程
DHCP是C/S模式,DHCP 服务端和客户端需要保持通信,DHCP基于UDP协议,双方都有可能会主动向对方发起通信,因此双方都需要监听端口。
Server 端:DHCP Server(运行dhcp 服务)
UDP 服务:监听端口 67(bootps)
Client 端:DHCP Client(运行dhcp程序)
TDP 服务:监听端口68(bootpc)

1.5 DHCP的分配方式

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

二.DHCP的租约过程

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

2.1 分为四个步骤

DHCP自动分配IP_第2张图片

2.1.1客户端请求IP

客户机请求IP 地址当一个DHCP客户机启动时,客户机还没有IP地址,所以客户机要通过DHCP获取一个合法的地址。此时DHCP客户机以广播方式发送DHCP Discover发现信息来寻找 DHCP 服器
DHCP自动分配IP_第3张图片

2.1.2 服务器响应

服务器响应当HCP服务器接收到来自客户机请求P地址的信息时,它就在自己的P地址池中查是否有合法的TP地址提供给客户机。如果有,DHCP服务器就将此IP地址做上标记,加入到DHCPOffer的消息中,然后DHCP服务器广播一则 DHCP Offer 消息
DHCP自动分配IP_第4张图片

2.1.3客户机选择IP地址

客户机选择IP地址DHCP客户机从接收到的第一个DHCP Offer消息中提取IP地址,发出IP地址的DHCP
服务器将该地址保留,这样该地址就不能再分配给另一个DHCP客户机。之后DHCP客户机会向服务器发送DHCPRequest消息。
DHCP自动分配IP_第5张图片

2.1.4 服务器约定租期

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

DHCP自动分配IP_第6张图片

2. 2重新登录

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

DHCP自动分配IP_第7张图片

DHCP自动分配IP_第8张图片

2.3 更新租约

租期达到50%(T1)时,DHCP客户端会自动以单播的方式向DHCP服务器发送DHCP REQUEST报文,请求更新IP地址租期。如果收到DHCP服务器回应的DHCP
ACK报文,则租期更新成功(即租期从0开始计算);如果收到DHCPNAK报文,则重新发送DHCP DISCOVER报文请求新的IP地址。

当租期达到87.5%(T2)时,如果仍未收到DHCP服务器的应答,DHCP客户端会自动以广播的方式向DHCP服务器发送DHCP REQUEST报文,请求更新IP地址租期。如果收到DHCP服务器回应的DHCP
ACK报文,则租期更新成功(即租期从0开始计算);如果收到DHCPNAK报文,则重新发送DHCPDISCOVER报文请求新的IP地址。

三、DHCP服务器的配置

3.1 使用DHCP动态配置主机地址

3.1.1 DHCP服务

为大量客户机自动分配地址,提供集中管理

减轻管理和维护成本、提高网络配置效率

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

网卡的IP地址、子网掩码

对应的网络地址、广播地址

默认网关地址

DNS服务器地址

3.2 安装DHCP服务器

DHCP服务器软件

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

DHCP软件包的主要文件

主配置文件:/etc/dhcpd.conf

执行程序:/usr/sbin/dhcpd、/usr/sbin/dhcrelay

步骤
1、yum安装dhcp服务

rpm -qa dhcp ###检查是否有安装DHCP服务(没有就用yum安装)
yum install -y dhcp ###安装DHCP服务

DHCP自动分配IP_第9张图片

2、配置dhcp配置文件

rpm -qc dhcp ##查看配置文件
cd /etc/dhcp/

ls ###进入并查看DHCP安装的目录
rpm -qc dhcp ###查看配置文件有哪些
cat /etc/dhcp/dhcpd.conf ###服务刚安装好,配置文件是没有任何东西的,需要把模板拷贝过来
cp -fp /usr/share/doc/dhcp*/dhcpd.conf.example /etc/dhcp/dhcpd.conf ##拷贝模板起名为dhcpd.conf

vim /etc/dhcp/dhcpd.conf

DHCP自动分配IP_第10张图片
DHCP自动分配IP_第11张图片
在这里插入图片描述

DHCP自动分配IP_第12张图片

设置全局配置参数(dhcp.conf)可以就默认不变
default-lease-time 21600; #默认租约为 6 小时,单位为秒
max-lease-time 43200; #最大租约为 12 小时,单位为秒
option domain-name “example.org”; #指定默认域名
option domain-name-servers 202.106.0.20,202.106.148.1; #指定DNS服务器地址
#ddns-update-style none; #禁用DNS动态更新

3.3 DHCP局部配置并且测试

subnet 网段声明
一台 DHCP 服务器可以为多个网段提供服务,因此 subnet 网段声明必须有而且可以有多个。
注意别少了每行结尾的分号!(想要复制几行就 几yy 粘贴就 p)

  1. vi /etc/dhcp/dhcpd.conf #####进行编辑
    subnet 192.168.94.0 netmask 255.255.255.0 { //声明网段地址
    #default-lease-time 6000; //默认租约为6000秒,当和全局设置重复时,subnet里的配置生效
    range 192.168.94.150 192.168.94.180; //设置地址池
    #option broadcast-address 192.168.94.255; //定义广播地址
    option routers 192.168.94.21; //指定默认网关地址
    option domain-name-servers 114.114.114.114; //定义DNS服务器
    }

DHCP自动分配IP_第13张图片

  1. 保存更新配置文件,启动服务

DHCP自动分配IP_第14张图片

  1. Windows客户端的验证:

开启一台windows虚拟机,在本地网络连接中全部选择自动获取,即可自动获取到服务器端设置的ip地址等配置
ipconfig /release ###释放IP地址
ipconfig /renew ###重新获得IP地址

DHCP自动分配IP_第15张图片

  1. 在服务器端可以通过查看租约文件/var/lib/dhcpd/dhcpd.leases来了解服务器的 IP 地址分配情况

该租约文件中记录了分配出去的每个 IP 地址信息(租约记录), 包括 IP 地址、客户端的 MAC 地址、租用的起始时间和结束时间等

DHCP自动分配IP_第16张图片

3.4 客户机预留指定的固定ip地址

host 声明用于设置单个主机的网络属性,通常用于为网络打印机或个别服务器分配固定的 IP 地址(保留地址),这些主机的共同特点是要求每次获取的 IP 地址相同,以确保服务的稳定性。

host win10 {
hardware ethernet 00:0C:29:18:B8:3C; #hardware ethernet:mac地址
fixed-address 192.168.94.250; #保留地址
}
#host 后面可自定义名称

vim /etc/dhcp/dhcpd.conf 编辑文件

systemctl restart dhcpd 重启dhcpd服务

四、案例动态分配IP地址

4.1网络配置

4.1.1修改网卡

[root@localhost ~]#yum install dhcp -y
[root@localhost ~]#vim /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=“Ethernet”
PROXY_METHOD=“none”
BROWSER_ONLY=“no”
BOOTPROTO=“static”
DEFROUTE=“yes”
IPV4_FAILURE_FATAL=“no”
IPV6INIT=“yes”
IPV6_AUTOCONF=“yes”
IPV6_DEFROUTE=“yes”
IPV6_FAILURE_FATAL=“no”
IPV6_ADDR_GEN_MODE=“stable-privacy”
NAME=“ens33”
UUID=“0ba12236-1264-4a1c-8536-88dd89f47c19”
DEVICE=“ens33”
ONBOOT=“yes”
IPADDR=“192.168.100.100”
PREFIX=“24”
GATEWAY=“192.168.100.254”
IPV6_PRIVACY=“no”
在这里插入图片描述
DHCP自动分配IP_第17张图片

4.1.2在虚拟机设置里选择自定义虚拟网络VMnet1

DHCP自动分配IP_第18张图片

4.1.3在本机电脑网络里更改网络VMnet1的适配器

DHCP自动分配IP_第19张图片

4.1.4在虚拟机上查看重启网卡看是否成功

DHCP自动分配IP_第20张图片

4.2DHCP配置

4.2.1配置前先拷贝并配置

[root@localhost ~]# cp -p /usr/share/doc/dhcp*/dhcpd.conf.example /etc/dhcp/dhcpd.conf
cp:是否覆盖"/etc/dhcp/dhcpd.conf"? y
[root@localhost ~]# vim /etc/dhcp/dhcpd.conf
DHCP自动分配IP_第21张图片

DHCP自动分配IP_第22张图片

4.2.2重启DHCP服务并查看状态

DHCP自动分配IP_第23张图片

4.3ensp配置

DHCP自动分配IP_第24张图片

4.3.1二层交换机

undo terminal monitor
Info: Current terminal monitor is off.
system-view
Enter system view, return user view with Ctrl+Z.
[Huawei]sysname SW2
[SW2]int e0/0/2
[SW2-Ethernet0/0/2]q
[SW2]vlan batch 10 20 100
Info: This operation may take a few seconds. Please wait for a moment…done.
[SW2]int e0/0/2
[SW2-Ethernet0/0/2]p l a
[SW2-Ethernet0/0/2]p d v 10
[SW2-Ethernet0/0/2]int e0/0/3
[SW2-Ethernet0/0/3]p l a
[SW2-Ethernet0/0/3]p d v 20
[SW2-Ethernet0/0/3]int e0/0/4
[SW2-Ethernet0/0/4]p l a
[SW2-Ethernet0/0/4]p d v 100
[SW2-Ethernet0/0/4]int e0/0/5
[SW2-Ethernet0/0/5]p l a
[SW2-Ethernet0/0/5]p d v 100
[SW2-Ethernet0/0/5]q
[SW2]int e0/0/1
[SW2-Ethernet0/0/1]p l t
[SW2-Ethernet0/0/1]p t a v a
DHCP自动分配IP_第25张图片

4.3.2三层交换机配置

undo terminal monitor
Info: Current terminal monitor is off.
system-view
Enter system view, return user view with Ctrl+Z.
[Huawei]sysname SW1
[SW1]int g0/0/1
[SW1-GigabitEthernet0/0/1]p l t
[SW1-GigabitEthernet0/0/1]p t a v a
[SW1-GigabitEthernet0/0/1]q
[SW1]vlan batch 10 20 100
[SW1]int Vlanif 10
[SW1-Vlanif10]ip add 192.168.1.254 24
[SW1-Vlanif10]q
[SW1]int Vlanif 20
[SW1-Vlanif20]ip add 192.168.2.254 24
[SW1-Vlanif20]q
[SW1]int Vlanif 100
[SW1-Vlanif100]ip add 192.168.100.254 24
[SW1-Vlanif100]q
[SW1]ping 192.168.100.100
PING 192.168.100.100: 56 data bytes, press CTRL_C to break
Reply from 192.168.100.100: bytes=56 Sequence=1 ttl=64 time=130 ms
Reply from 192.168.100.100: bytes=56 Sequence=2 ttl=64 time=60 ms
Reply from 192.168.100.100: bytes=56 Sequence=3 ttl=64 time=60 ms
Reply from 192.168.100.100: bytes=56 Sequence=4 ttl=64 time=60 ms
Reply from 192.168.100.100: bytes=56 Sequence=5 ttl=64 time=30 ms
[SW1]dhcp enable #开启DHCP之后再配置
[SW1]int Vlanif 10
[SW1-Vlanif10]dhcp select relay #DHCP中继选择
[SW1-Vlanif10]dhcp relay server-ip 192.168.100.100 #DHCP中继服务器IP地址
[SW1-Vlanif10]q
[SW1]int Vlanif 20
[SW1-Vlanif20]dhcp select relay
[SW1-Vlanif20]dhcp relay server-ip 192.168.100.100
[SW1-Vlanif20]q
[SW1] User interface con0 is available

4.4测试

DHCP自动分配IP_第26张图片

DHCP自动分配IP_第27张图片
DHCP自动分配IP_第28张图片
DHCP自动分配IP_第29张图片

五、总结

  • DHCP的定义以及好处

  • DHCP的分配方式:自动分配,手动分配,动态分配

  • DHCP的工作原理:

  • DHCP 客户端进行 IP 请求

  • DHCP 服务器响应请求

  • DHCP 客户机选择 IP

  • DHCP 服务器确认租约

  • DHCP中继原理与配置

你可能感兴趣的:(Linux,命令行,运维,linux,centos,云计算,命令模式)