DHCP学习笔记

1.DHCP快速配置

1.1配置接口IP

R1:

sysname R1

undo info-center enable

interface Ethernet0/0/0

ip address 192.168.1.1 255.255.255.0

quit

1.2开启DHCP服务,接着在R1的e0/0/0配置DHCP Server功能

dhcp enable #全局下开启DHCP服务

interface Ethernet0/0/0

dhcp select interface #开启接口采用接口地址池的‌DHCP Server功能

dhcp server dns-list 114.114.114.114 223.5.5.5 #配置指定接口地址池下的DNS服务器地址

dhcp server lease day 2 #配置DHCP服务器接口地址池中IP地址的租用有效期限

1.3验证测试

把PC由静态配置IP改为DHCP(动态)获取IP地址

PC1:

同理PC2:

2.DHCP基本概念

为解决传统的静态手工配置方式的不足,DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)应运而生,其可以实现网络动态合理地分配IP地址给主机使用。

DHCP采用C/S构架,主机无需配置,从服务器端获取地址,可实现接入网络后即插即用。

  1. DHCP优点

统一管理

IP地址由从服务器端的地址池中获取,服务器端会记录维护IP地址的使用状态,做到IP地址统一分配、管理。

地址租期

DHCP提出了租期的概念,可有效提高地址利用率。

  1. DHCP工作原理

思考:为什么DHCP客户端收到Offer之后不直接使用该IP地址,还需要发送一个Request告知服务器端?

这是因为在一个环境中可能不止一台DHCP服务器,即客户端可能收到不止一个Offer数据包。这时客户端就需要对想要使用的IP地址发送Request数据包进行请求。同时告知其它DHCP服务器自己已经拿了其它服务器的IP,避免IP地址分配浪费。

  1. DHCP租期更新

如果在50%租期时客户端未得到原服务器端的回应,则客户端在87.5%租期时会广播发送DHCP Request,任意一台DHCP服务器端都可回应,该过程称为重绑定。

  1. DHCP 典型配置

6.1配置命令介绍

(1)开启DHCP功能

