DHCP自动分配IP

一.了解DHCP服务

1.1 DHCP的由来

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

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 分为四个步骤

在这里插入图片描述

2.1.1客户端请求IP

客户机请求IP 地址当一个DHCP客户机启动时,客户机还没有IP地址,所以客户机要通过DHCP获取一个合法的地址。此时DHCP客户机以广播方式发送DHCP Discover发现信息来寻找 DHCP 服器
在这里插入图片描述

2.1.2 服务器响应

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

2.1.3客户机选择IP地址

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

2.1.4 服务器约定租期

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

在这里插入图片描述

2. 2重新登录

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

在这里插入图片描述

在这里插入图片描述

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服务

在这里插入图片描述

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.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服务器
    }

在这里插入图片描述

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

在这里插入图片描述

  1. Windows客户端的验证:

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

在这里插入图片描述

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

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

less /var/lib/dhcpd/dhcpd.leases

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”
在这里插入图片描述
在这里插入图片描述

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

在这里插入图片描述

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

在这里插入图片描述

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

在这里插入图片描述

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
在这里插入图片描述

在这里插入图片描述

4.2.2重启DHCP服务并查看状态

在这里插入图片描述

4.3ensp配置

在这里插入图片描述

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
在这里插入图片描述

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的定义以及好处

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

  • DHCP的工作原理:

  • DHCP 客户端进行 IP 请求

  • DHCP 服务器响应请求

  • DHCP 客户机选择 IP

  • DHCP 服务器确认租约

  • DHCP中继原理与配置

  • 1
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
DHCP(动态主机配置协议)是一种网络协议,它可以自动分配IP地址给网络中的设备。通过使用DHCP服务,可以避免手动设置IP地址可能带来的错误,同时也避免了给多个设备分配同一个IP地址所造成的地址冲突问题。 在使用DHCP服务时,需要配置一个DHCP服务器,该服务器负责管理和分配IP地址。当设备连接到网络时,它会向DHCP服务器发送一个请求,请求一个可用的IP地址。DHCP服务器会从预先配置的IP地址池中选择一个可用的地址,并将其分配给设备。这样,设备就可以自动获得一个有效的IP地址,而无需手动设置。 在配置DHCP服务器时,可以设置DHCP中继服务器IP地址,以便在不同的子网之间转发DHCP请求。这样,即使设备所在的子网没有配置DHCP服务器,也可以通过DHCP中继服务器来获取IP地址。 此外,DHCP服务器还支持在地址池中排除某些不能通过DHCP机制进行分配IP地址。例如,如果客户端已经手动配置了一个IP地址,那么DHCP服务器应该将该地址排除在分配范围之外,以避免地址冲突。为了确保分配IP地址与网络中其他客户端的IP地址不冲突,DHCP服务器会在发送DHCP OFFER报文前发送ICMP ECHO REQUEST报文对分配IP地址进行冲突探测。如果在指定的时间内没有收到应答报文,表示该IP地址可用,并可以分配给客户端;如果在指定时间内收到应答报文,表示该IP地址已被使用,则会将其列为冲突地址,等待重新接收到DHCP DISCOVER报文后重新选择可用的IP地址。 总结起来,DHCP动态分配IP地址是通过DHCP服务器来自动分配和管理IP地址的过程。设备通过DHCP请求获取一个可用的IP地址,而DHCP服务器会从预先配置的地址池中选择一个可用的地址分配给设备。在配置DHCP服务器时,还可以设置DHCP中继服务器IP地址,并排除已经手动配置的地址,以避免地址冲突。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [DHCP自动分配IP](https://blog.csdn.net/unschooledrat/article/details/129031790)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *3* [动态IP分配协议:DHCP](https://blog.csdn.net/qq_43546676/article/details/126822766)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

搞什么滚去学习

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值