DHCP自动分配IP

一.了解DHCP服务

1.1 DHCP的由来

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

1.2 DHCP服务的好处

减少管理员的工作量

避免输入错误的可能

避免IP地址冲突

当更改IP地址段时,不需要重新配置每个用户的IP地址

提高了IP地址的利用率

方便客户端的配置

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)

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

}

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

Windows客户端的验证:

开启一台windows虚拟机,在本地网络连接中全部选择自动获取,即可自动获取到服务器端设置的ip地址等配置

ipconfig /release ###释放IP地址

ipconfig /renew ###重新获得IP地址

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

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

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中继原理与配置

————————————————

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
DHCP(动态主机配置协议)是一种用于自动分配IP地址、子网掩码、默认网关、DNS服务器等网络参数的协议,下面是DHCP服务的地址分配过程: 1. DHCP Discover(发现):DHCP客户端在网络上发送一个DHCP Discover报文,以请求可用的DHCP服务器。 2. DHCP Offer(提供):DHCP服务器在收到DHCP Discover报文后,向客户端发送DHCP Offer报文,报文中包含有可用的IP地址、子网掩码、默认网关等网络配置信息,以及DHCP服务器IP地址等信息。 3. DHCP Request(请求):DHCP客户端在收到DHCP Offer报文后,会选择其中一个DHCP服务器提供的IP地址,并向该DHCP服务器发送DHCP Request报文,以请求该IP地址。 4. DHCP Acknowledge(确认):DHCP服务器在收到DHCP Request报文后,向客户端发送DHCP Acknowledge报文,以确认分配给客户端的IP地址、子网掩码、默认网关、DNS服务器等网络配置信息,并告知客户端该地址的租用时间。 5. DHCP Renewal(更新):在租用时间到期前,DHCP客户端会向DHCP服务器发送DHCP Request报文,以更新租用时间。 6. DHCP Release(释放):DHCP客户端在不再需要分配IP地址时,可以向DHCP服务器发送DHCP Release报文,以释放该IP地址。 总之,DHCP服务是一种自动分配IP地址的方式,通过DHCP客户端和DHCP服务器之间的报文交互,实现了IP地址动态分配,节约了网络管理的时间和精力。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值