一:DHCP协议
1.1 DHCP简述
DHCP(Dynamic Host Configuration Protocol)动态主机配置协议)是一种局域网的协议。主要是集中的管理,分配IP地址,使网络环境中的主机动态的获得IP地址。基于udp协议,端口号67&68
1.2 DHCP的作用
1.能够避免ip地址冲突
2.能够集中管理,减少管理员的工作量
3.能够提高ip地址的利用率
二:DHCP协议中的报文
1.DHCP DISCOVER :客户端开始DHCP过程发送的包,是DHCP协议的开始(客户端向服务器发送的请求 广播)。
2.DHCP OFFER :服务器接收到DHCP DISCOVER之后做出的响应,它包括了给予客户端的
IP、客户端的MAC地址、租约过期时间、服务器的识别符以及其他信息。
3.DHCP REQUEST :客户端对于服务器发出的DHCP OFFER所做出的响应。在续约租期的时候同样会使用。
4.DHCP ACK :服务器在接收到客户端发来的DHCP REQUEST之后发出的成功确认的报文。在建立连接的时候,客户端在接收到这个报文之后才会确认分配给它的IP和其他信息可以被允许使用。
Dhcp nak 服务器对request 报文的拒绝响应 (广播) 与ACK报文不同的只有报文id
三,dhcp中继器的原理
DHCP relay 中继 (部署在所属网络的网关处),网关接口收到广播,转变为单播,发送给dhcp服务器。 中继器发送的单播中包含中继器接口地址,方便DHCP服务器分配相应地址段的ip地址。dhcp服务器把数据包发送到中继器,中继接口把数据还原为广播或单播发送给终端。
基础实验
拓扑图
实验步骤
1.终端设备开启ipv4配置,开启DHCP。
2.配置R1和R2的接口地址,在R2上配置一条静态路由,确保网络畅通。
3.R2上开启dhcp,创建地址池(宣告dhcp分发地址的网段、网关地址、dns服务器地址、绑定固定ip地址给pc1的mac地址)、进入接口 e0/0/1,开启全局地址池。
4.在R1的上开启dhcp,配置dhcp中继。
实验目的
pc1根据mac地址获取固定ip 10.1.1.100 (dhcp发放地址)
pc2根据dhcp随机分配IP地址
R2配置
[Huawei]sysname R2
[R2]int e0/0/1
[R2-Ethernet0/0/1]ip address 10.1.2.1 24
[R2]dhcp en
[R2]dhcp enable
[R2]ip route-static 10.1.1.0 24 10.1.2.254
[R2]ip pool vlan10
[R2-ip-pool-vlan10]network 10.1.1.0 mask 255.255.255.0
[R2-ip-pool-vlan10]gateway-list 10.1.1.254
[R2-ip-pool-vlan10]dns-list 1.1.1.1
[R2-ip-pool-vlan10]domain-name dhcp.nat
[R2-ip-pool-vlan10]static-bind ip-address 10.1.1.100 mac-address 5489-98EA-37A8
[R2]int e0/0/1
[R2-Ethernet0/0/1]dhcp select global
R2
[Huawei]sysname R1
[R1]dhcp enable
[R1]int e0/0/0
[R1-Ethernet0/0/0]ip address 10.1.1.254 24
[R1-Ethernet0/0/0]int e0/0/1
[R1-Ethernet0/0/1]ip address 10.1.2.254 24
[R1-Ethernet0/0/0]dhcp select global
[R1-Ethernet0/0/0]dhcp relay server-ip 10.1.2.1
检测:
pc1获取到10.1.1.100
pc2
dhcp 基于不同vlan间分配ip地址
配置sw1
[SW1]vlan batch 10 20
[SW1]int GigabitEthernet 0/0/1
[SW1-GigabitEthernet0/0/1]port link-type access
[SW1-GigabitEthernet0/0/1]port default vlan 10
[SW1-GigabitEthernet0/0/1]int g0/0/2
[SW1-GigabitEthernet0/0/2]port link-type access
[SW1-GigabitEthernet0/0/2]port default vlan 20
[SW1-GigabitEthernet0/0/2]int g0/0/3
[SW1-GigabitEthernet0/0/3]port link-type trunk
[SW1-GigabitEthernet0/0/3]port trunk allow-pass vlan all
sw2
[SW2]vlan batch 10 20
[SW2]dhcp enable
[SW2]int Vlan 10
[SW2-Vlanif10]ip address 10.1.1.254 24
[SW2-Vlanif10]dhcp select global
[SW2-Vlanif10]int vlan 20
[SW2-Vlanif20]ip address 10.1.2.254 24
[SW2-Vlanif20]dhcp select global
[SW2]ip pool vlan10
[SW2-ip-pool-vlan10]gateway-list 10.1.1.254
[SW2-ip-pool-vlan10]network 10.1.1.0 mask 255.255.255.0
[SW2-ip-pool-vlan10]ip pool vlan20
[SW2-ip-pool-vlan20]gateway-list 10.1.2.254
[SW2-ip-pool-vlan20]network 10.1.2.0 mask 255.255.255.0
[SW2]int g0/0/1
[SW2-GigabitEthernet0/0/1]port link-type trunk
[SW2-GigabitEthernet0/0/1]port trunk allow-pass vlan all