华为 路由交换之DHCP

DHCP概述

DHCP报文通过UDP协议承载:端口号是67(服务器端)和68(客户端)

任何动态的协议都有自己一套规定的语言即协议,DHCP也不例外。
DHCP报文共有8个类型,具体如下:
一、DHCP DISCOVER:这是DHCP客户端首次登录网络时进行DHCP过程的第一个报文,用来寻找DHCP服务器。
二、DHCP OFFER:服务器用来响应客户端的DHCPDISCOVER报文,并指定相应的配置参数。
三、DHCP REQUEST:由客户端发送给服务器来请求配置参数或者请求配置确认或者续借租期。此报文用于以下三种用途。
客户端初始化后,发送广播的DHCPREQUEST报文来回应服务器的DHCPOFFER报文。
客户端重启初始化后,发送广播的DHCPREQUEST报文来确认先前被分配的IP地址等配置信息。
当客户端已经和某个IP地址绑定后,发送单播的DHCPREQUEST报文来延长IP地址的租期。
四、DHCP ACK:服务器对客户端的DHCPREQUEST报文的确认响应报文,客户端收到此报文后,才真正获得了IP地址和相关的配置信息。

DHCP报文的另外4个类型:
一、DHCP DELINE:当客户端发现服务器分配给它的IP地址发生冲突时会通过发送此报文来通知服务器,并且会重新向服务器申请地址。
二、DHCP NAK:服务器对客户端的DHCP REQUEST报文的拒绝响应报文,比如服务器对客户端分配的IP地址已超过使用租借期限或者客户端移到了另一个新的网络。
三、DHCP INFORM:客户端已经获得了IP地址,发送此报文的目的是为了从服务器获得其他的一些网络配置信息,比如网关地址、DNS服务器地址等。
四、DHCP RELEASE:客户端可通过发送此报文主动释放服务器分配给它的IP地址,当服务器收到此报文后,可将这个IP地址分配给其它的客户端。

DHCP报文结构:
OP:操作码 (1=bootrequest ,2=bootreply)
Htype: 硬件地址类型 (1 ethernet)
Hlen: 硬件地址长度 (ethernet 为6)
Hops:表示当前的DHCP报文经过的DHCP Relay的数目。该字段由客户端设置为0,每经过一个DHCP Relay时,该字段加1。此字段的作用是限制DHCP报文所经过的DHCP中继数目。服务器和客户端之间的DHCP中继不能超过16次,也就是值不能大于16,否则DHCP报文将被丢弃。
Xid: 传输ID,在同服务器的交互中,由客户机所选择
Secs: 表示客户端从开始获取地址或地址续租更新后所用的时间,单位是秒。
Flags:此字段在BOOTP中保留未用,在DHCP中表示标志字段。只有标志字段的最高位才有意义,其余的位均被置为0。最左边的字段被解释为广播响应标志位,内容如下所示:
0:客户端请求服务器以单播形式发送响应报文
1:客户端请求服务器以广播形式发送响应报文
Client IP address: 客户机在BOUND,RENEW或REBINDING状态所使用,可以用来回应ARP请求报文

注:broadcast flag位置1代表服务器应答报文需要通过广播的方式回送,如果置0代表需要通过单播的方式回送。

基本DHCP(基于接口和基于全局的配置)

1.基于接口的DHCP:

dhcp enable //开启DHCP功能
interface Vlanif5
ip address 10.1.5.254 255.255.255.0 //该网段的网关
dhcp select interface //通过接口方式实施DHCP
dhcp server excluded-ip-address 10.1.5.100 10.1.5.252 //排除地址,需要连续
dhcp server dns-list 114.114.114.114 //下发的DNS地址,可以多个
dhcp server domain-name qytang.com //下发的域名

2.基于MAC使用接口方式来固定的分配IP地址:

dhcp enable
interface Vlanif10
ip address 10.1.10.254 255.255.255.0
dhcp select interface
dhcp server static-bind ip-address 10.1.10.188 mac-address 5489-9863-52e0 //为52e0的MAC设备分配一个固定的IP 10.1.10.188
dhcp server excluded-ip-address 10.1.10.250 10.1.10.253
dhcp server dns-list 114.114.114.114
dhcp server domain-name qytang.com

<SW2>reset ip pool interface vlanif10 used //清除vlanif10分配的地址

验证:

[SW2]dis ip pool interface vlanif10 used
Pool-name : vlanif10
Pool-No : 0
Lease : 1 Days 0 Hours 0 Minutes
Domain-name : qytang.com
DNS-server0 : 114.114.114.114
NBNS-server0 : -
Netbios-type : -
Position : Interface Status : Unlocked
Gateway-0 : 10.1.10.254
Mask : 255.255.255.0
VPN instance : --
-----------------------------------------------------------------------------
Start End Total Used Idle(Expired) Conflict Disable
-----------------------------------------------------------------------------
10.1.10.1 10.1.10.254 253 1 248(0) 0 4
-----------------------------------------------------------------------------

Network section :
--------------------------------------------------------------------------
Index IP MAC Lease Status
--------------------------------------------------------------------------
187 10.1.10.188 5489-9863-52e0 - Static-bind used
-------------------------------------------------------------------------

3.全局的DHCP:

dhcp enable
ip pool vlan20
gateway-list 10.1.20.254
network 10.1.20.0 mask 255.255.255.0
excluded-ip-address 10.1.20.250 10.1.20.253
dns-list 8.8.8.8 6.6.6.6 7.7.7.7
domain-name qytang.com
#
interface Vlanif20
ip address 10.1.20.254 255.255.255.0
dhcp select global //调用DHCP地址池

验证:

[SW2]dis ip pool name vlan20
Pool-name : vlan20
Pool-No : 1
Lease : 2 Days 14 Hours 0 Minutes
Domain-name : qytang.com
DNS-server0 : 8.8.8.8
DNS-server1 : 6.6.6.6
DNS-server2 : 7.7.7.7
NBNS-server0 : -
Netbios-type : -
Position : Local Status : Unlocked
Gateway-0 : 10.1.20.254
Mask : 255.255.255.0
VPN instance : --
-----------------------------------------------------------------------------
Start End Total Used Idle(Expired) Conflict Disable
-----------------------------------------------------------------------------
10.1.20.1 10.1.20.254 253 1 248(0) 0 4
-----------------------------------------------------------------------------

租约:

[SW1-Vlanif10]dhcp server lease ?
day Day, from 0 to 999
unlimited Unlimited // 租约为永久

DHCP中继

容易犯的错误:1)忘记开启全局的DHCP以及调用 2)接口下没有应用 3)忽略了路由问题
1.中继设备:

dhcp server group ender
dhcp-server 10.1.30.254 0 //在一个DHCP服务器组中可以配置一个或多个DHCP服务器
interface Vlanif20
ip address 10.1.20.254 255.255.255.0
dhcp select relay //该接口为中继角色
dhcp relay server-select ender //指定DHCP服务器组

2.DHCP服务器端:

[SW3]ip route-static 10.1.10.0 24 Vlanif 30 10.1.30.1
[SW3]ip route-static 10.1.20.0 24 Vlanif 30 10.1.30.1 //不要忘记路由,动态/静态都可以

interface Vlanif30
ip address 10.1.30.254 255.255.255.0
dhcp select global //比较容易忘记的应用、调用命令

dhcp enable
ip pool vlan10
gateway-list 10.1.10.254
network 10.1.10.0 mask 255.255.255.0
excluded-ip-address 10.1.10.250 10.1.10.253
dns-list 114.114.114.114
domain-name host.com
原文地址:https://www.cnblogs.com/jasonminghao/p/12439671.html