导语:
在企业中,数据的安全一向是重要的,为了防止客户端私接小路由影响企业内部网络,华为企业交换机有这样的命令
Dhcp snooping
思路:
合法的DHCP客户端使用,dhcp snooping trusted
不合法的DHCP客户端使用,dhcp snooping enable
实验:
我们假设这样的一个场景,在企业网络架构中。核心交换机(CORE)下接了接入交换机(ACCESS),然后有非法客户端DHCP交换机(UNTRUST)接了接入交换机(ACCESS)的G0/0/24端口,拓补图如下。
实验思路:
CORE:创建VLAN 10,VLAN 20,分别配置VLAN10 ,VLAN 20的网段,为192.168.10.254,192.168.20.254,在G0/0/1端口做trunk,透传VLAN 10 ,20.
ACCESS:创建vlan10,20,使得PC1和PC2分别属于VLAN 10 ,20 ,并在G0/0/3,G0/0/24端口做trunk,透传VLAN10 ,20
UNTRUST:创建vlan10 ,20,创建VLANIF地址池,vlan10,192.168.100.254,vlan20 192.168.200.254,在G0/0/24端口下透传VLAN10,vlan20
实验目的:
当同时存在两个DHCP客户端的时候,且地址池都是VLAN10或VLAN20的地址池,那么PC获取地址的时候默认获取哪个地址池的呢?显然是可以获取到仿冒客户端的IP地址的,这也是我们不希望看到的。
我们尝试用dhcp snooping enbale等命令,验证被trust的端口才能合法获取IP地址,untrust端口获取不到它的地址。
本次实验上最终实现的就是,当ACCESS,G0/0/3端口是,dhcp snooping trusted 的时候,G0/0/24端口是dhcp snooping enable 的时候,PC1准确的获取到了CORE核心DHCP客户端的地址,而不是非法的仿冒客户端地址。
下面请看详细代:
sysname ACCESS
#
undo info-center enable
#
vlan batch 10 20
#
dhcp enable
#
dhcp snooping enable
#
interface GigabitEthernet0/0/1
port link-type access
port default vlan 10
dhcp snooping enable
#
interface GigabitEthernet0/0/2
port link-type access
port default vlan 20
#
interface GigabitEthernet0/0/3
port link-type trunk
undo port trunk allow-pass vlan 1
port trunk allow-pass vlan 10 20
dhcp snooping trusted
#
interface GigabitEthernet0/0/24
port link-type trunk
undo port trunk allow-pass vlan 1
port trunk allow-pass vlan 10 20
dhcp snooping enable
#
#
sysname CORE
#
undo info-center enable
#
vlan batch 10 20
#
dhcp enable
#
interface Vlanif10
ip address 192.168.10.254 255.255.255.0
dhcp select interface
#
interface Vlanif20
ip address 192.168.20.254 255.255.255.0
dhcp select interface
#
interface GigabitEthernet0/0/1
port link-type trunk
undo port trunk allow-pass vlan 1
port trunk allow-pass vlan 10 20
#
UNTRUST:
#
sysname UNTRUST
#
undo info-center enable
#
vlan batch 10 20
#
#
dhcp enable
#
interface Vlanif10
ip address 192.168.100.254 255.255.255.0
dhcp select interface
#
interface Vlanif20
ip address 192.168.200.254 255.255.255.0
dhcp select interface
#
interface GigabitEthernet0/0/24
port link-type trunk
undo port trunk allow-pass vlan 1
port trunk allow-pass vlan 10 20
#
我们注意到,在CORE和UNTRUNST的DHCP客户端同时存在VLAN10,20的地址池时,
CORE交换机上面的vlan10,vlan20,网段分别是192.168.10.254,192.168.20.254,
untrust交换机上面的VLAN10,VLAN20的网关分别是192.168.100.254,192.168.200.254.
我们做实验时,默认不开启DHCPsnoop ing的时候,同样是VLAN10,PC端获取到的居然时仿冒客户端的IP地址,这不是我们希望看到的,我们希望PC能从核心客户端获取地址,
我们将上联核心交换机的端口改为dhcp snooping trust ,其他所有端口都开启dhcp snooping,然后PC再也不会获取到仿冒客户段的IP地址,是不是很神奇。
TIP:值得注意的是,在接入交换机上,我们应该将所有的端口都使能dhcp snooping enable,而不是全局使能
我们可以用这样的命令批量使得全部端口变成dhcp snooping enable,然后某个信任端口单独修改,去能dhcp snooping ,然后修改端口为trust.
#port-grop A //创建一个名”A”的组
#portgroup meber G0/0/1 to G0/0/24 //组成员是,G0/0/1至G0/0/24
#dhcp snooping enable //使能dhcp snooping