概述

网络内配置了VLAN,VLAN能隔离广播,而DHCP协议使用广播,也就是说,默认情况下DHCP协议只能在VLAN内使用,DHCP服务器在VLAN30中,就只有VLAN30内的客户机能从DHCP服务器那里获取IP地址,如果VLAN10或 VLAN20的客户机也需要通过这台DHCP服务器来获取IP地址,该怎么办呢?


解决思路

1、为每个网段安装一台DHCP服务器,但这种方式存在资源上的浪费,而且不利于管理

2、在连接不同网段的设备上开启DHCP中继功能,将DHCP这种特殊的广播信息在VLAN之间转发,让其他VLAN的客户机也能从DHCP服务器那里获得IP地址(类似于中间代理)


实验环境

  • 系统环境:centos6.5

  • GNS3模拟器

  • 宿主机IP地址:192.168.1.20

  • 使用的rpm包:dhcp-4.1.1-38.P1.el6.centos.x_86_64.rpm

1.png

搭建步骤

1、SW2交换机上配置

SW2#configure terminal
SW2(config)#no ip routing #关闭路由功能
SW2(config)#vlan 10,20,30 #创建vlan10,20,30

//将f1/1端口划分到vlan10

SW2(config)#inter f1/1
SW2(config-if)#switchport mode access
SW2(config-if)#switchport access vlan 10
SW2(config-if)#exit

//将f1/2端口划分到vlan20

SW2(config)#inter f1/2
SW2(config-if)#switchport mode access
SW2(config-if)#switchport access vlan 20
SW2(config-if)#exit

//将f1/3端口划分到vlan30

SW2(config)#inter f1/3
SW2(config-if)#switchport mode access
SW2(config-if)#switchport access vlan 30
SW2(config-if)#exit

//将f1/1端口配置trunk

SW2(config)#inter f1/0
SW2(config-if)#switchport mode trunk
SW2(config-if)#switchport trunk encapsulation dot1q

 

2、SW1三层交换机上配置

//将f1/0端口配置trunk

SW1(config)#inter f1/0
SW1(config-if)#no shutdown 
SW1(config-if)#switchport mode trunk
SW1(config-if)#switchport trunk encapsulation dot1q
SW1(config-if)#exit
SW1(config)#vlan 10,20,30
SW1(config-if)#exit

//添加IP

SW1(config)#int vlan 10
SW1(config-if)#no shutdown
SW1(config-if)#ip add 192.168.10.1 255.255.255.0
SW1(config-if)#exit
SW1(config)#int vlan 20
SW1(config-if)#no shutdown
SW1(config-if)#ip add 192.168.20.1 255.255.255.0
SW1(config-if)#exit
SW1(config)#int vlan 30
SW1(config-if)#no shutdown
SW1(config-if)#ip add 192.168.1.1 255.255.255.0
SW1(config-if)#exit

 

3、SW1配置中继转发、指向DHCP服务器

SW1(config)#inter vlan 10
SW1(config-if)#ip helper-address 192.168.1.20
SW1(config-if)#exit
SW1(config)#inter vlan 20
SW1(config-if)#ip helper-address 192.168.1.20

 

4、DHCP服务器配置

[root@raid ~]# vim /etc/dhcp/dhcpd.conf

1.png

[root@raid ~]# /etc/init.d/dhcpd restart #重启dhcp服务


5、测试(打开GNS3模拟器VPCS)

1.png