3 Phương Pháp Cách Ly Traffic Trong Cùng VLAN

Trong quản trị mạng, để chặn traffic giữa các dải IP khác nhau (inter-VLAN), chúng ta thường dùng ACL trên Router hoặc Firewall. Tuy nhiên, khi cần cách ly các thiết bị ngay cả khi chúng ở trong cùng một VLAN (intra-VLAN), chúng ta cần đến các kỹ thuật chuyên biệt hơn. Dưới đây là ba phương pháp hiệu quả để thực hiện điều đó.

1. Protected Ports (Cổng được bảo vệ)

Diễn giải

Đây là phương pháp đơn giản nhất để cách ly các thiết bị trên cùng một switch. Khi một cổng được cấu hình là "protected", traffic từ cổng đó sẽ không thể đi đến các cổng "protected" khác. Tuy nhiên, nó vẫn có thể giao tiếp với các cổng không được bảo vệ (unprotected ports), thường là cổng uplink lên router hoặc server.

Ưu điểm: Cực kỳ dễ cấu hình.

Nhược điểm: Chỉ có tác dụng trong phạm vi một switch.

Mô phỏng

Cấu hình mẫu (Cisco IOS)

! Giả sử tất cả các cổng đã ở trong VLAN 100
SwitchA# configure terminal

! Cấu hình các cổng kết nối tới PC là protected
SwitchA(config)# interface range FastEthernet0/1 - 2
SwitchA(config-if-range)# switchport protected

! Cổng nối lên router (unprotected) không cần cấu hình gì thêm
SwitchA(config-if-range)# end

2. VACL (VLAN Access Control List)

Diễn giải

VACL, hay VLAN Access Map, là một bộ lọc mạnh mẽ hơn. Thay vì áp dụng cho từng cổng, VACL được áp dụng cho toàn bộ traffic bên trong một VLAN, kể cả khi VLAN đó trải dài qua nhiều switch. Nó hoạt động như một ACL nhưng ở Layer 2 và có thể lọc dựa trên địa chỉ IP, MAC, v.v.

Ưu điểm: Linh hoạt, có thể tạo chính sách phức tạp, hoạt động trên toàn bộ VLAN.

Nhược điểm: Cấu hình phức tạp hơn Protected Ports.

Mô phỏng

Cấu hình mẫu (Cisco IOS)

! Bước 1: Tạo access-list để định nghĩa traffic cần chặn
SwitchA(config)# ip access-list extended BLOCK_INTRA_VLAN
SwitchA(config-ext-nacl)# deny ip 192.168.100.0 0.0.0.255 192.168.100.0 0.0.0.255
SwitchA(config-ext-nacl)# permit ip any any ! Cho phép các traffic khác

! Bước 2: Tạo vlan access-map để sử dụng access-list
SwitchA(config)# vlan access-map VACL_MAP 10
SwitchA(config-access-map)# match ip address BLOCK_INTRA_VLAN
SwitchA(config-access-map)# action drop

SwitchA(config)# vlan access-map VACL_MAP 20
SwitchA(config-access-map)# action forward

! Bước 3: Áp dụng access-map vào VLAN 100
SwitchA(config)# vlan filter VACL_MAP vlan-list 100

3. Private VLAN (PVLAN)

Diễn giải

Đây là giải pháp toàn diện và mạnh mẽ nhất. Private VLAN chia một VLAN gốc (Primary) thành nhiều VLAN phụ (Secondary) với các quy tắc giao tiếp nghiêm ngặt. Có 3 loại cổng: Promiscuous (nối router, nói chuyện với tất cả), Isolated (chỉ nói chuyện với Promiscuous), và Community (nói chuyện với nhau trong cùng community và với Promiscuous).

Ưu điểm: Cách ly triệt để, bảo mật cao, giải pháp chuyên nghiệp.

Nhược điểm: Cấu hình phức tạp nhất.

Mô phỏng

Cấu hình mẫu (Cisco IOS)

! Bước 1: Tạo các VLAN
Switch(config)# vtp mode transparent
Switch(config)# vlan 501
Switch(config-vlan)#  private-vlan isolated
Switch(config-vlan)# vlan 502
Switch(config-vlan)#  private-vlan community
Switch(config-vlan)# vlan 500
Switch(config-vlan)#  private-vlan primary
Switch(config-vlan)#  private-vlan association 501,502

! Bước 2: Cấu hình cổng host
Switch(config)# interface Fa0/1 ! Isolated port
Switch(config-if)# switchport mode private-vlan host
Switch(config-if)# switchport private-vlan host-association 500 501

Switch(config)# interface Fa0/2 ! Community port
Switch(config-if)# switchport mode private-vlan host
Switch(config-if)# switchport private-vlan host-association 500 502

! Bước 3: Cấu hình cổng Promiscuous
Switch(config)# interface Gi0/1
Switch(config-if)# switchport mode private-vlan promiscuous
Switch(config-if)# switchport private-vlan mapping 500 501,502