目录
10.1 DHCP 概述
10.2 实验1:DHCP 基本配置
1.实验目的
2.拓扑结构
3.实验步骤
4.实验调试
(1)在客户端测试
(2)show ip dhcp pool
(3)show ip dhcp binding
10.3 实验2: DHCP 中继
1.实验目的
2.拓扑结构
3.实验步骤
4.实验调试
10.4 DHCP 命令汇总
IP 地址已是每台计算机必定配置的参数了,手工设置每一台计算机的IP 地址成为管理员最不愿意做的一件事,于是自动配置IP 地址的方法出现了,这就是DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)。DHCP 服务器能够从预告设置的IP 地址池里自动给主机分配 IP 地址,它不仅能够保证IP 地址不重复分配,也能及时回收IP 地址以提高IP 地址的利用率。
10.1 DHCP 概述
在动态IP 地址的方案中,每台计算机并不设定固定的IP 地址,而是在计算机开机时才被分配一个IP 地址,这台计算机被称为DHCP 客户端,负责给DHCP 客户端分配IP 地址的计算机称为DHCP 服务器。也就是说,DHCP 采用客户/服务器(Client/Server)模式,有明确的客户端和服务器角色划分。
DHCP 的工作过程如下:
- 当DHCP 客户机启动时,客户机在当前的子网中广播DHCPDISCOVER 报文,向DHCP 服务器申请一个IP 地址。
- DHCP 服务器收到DHCPDISCOVER 报文后,它将从针对那台主机的地址敬意中为它提供一个尚未被分配出去的IP 地址,并把提供的IP 地址暂时标记为不可用。服务器以DHCPOFFER 报文送回给主机。如果网络里包含有不止一个的DHCP 服务器,则客户机可能收到好几个DHCPOFFER 报文,客户机通常只承认第一个DHCPOFFER。
- 客户端收到DHCPOFFER 后向服务器发送一个含有有关DHCP 服务器提供的IP 地址的DHCPREQUEST 报文。如果客户端没有收到DHCPOFFER 报文并且还记得以前的网络配置,此时使用以前的网络配置(如果该配置仍然在有效期限内)
- DHCP 服务器向客户机发回一个含有碑被发出的IP 地址及其分配方案的一个应答报(DHCPACK)。
- 客户端接收到包含了配置参数的DHCPACK 报文后,利用ARP 检查网络上是否有相同的IP 地址。如果检查通过,则客户机接收这个IP 地址及其参数,如果发现有问题,客户机向服务器发送DHCPDECLINE 信息,并重新开始中新的配置过程。服务器收到DHCPDECLINE 信息,将该地址标为不可用。
- DHCP 服务器只能将那个IP 地址分配给DHCP 客户一定时间,DHCP 客户必须在该次租用过期前对它进行更新。客户机在50%租借时间过去以后,每隔一段时间就开始DHCP 服务器更新前租借。如果DHCP 服务器应答,则租用延期;如果DHCP 服务器始终没有应答,在有效租借其的87.5%,客户应该与任何一个其他的DHCP 服务器通信,并请求更新它的配置信息。如果客户机不能和所有的DHCP 服务器取得联系,租借时间到后,它必须放弃当前的IP 地址并重新发送一个DHCPDISCOVER 报文开始上述的IP 地址获得过程。
- 客户端可以主动向服务器发出DHCPRELEASE 报文,将当前的IP 地址释放。
10.2 实验1:DHCP 基本配置
1.实验目的
通过本实验可以掌握:
① DHCP 的工作原理和工作过程;
② DHCP 服务器的基本配置和调试;
③ 客户端配置。
2.拓扑结构
3.实验步骤
(1)步骤1:配置路由器R1 提供DHCP 服务
R1(config)#service dhcp //DHCP 服务
R1(config)#no ip dhcp conflict logging //关闭DHCP 冲突日志
R1(config)#ip dhcp pool ccie //定义地址池
R1(dhcp-config)#network 192.168.1.0 /24 //DHCP 服务器要分配的网络和掩码
R1(dhcp-config)#domain-name cisco.com //域名
R1(dhcp-config)#default-router 192.168.1.1
//默认网关,这个地址要和相应网络所连接的路由器的以太口地址相同
R1(dhcp-config)#netbios-name-server 192.168.1.2 //WINS 服务器
R1(dhcp-config)#dns-server 192.168.1.4 //DNS 服务器
R1(dhcp-config)#option 150 ip 192.168.1.3 //TFTP 服务器
R1(dhcp-config)#lease infinite //定义租期
R1(dhcp-config)#ip dhcp excluded-address 192.168.1.1 192.168.1.5 //排除的地址段
(2)步骤2:设置Windows 客户端
首先在Windows 下把TCP/IP 地址设置为自动获得(如图10-2),如果DHCP 服务器还提供DNS 和WINS 等,也把它们设置为自动获得。
4.实验调试
(1)在客户端测试
在”命令提示符”下,执行C;/>ipconfig/renew 可以更新IP 地址;而执行C;/>ipconfig/all 可以看到IP 地址、WINS、DNS和域名是否正确;要释放地址用C;/>ipconfig/release 命令。
C;\>ipconfig/renew
C;\>ipconfig/all
(2)show ip dhcp pool
该命令用来查看DHCP 地址池的信息。
R1#show ip dhcp pool
(3)show ip dhcp binding
该命令用来查看DHCP 的地址绑定情况。
R1#show ip dhcp binding
10.3 实验2: DHCP 中继
1.实验目的
通过本实验可以掌握通过DHCP 中继实现跨网络的DHCP 服务。
2.拓扑结构
在本实验中,R1 仍然担任DHCP 服务器的角色,负责向PC 所在网络和PC2 所在网络的主机动态分配IP 地址,所以,R1 上需要定义两个地址池。整个网络运行RIPv2 协议,确保网络IP 连通性。
3.实验步骤
(1)步骤1:配置路由器R1 提供DHCP 服务
R1(config)#interface gigabitEhternet0/0
R1(config-if)#ip address 192.168.1.1 255.255.255.0
R1(config-if)#no shutdown
R1(config)#router rip
R1(config-router)#version 2
R1(config-router)#no auto-summary
R1(config-router)#network 192.168.1.0
R1(config-router)# network 192.168.12.0
R1(config)#service dhcp
R1(config)#no ip dhcp conflict logging
R1(config)#ip dhcp pool ccie //定义第一个地址池
R1(dhcp-config)#network 192.168.1.0 /24
R1(dhcp-config)#default-router 192.168.1.1
R1(dhcp-config)#domain-name cisco.com
R1(dhcp-config)#netbios-name-server 192.168.1.2
R1(dhcp-config)#dns-server 192.168.1.4
R1(dhcp-config)#option 150 ip 192.168.1.3
R1(dhcp-config)#lease infinite
R1(dhcp-config)#ip dhcp excluded-address 192.168.1.1 192.168.1.5
R1(config)#ip dhcp pool ccnp //定义第二个地址池
R1(dhcp-config)#network 172.16.1.0 255.255.255.0
R1(dhcp-config)#domain-name szpt.net
R1(dhcp-config)#default-router 172.16.1.2
R1(dhcp-config)#netbios-name-server 192.168.1.2
R1(dhcp-config)#dns-server 192.168.1.4
R1(dhcp-config)#option 150 ip 192.168.1.3
R1(dhcp-config)#lease infinite
R1(dhcp-config)#ip dhcp excluded-address 172.16.1.1 172.16.1.2
(2)步骤2:配置路由器R2
R2(config)#interface gigabitEhternet0/0
R2(config-if)#ip address 172.16.1.2 255.255.255.0
R2(config-if)#ip helper-address 192.168.12.1 //配置帮助地址
R2(config-if)#no shutdown
R2(config)#router rip
R2(config-router)#version 2
R2(config-router)#no auto-summary
R2(config-router)# network 192.168.12.0
R2(config-router)# network 172.16.0.0
【技术要点】
路由器是不能转发”255.255.255.255”广播的,但是很多服务(如DHCP 和TFTP 等)的客户请求都是以泛洪广播的方式发起的,我们不可能将每个网段都旋转这样的服务器,因此使用Cisco IOS 帮助地址特性是很好的选择。通过使用帮助地址,路由器可以被配置为接受对UDP 服务的广播请求,然后将之以单点传送的方式发给某个具体的IP地址,或者以定向广播形式向某个网段转发这些请求,这就是中继。
4.实验调试
(1)show ip dhcp binding
在PC1 和PC2 上自动获取IP 地址后,在R1 上执行:
R1#show ip dhcp binding
Bindings from all pools not associated with VRF;
IP address Client-ID/ Lease expiration Type
Hardware address/
Username
172.16.1.3 0100.6067.00dd.5b
192.168.1.6 0063.6973.636f.2d Infinite Automatic
192.168.1.7 0100.6067.00ef.31 Infinite Automatic
以上输出表明两个地址池都为相应的网络上的主机分配了IP 地址
(2)show ip dhcp pool
R1#show ip dhcp pool
Pool ccie;
Utilization mark(high/low) ;100/0
Subnet size(first/next) ;0/0
Total addresses ;254
Leased addresses ;2
Pending event ;none
1 subnet is currently in the pool;
Current index IP address range Leased addresses
192.168.1.8 192.168.1.1 -192.168.1.254 2
Pool ccnp;
Utilization mark(high/low) ;100/0
Subnet size(first/next) ;0/0
Total addresses ;254
Leased addresses ;1
Pending event ;none
1 subnet is currently in the pool;
Current index IP address range Leased addresses
172.16.1.4 172.16.1.1 -192.168.1.254 1
(3)debug ip dhcp server events
在PC2 上先执行”ipconfig/release”,再执行”ipconfig/renew”,显示如下:
R1#debug ip dhcp server
R1#clear ip dhcp binding *
*Feb 2 05;50;24.475;DHCPD;Sending notification of DISCOVER;
*Feb 2 05;50;24.475;DHCPD;htype 1 chaddr 0060.6700.dd5b
*Feb 2 05;50;24.475;DHCPD;circuit id 00000000
*Feb 2 05;50;24.475;DHCPD;Seeing if there is an internally specified pool class;
*Feb 2 05;50;24.475;DHCPD;htype 1 chaddr 0060.6700.dd5b
*Feb 2 05;50;24.475;DHCPD;circuit id 00000000
*Feb 2 05;50;26.475;DHCPD;client requests 172.16.1.4.
*Feb 2 05;50;26.475;DHCPD;Adding binding to radix tree (172.16.1.4)
*Feb 2 05;50;26.475;DHCPD;Adding binding to hash tree
*Feb 2 05;50;26.475;DHCPD;assigned IP address 172.16.1.4 to client 0100.6067.00dd.5b
*Feb 2 05;50;26.519;DHCPD;Sending notification of ASSIGNMENT;
*Feb 2 05;50;26.519;DHCPD;address 172.16.1.4 mask 255.255.255.0
*Feb 2 05;50;26.519;DHCPD;htype 1 chaddr 0060.6700.dd5b
*Feb 2 05;50;26.519;DHCPD;lease time remaining(secs)=4294967295
(4)show ip interface
R2#show ip interface gigabitEthernet0/0
GigabitEthernet0/0 is up ,line protocol is up
Internet address is 172.16.1.2/24
Broadcast address is 255.255.255.255
Address determined by setup command
MTU is 1500 bytes
Helper address is 192.168.12.1
......
从以上输出看到gigabitEthernet0/0 接口使用了帮助地址192.168.12.1 。
10.4 DHCP 命令汇总
命令 作用
show ip dhcp pool 查看DHCP 地址池的信息
show ip dhcp binding 查看DHCP 的地址绑定情况
show ip dhcp database 查看DHCP 数据库
show ip interface 查看接口信息
debug ip dhcp server events 动态查看DHCP 服务器的事件
service dhcp 开启DHCP 服务
no ip dhcp conflict logging 关闭DHCP 冲突日志
ip dhcp pool 配置DHCP 分配的地址池
network DHCP 服务器要分配的网络的掩码
default-router 默认网关
domain-name 域名
netbios-name-server WINS 服务器
dns-server 域名服务器
option 150 ip FTP 服务器
lease 配置租期
ip dhcp excluded-address 排除地址段
ip helper-address 配置DHCP 中继的地址