目前网络中以太网技术的应用非常广泛。然而,各种网络攻击的存在(例如针对ARP、DHCP等协议的攻击),不仅造成了网络合法用户无法正常访问网络资源,而且对网络信息安全构成严重威胁,因此以太网交换的安全性越来越重要。
本系列通过介绍常见的以太网交换安全技术,包括端口隔离、端口安全、MAC地址漂移检测、风暴控制、端口限速、MAC地址表安全、DHCP Snooping及IP Source Guard等常见技术,以提高对以太网交换安全的理解和认识。
- 以太交换网络中为了实现报文之间的二层隔离,用户通常将不同的端口加入不同的VLAN,实现二层广播域的隔离。
- 大型网络中,业务需求种类繁多,只通过VLAN实现报文二层隔离,会浪费有限的VLAN资源。
如下图所示,由于某种业务需求,PC1与PC2虽然属于同一个VLAN ,但是要求它们在二层不能互通(但允许三层互通),PC1与PC3在任何情况下都不能互通,但是VLAN 3里的主机可以访问VLAN 2里的主机。 那么该如何解决这个问题呢?
端口隔离技术概述
采用端口隔离功能,可以实现同一VLAN内端口之间的隔离。用户只需要将端口加入到隔离组中,就可以实现隔离组内端口之间二层数据的隔离。端口隔离功能为用户提供了更安全、更灵活的组网方案。
端口隔离技术原理
(1) 双向隔离
同一端口隔离组的接口之间互相隔离,不同端口隔离组的接口之间不隔离。端口隔离只是针对同一设备上的端口隔离组成员,对于不同设备上的接口而言,无法实现该功能。
(2) 单向隔离
为了实现不同端口隔离组的接口之间的隔离,可以通过配置接口之间的单向隔离来实现。缺省情况下,未配置端口单向隔离。
(3) L2(二层隔离三层互通)
隔离同一VLAN内的广播报文,但是不同端口下的用户还可以进行三层通信。缺省情况下,端口隔离模式为二层隔离三层互通。
(4) ALL(二层三层都隔离)
同一VLAN的不同端口下用户二三层彻底隔离无法通信。
采用二层隔离三层互通的隔离模式时,在VLANIF接口上使能VLAN内Proxy ARP功能,配置arp-proxy inner-sub-vlan-proxy enable,可以实现同一VLAN内主机通信。
端口隔离配置命令
(1) 使能端口隔离功能
[Huawei-GigabitEthernet0/0/1] port-isolate enable [ group group-id ]
缺省情况下,未使能端口隔离功能。如果不指定group-id参数时,默认加入的端口隔离组为1。
(2) (可选)配置端口隔离模式
Huawei] port-isolate mode { l2 | all }
缺省情况下,端口隔离模式为L2。
- L2 端口隔离模式为二层隔离三层互通。
- all 端口隔离模式为二层三层都隔离
(3) 配置端口单向隔离
[Huawei-GigabitEthernet0/0/1] am isolate {interface-type interface-number }&<1-8>
am isolate命令用来配置当前接口与指定接口的单向隔离。在接口A上配置与接口B之间单向隔离后,接口A发送的报文不能到达接口B,但从接口B发送的报文可以到达接口A。缺省情况下,未配置端口单向隔离。
端口隔离配置举例
如图所示:PC1、PC2和PC3属于VLAN 2,通过配置端口隔离,使PC3可以与PC1、PC2通信,但是PC1和PC2之间无法通信。
Switch配置如下:
[Switch] vlan 2
[Switch] port-isolate mode all
[Switch] interface GigabitEthernet 0/0/1
[Switch-GigabitEthernet0/0/1] port link-type access
[Switch-GigabitEthernet0/0/1] port default vlan 2
[Switch-GigabitEthernet0/0/1] port-isolate enable group 2
[Switch] interface GigabitEthernet 0/0/2
[Switch-GigabitEthernet0/0/2] port link-type access
[Switch-GigabitEthernet0/0/2] port default vlan 2
[Switch-GigabitEthernet0/0/2] port-isolate enable group 2
[Switch] interface GigabitEthernet 0/0/3
[Switch-GigabitEthernet0/0/3] port link-type access
[Switch-GigabitEthernet0/0/3] port default vlan 2
- display port-isolate group { group-id | all },查看端口隔离组的配置。
- clear configuration port-isolate命令一键式清除设备上所有的端口隔离配置。
- port-isolate exclude vlan命令配置端口隔离功能生效时排除的VLAN。
端口隔离配置验证
(1) 通过display port-isolate group group-number查看端口隔离组中的端口
[SW]display port-isolate group 2
The ports in isolate group 2:
GigabitEthernet0/0/1 GigabitEthernet0/0/2
(2) 验证同一端口隔离组下主机网络不能互通。