Huawei\] **dhcp enable** (2)开启接口采用接口地址池的DHCP服务器端功能 \[Huawei-Gigabitthernet0/0/0\]**dhcp select interface** (3)指定接口地址池下的DNS服务器地址 \[Huawei-Gigabitthernet0/0/0\]**dhcp server dns-list** ip-address (4)配置接口地址池中不参与自动分配的IP地址范围 \[Huawei-Gigabitthernet0/0/0\]**dhcp server excluded-ip-address** start-ip-address **\[** end-ip-address**\]** (5)配置DHCP服务器接口地址池中IP地址的租用有效期限功能 \[Huawei-Gigabitthernet0/0/0\]**dhcp server lease { day** day**\[ hour** hour **\[ minute** minute **\] \] \|** unlimited **}** 缺省情况下,IP地址的租期为1天。 (6)创建全局地址池 \[Huawei\]**ip pool** ip-pool-name (7)配置全局地址池可动态分配的IP地址范围 \[Huawei-ip-pool-2\]**network ip-address \[ mask {** mask \| mask-length**} \]** (8)配置DHCP客户端的网关地址 \[Huawei-ip-pool-2\]**gateway-list** ip-address (9)配置DHCP客户端使用的DNS服务器的IP地址 \[Huawei-ip-pool-2\]**dns-list** ip-address (10)配置IP地址租期 \[Huawei-ip-pool-2\] **lease { day** day**\[ hour** hour**\[ minute** minute **\] \] \| unlimited }** (11)使能接口的DHCP服务器功能 \[Huawei-Gigabitthernet0/0/0\]**dhcp select global** 6.2 DHCP接口地址池配置 ![](https://i-blog.csdnimg.cn/direct/b625e78a7fe44e2a8e8a2053a7338022.png) 需求描述: 配置一台路由器作为DHCP服务器端,使用接口GE0/0/0所属的网段作为DHCP客户端的地址池,同时将接口地址设为DNS Server地址,租期设置为3天。 DHCP服务器端配置如下: 全局使能DHCP服务,进入接口视图下,关联当前接口到DHCP地址池,在接口视图下配置DNS地址、排除地址(将接口自身地址排除在外),同时配置给客户端分配IP地址的租期。 \sys \[Huawei\]un in en \[Huawei\]sysn DHCP_Server \[DHCP_Server\]dhcp enable \[DHCP_Server\]int e0/0/0 \[DHCP_Server-Ethernet0/0/0\]ip add 10.1.1.1 24 \[DHCP_Server-Ethernet0/0/0\]dhcp select interface \[DHCP_Server-Ethernet0/0/0\]dhcp server dns-list 10.1.1.2 \[DHCP_Server-Ethernet0/0/0\]dhcp server excluded-ip-address 10.1.1.2 \[DHCP_Server-Ethernet0/0/0\]dhcp server lease day 3 \[DHCP_Server-Ethernet0/0/0\]quit \[DHCP_Server

验证测试:

6.3 DHCP全局地址池配置

需求描述:

配置一台路由器作为DHCP服务器端,配置全局地址池ip pool 2为DHCP客户端分配IP地址;分配地址为10.1.1.0/24网段,网关地址10.1.1.1,DNS地址是114.114.114.114,租期10天,在E0/0/0接口下调用全局地址池。

DHCP服务器端配置如下:

全局使能DHCP服务,配置全局地址池pool2。在pool2中配置地址池范围、网关地址、DNS地址、租期。

最后在具体的接口中配置选择全局地址池。当E0/0/0收到DHCP请求就会从全局地址池中进行IP地址分配。

sys

un in en

sysn DHCP_Server

dhcp enable

ip pool pool2

network 10.1.1.0 mask 24

gateway-list 10.1.1.1

dns-list 114.114.114.114

lease day 10

quit

interface e0/0/0

ip add 10.1.1.1 24

dhcp select global

quit

验证测试:

查看所有地址池:dis ip pool

查看指定地址池:dis ip pool name pool2

清空地址池分配:reset ip pool name pool2 all

7.抓包查看DHCP报文

7.1以PC5为例说明--因为验证测试阶段PC已经通过DHCP获取到IP地址,所以我们需要到PC的命令符界面通过命令:ipconfig /release 释放掉DHCP获取到的IP地址。

7.2点击PC5的E0/0/0接口"开始抓包",启动"Wireshark"。

7.3返回到PC5的命令符界面中,输入ipconfig /renew ,使PC5重新获取IP地址,触发DHCP过程,"Wireshark"中就会抓取到DHCP交互的报文。

相关推荐
一只栖枝2 小时前
网络安全 vs 信息安全的本质解析:数据盾牌与网络防线的辩证关系关系
网络·网络安全·信息安全·it·信息安全认证
CertiK2 小时前
CertiK《Hack3d:2025年第二季度及上半年Web3.0安全报告》(附报告全文链接)
网络
一只小鱼儿吖4 小时前
进程代理单窗口单IP技术:原理、应用与实现
网络·网络协议·tcp/ip
稳联技术4 小时前
Ethernet IP与Profinet共舞:网关驱动绿色工业的智慧脉动
网络·网络协议·tcp/ip
学习3人组4 小时前
CentOS配置网络
linux·网络·centos
~山有木兮5 小时前
LiteHub中间件之限流实现
网络·http·中间件
码荼5 小时前
学习开发之hashmap
java·python·学习·哈希算法·个人开发·小白学开发·不花钱不花时间crud
cui_win5 小时前
【网络】Linux 内核优化实战 - net.core.flow_limit_table_len
linux·运维·网络
BD_Marathon6 小时前
虚拟机网络检查
网络
武昌库里写JAVA6 小时前
Oracle如何使用序列 Oracle序列使用教程
java·开发语言·spring boot·学习·课程设计