思科交换机DHCP功能和使用简介

一、DHCP server功能:

DHCP可以动态的为其管辖下的主机分配地址。DHCP协议报文是UDP报文,DHCP使用67(客户端)和68(服务器)端口。首先,客户端(例如我们PC的网卡)在其所在广播域广播发送discover报文;当此广播域的DHCP服务器收到discover报文后,则从自己的地址池中为该请求分配一个地址,并发送(单播或广播方式,由客户端的discover中的某字段指定)offer报文将分配的地址通知给客户端;客户端收到offer报文(因为可能存在多个DHCP服务器,所以可能收到多份offer,根据先来后到等机制选中一个合适的offer)后,将向那个选中的offer的DHCP服务器发送request报文(广播发送,各个DHCP服务器都会收到),相当于明确响应它选择了哪个服务器分配的哪个地址;服务器收到这个request报文后,如果它就是客户端选中的,那么就正式发送ACK报文分配地址,如果发现客户端选择的不是它,则处理善后事宜(回收地址等);客户端收到ACK报文后,就正式使用这个IP地址。

二、DHCP的简单配置
1、在config模式下,service DHCP命令,使能dhcp erver和dhcp relay功能。此功能是默认开启的。

2、在config模式下,ip dhcp pool [pool name],创建地址池。这个命令创建一个地址池,但是实际上只是创建了一个“pool的视图”或者说pool的名字。敲入ip dhcp pool [pool name]后会自动进入该pool的视图(提示符变为(config-dhcp))。

3、在pool的视图下,输入network x.x.x.x m.m.m.m来真正的为这个pool创建地址池。其中x.x.x.x为地址,m.m.m.m是掩码。一个pool下只能建立一个地址池。在pool视图下创建新的地址池将覆盖原来的地址池(原来的地址池被自动删除)。举例:network 10.0.0.1 255.255.255.0这个命令就创建了10.0.0.1 – 10.0.0.254这个地址空间以供分配。一台设备可以配置多个地址池,并且地址池的空间可以互相交叉重叠(也就是两个或多个地址池中可能有同一个供分配的地址)。所有地址池都是全局有效的,也就是说它们可以供任意一个接口选取使用。分配给客户端的IP如果是从某地址池选中的,则客户端也将使用这个地址池的掩码。
在地址池pool视图下还可以配置静态客户信息以供分配(使用pool视图下的host,client-identifier,hardware-address等命令绑定ip和客户信息)。同一pool下只能配置一个静态客户信息(后配置的将覆盖之前配置的),并且同一个host不能处于多个地址池ppol。另外,静态客户信息和前面介绍的动态的network地址池只能二选一。

4、在全局视图下”ip dhcp excluded-address? l.l.l.l h.h.h.h”? 可以设置一个地址区,server将不分配出来该地址区中的地址。其中l.l.l.l为地址范围的低端边界,h.h.h.h为地址范围的高端边界,在两边界之间的范围都将不可分配。

5、在与DHCP客户端网段直连的接口上配置接口地址。注意,接口地址与将选用的地址池存在如下的选取机制(因为可能不存在可用的地址池,也可能存在一个或多个可用的地址池):
遍历所有的地址池,接口的IP地址用地址池的掩码操作获得的IP如果在该地址池中,即可选择。当有多个符合上述条件的地址池时,思科2960选择这些地址池中掩码长度最小的地址池(我认为应该选小于等于接口掩码的那个,这样可供分配的地址将更多)。

6、show ip dhcp binding命令可以显示当前server下分配的client信息。

三、DHCP Relay功能
DHCP relay功能可以汇聚处于不同广播域的客户端的DHCP请求,转发给DHCP服务器,并发送DHCP服务器的相应给各个客户端,也就是起到了DHCP报文在各个网段的转发功能。

四、DHCP Relay配置
DHCP Relay功能是一个三层的功能,在与客户端直连的三层接口上(有IP),配置ip helper-address x.x.x.x来指定该接口下的客户端们使用哪个DHCP服务器。当从这个接口收到DHCP客户端的报文后,将为报文设置一个gaddr字段(gateway地址),并将报文转发给指定的DHCP服务器。从DHCP服务器收到的报文也将在该接口上发送给客户端。

五、DHCP客户端的配置
思科2960也可以作为DHCP客户端自动从服务器学习IP地址。在接口下IP address dhcp即可发送discover报文开始学习IP(详见上面DHCP服务器部分的介绍)。
此外:
1、在接口模式下配置”IP address dhcp”时,将清除掉此接口下的静态IP配置(如果之前手动配置了IP)。
2、在dhcp client学习到地址后,显示此接口的IP时(show ip interface breif等命令),我们可以看到这个IP是dhcp学习到的,而从show run命令下是看不到这个IP地址的,因为它不是配置,而是动态学习到的。
3、当在接口模式下输入”no ip address dhcp”时,将删除掉该interface下从dhcp学到的地址。
4、当在接口模式下输入”ip address x.x.x.x”时,将删除该接口的dhcp客户端功能,并清除DHCP学习到的地址。当no ip address时,如果接口的地址是dhcp学习到的,也会删除该接口的dhcp客户端功能,并释放动态学习到的IP。
5、全局视图下ip dhcp-client broadcast-flag命令可以设置是否在发送discover和request报文时设置广播字段,服务器收到设置了广播字段的请求时,将用广播方式回复offer和ack,如果收到未设置广播字段的请求,将用单播方式回应。
6、ip dhcp-server x.x.x.x可以指定信任的DHCP服务器,当收到的服务器响应来自的服务器与这个命令指定的服务器不同时,将丢弃该报文。允许配置多个信任的DHCP服务器。

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>