为多个VLAN配置DHCP实例
这是查到的一个实例,贴过来,供和我一样有相同DHCP上疑问的人以参考。


实例网络拓扑使用Cisco 3620作为IOS DHCPServer,它和内网相连的fastethernet0端口的IP地址为192.168.1.4,二层交换机采用两台Cisco2950,三层交换机采用一台Cisco3550。在整个网络中有二个VLAN,为简化描述,假设每个VLAN都采用24位网络地址,其中VLAN1的IP地址为192.168.1.254,VLAN2的IP地址为192.168.2.254。在Cisco设备上实现IOS DHCPServer功能以使各VLAN中的主机自动获得IP地址。如图所示:
 

DHCP实验配置中继多VLAN单臂_单臂 


配置DHCP地址池、附加信息以及租约期限
DHCP服务器的数据库被组织成一个树形结构,树根是用于动态分配的所有网络段的地址池,树枝是子网地址池,树叶是手工绑定给节点的
地址。具体操作步骤如下:
首先登陆到Cisco 3620路由器上:
Router3620>enable
Password  (输入路由器的特权口令)
Router3620# config terminal (进入配置模式)
Enter configuration commands one per line. End with CNTL/Z.
Router3620 config# ip dhcp pool global(配置一个根地址池,global是地址池的名称,你可以采用有意义的字符串来表示)
Router3620 dhcp-config# network 192.168.0.0 255.255.0.0(动态分配的地址段)
Router3620 dhcp-config# domain-name abc.com(为客户机配置域后缀)
Router3620 dhcp-config# dns-server 192.168.1.1(为客户机配置DNS服务器)
Router3620 dhcp-config# netbios-name-server 192.168.1.1(为客户机配置wins服务器)
Router3620 dhcp-config# netbios-node-type h-node(为客户机配置h节点模式)
Router3620 dhcp-config# lease 30 (地址租用期为30天)
Router3620 dhcp-config# ip dhcp pool vlan1 (为VLAN1配置地址池,本池是global池的子池,将从global继承域后缀、DNS服务器、
wins服务器等参数)
Router3620 dhcp-config#network 192.168.1.0 255.255.255.0 (VLAN1动态分配192.168.1这个网段内可以被分配的地址,没有被排除
的地址) 
Router3620 dhcp-config#default-router 192.168.1.254 (为客户机配置默认的网关,即VLAN1的IP地址)
Router3620 dhcp-config#ip dhcp pool vlan2 (为VLAN2配置地址池,本池是global池的子池,将从global继承域后缀、DNS服务器、
wins服务器等可继承的参数)
Router3620 dhcp-config#network 192.168.2.0 255.255.255.0
Router3620 dhcp-config#default-router 192.168.2.254
设置不能用于动态分配的IP地址
在整个网络中,有些IP地址需要静态的指定给一些特定的设备,例如路由器的端口、DNS服务器、wins服务器以及VLAN的地址等。显然,这
些静态IP地址是不能用于动态分配的,这就需要将它们排除掉。其步骤如下:
Router3620 config#ip dhcp excluded-address 192.168.1.1 192.168.1.5 (IP地址192.168.1.1至192.168.1.5不能用于动态分配)
Router3620 config#ip dhcp excluded-address 192.168.1.254
IP地址192.168.1.254固定为VLAN1的地址,不能用于动态分配)
Router3620 config#ip dhcp excluded-address 192.168.2.254
IP地址192.168.2.254固定为VLAN2的地址,不能用于动态分配)
设置DHCP数据库代理
DHCP数据库代理是用于存储DHCP绑定信息的一台主机,它可以是FTP、TFTP或者是RCP服务器。当然,如有必要,你可以配置多个DHCP数据
库代理。同样,不配置DHCP数据库代理也是允许的,但这是以不能在DHCP数据库代理上存储地址冲突日志为代价的。如果我们不想配置数据库
代理,只要取消掉地址冲突日志的记录功能即可,操作命令如下:
Router3620 config#no ip dhcp conflict logging (取消地址冲突记录日志)
配置路由器的静态路由表
要使客户机能从用作DHCP Server的路由器中自动获得IP地址,首要条件就是各个VLAN中的客户机都能和路由器通信,因此首先就需要在路
由器中设置一个路由以使路由器能和各个客户机通信。我们可以按如下设置 :
Router3620 config#ip route 192.168.1.0 255.255.255.0 FastEthernet0
FastEthernet0为路由器和内网相连的以太网接口,该命令的作用是在以太网接口和VLAN1 192.168.1.254间建立一条静态路由。)
Router3620 config#ip route 192.168.2.0 255.255.255.0 FastEthernet0
(该命令在以太网接口和VLAN2 192.168.2.254间建立一条静态路由)
设置好之后,在配置模式中键入EXIT命令回到特权模式下,Ping一下VLAN1和VLAN2的IP地址 192.168.1.254和192.168.2.254 ,如果能
Ping通则表明配置正确,可以直接进入下一步的保存过程。
在交换机上为不同的VLAN指定DHCP服务器地址
这一步骤只须在不同的VLAN中通过设置IP HELPER-ADDRESS即可,指令如下:
switch>enable (进入交换机的特权模式)
Password
switch3550#config t (进入配置模式)
Enter configuration commands one per line. End with CNTL/Z.
switch3550 config#interface vlan1 (配置VLAN1)
switch3550 config-if#ip helper-address 192.168.1.4(指定DHCP服务器的地址,即路由器的地址)
switch3550 config#interface vlan2 (配置VLAN2)
switch3550 config-if#ip helper-address 192.168.1.4
对所有直接连到客户机的二层访问端口开启Portfast功能
要使客户机正确获得IP地址,就需要将和客户机相连的交换机端口的Portfast功能打开(Cisco 2950)。这里需要特别注意的是,只能在
连接一个单一客户机的二层端口上开启该功能,如果在一个连接到交换机或集线器的端口上开启该功就有可能引起广播风暴或“地址学习”问
题。开启Portfast功能的步骤如下:
switch2950#configure terminal
switch2950 config#interface interface-id
switch2950 config-if#spanning-tree portfast (开启portfast功能)
switch2950 config-if#end
经过以上规划与设置操作后,在路由器和交换机上的设置全部完成,剩下的工作只要在客户机上打开“自动获得IP地址”功能即可。对于
Windows 2000/2003 Server系统,还需要将“DHCP CLIENT”服务启用,否则在Windows 2000/2003 Server中将不能自动得到IP地址。
至此,通过启用Cisco路由器的DHCP Server功能与客户端DHCP的配合使用,使局域网VLAN中的主机自动获得IP地址,真正实现了DHCP服务
全部功能。相比在服务器上用windows/Linux 操作系统实现的DHCP服务器,从稳定性和功能上看,路由器实现的DHCP服务器要优越得多。