HCIA DHCP实验

DHCP:Dynamic Host Configure Protocol 动态主机配置协议

  • 从BOOTP(Bootstrap Protocol)协议发展而来 (wireshark抓包搜索关键字bootp)
  • UDP封装,服务器使用端口67,客户端使用端口68
  • 动态分配网络信息(IP地址、子网掩码、网关、DNS服务器等)
  • 分配给客户端的网络信息是有租约的

DHCP角色

角色 备注
DHCP Cilent 客户端 请求网络信息的用户
DHCP Server 服务器 能够提供DHCP功能的设备
DHCP Relay 中继 一般为路由器或三层交换机等设备

dhcp报文类型

报文类型 备注
DHCP Discover 发现 客户端寻找DHCP服务器
DHCP Office 提供 服务器响应DHCP Discover报文,该报文也携带了网络信息
DHCP Request 请求 客户端请求服务器对网络信息确认,或者续约租期
DHCP ACK 确认 服务器对DHCP Request报文确认响应
DHCP NAK 不确认 服务器对DHCP Request报文的拒接响应
DHCP Release 释放 客户端释放网络信息通知服务器

01

01

ps: Offer和ACK报文也可以说是广播包,因为服务器只是根据MAC地址回应,没有看三层(在ack确认之后才是真正的使用地址)

NAK报文的出现

  • IP地址可能已经被使用
  • 租期未到期,网络信息还存在,换了DHCP服务器(如:切换网络环境,请求续约,但是服务器不存在该网络信息)

在租期时间过50%后,主机会自动发送DHCP Request报文请求DHCP服务器重新续租

在租期时间过50%一直请求服务器,但服务器未响应,客户端在87.5%会发送DHCP Request报文请求所有DHCP服务器分配网络信息 (注:是以广播的形式发送)

无法获取DHCP服务器分配的网络信息,Windows客户端会自动使用169.254.0.0/16地址,供临时通信

DHCP配置

命令 备注
dhcp enable 开启DHCP功能
dhcp selcet interface 关联接口和接口地址池
dhcp server dns-list [dns服务器地址] 配置接口地址池的DNS服务器
dhcp server lease [day x hour x minute z] 配置接口地址池的租期,默认1天
dhcp server excluded-ip-address [ipaddr1 ipaddr2] 配置接口地址池排除的地址范围
dhcp server static-bind-ip-address [x.x.x.x] mac-address [xxxx-xxxx-xxxx] 配置静态绑定
dhcp select global 关联接口和全局地址池绑定
ip pool [名称] 创建全局地址池
network [地址] 配置全局地址池的可分配的网段地址
gateway-list [地址] 配置全局地址池的网关地址
dns-list [地址] 配置全局地址池的DNS服务器地址
lease [数字] 配置全局地址池下的租期,默认1天
excluded-ip-address [地址] 查看地址池的属性
dhcp select relay 关联接口开启中继代理
dhcp relay server-ip 192.168.10.254 指定DHCP服务器的地址
display ip pool interface [interface 接口名 all] 验证接口地址池的信息
display ip pool name [地址池名称] used 验证全局地址池的信息
ipconfig /release 释放租期
ipconfig /renew 重新获取

DHCP实验

接口地址池

01

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#SW1
sys
sys SW1
vlan batch 10 20
int g0/0/1
p l t
port trunk allow-pass vlan 10 20
dhcp enable
int vlanif10
ip a 10.0.0.254 24
dhcp select interface
dhcp server lease day 0 hour 1
dhcp server dns-list 223.5.5.5 114.114.114.114
dhcp server excluded-ip-address 10.0.0.200 10.0.0.253
dhcp server static-bind ip-address 10.0.0.88 mac-address 5489-98db-4190
int vlanif20
ip a 20.0.0.254 24
dhcp select interface
#######################################################
#SW2
sys
sys SW2
vlan batch 10 20
int g0/0/1
p l t
port trunk allow-pass vlan 10 20
int g0/0/2
p l a
p d vlan 10
int g0/0/3
p l a
p d vlan 20

全局地址池

01

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#SW1
sys
sys SW1
vlan batch 10 20
int g0/0/1
p l t
port trunk allow-pass vlan 10 20
dhcp enable
ip pool dev
gateway-list 10.0.0.254
network 10.0.0.0 mask 255.255.255.0
lease day 0 hour 2 minute 0
dns-list 223.5.5.5 119.29.29.29
static-bind ip-address 10.0.0.100 mac-address 5489-98db-4190
ip pool ops
gateway-list 20.0.0.254
network 20.0.0.0 mask 255.255.255.0
lease day 0 hour 2 minute 0
dns-list 223.5.5.5 119.29.29.29
int vlanif10
ip a 10.0.0.254 24
dhcp select global
int vlanif20
ip a 20.0.0.254 24
dhcp select global
##################################
#SW2
sys
sys SW2
vlan batch 10 20
int g0/0/1
p l t
port trunk allow-pass vlan 10 20
int g0/0/2
p l a
p d vlan 10
int g0/0/3
p l a
p d vlan 20

01

01

01

独学无友,孤陋寡闻;学习记录,欢迎拍砖!