Hôm nay mình chia sẻ một case ít gặp nhưng vẫn hay bị hỏi:
👉 cấu hình Port Security trên trunk port.
Bình thường port security dùng cho access port là chính, nhưng trong một số bài lab hoặc kịch bản đặc biệt thì trunk vẫn cấu hình được, miễn là làm đúng điều kiện.
Điều kiện bắt buộc
Muốn chạy port security trên trunk thì bắt buộc phải thỏa 2 điều kiện:
Hai lệnh không thể thiếu trên interface trunk là:
switchport mode trunk
switchport nonegotiate
Kiểm tra trunk giữa core-switch và switch-01
Vào core-switch kiểm tra interface kết nối với switch-01:
core-switch#show running-config interface gi1/0/1
Building configuration...
Current configuration : 111 bytes
!
interface GigabitEthernet1/0/1
description to_switch-01
switchport mode trunk
switchport nonegotiate
end
Nhìn là biết ngay: cổng đang trunk và DTP đã bị tắt.
Xem chi tiết trạng thái switchport
Check thêm cho chắc bằng lệnh:
core-switch#show interfaces Gi1/0/1 switchport
Chỉ cần để ý mấy dòng này là đủ:
Thế là ổn, trunk chạy đúng yêu cầu.
Cấu hình Port Security trên trunk
Scenario ở đây là:
Cấu hình trên core-switch như sau:
core-switch#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
core-switch(config)#interface Gi1/0/1
core-switch(config-if)#switchport port-security violation restrict
core-switch(config-if)#switchport port-security maximum 2
core-switch(config-if)#switchport port-security mac-address 1234.0000.c021
core-switch(config-if)#switchport port-security mac-address 1234.0000.c022
core-switch(config-if)#switchport port-security
core-switch(config-if)#end
Dùng restrict để tránh bị shutdown cả trunk.
Verify port security
Check lại trạng thái port security:
core-switch#show port-security interface gi1/0/1
Kết quả thấy:
Xem bảng MAC:
core-switch#show port-security address
Hai MAC của client-02 đã nằm trong bảng, đúng như mong đợi.
Test thực tế
Client-02 → Client-03
Ping từ interface chính: OK
Ping từ sub-interface ens2.1: OK
Client-01 → Client-03
Ping FAIL do MAC không được phép.
Trên core-switch xuất hiện log vi phạm:
%PORT_SECURITY-2-PSECURE_VIOLATION
MAC 1234.0000.c011 – VLAN 10 – Gi1/0/1
Client-01 → Client-02
Ping lại OK vì client-02 có MAC hợp lệ.
Nhận xét nhanh
Cấu hình port security trên trunk chạy được, nhưng:
👉 Khuyến nghị:
Port security nên đặt ở access port, càng gần client càng tốt.
Trunk chỉ nên dùng cho lab, học tập, hoặc case rất đặc biệt.
👉 cấu hình Port Security trên trunk port.
Bình thường port security dùng cho access port là chính, nhưng trong một số bài lab hoặc kịch bản đặc biệt thì trunk vẫn cấu hình được, miễn là làm đúng điều kiện.
Điều kiện bắt buộc
Muốn chạy port security trên trunk thì bắt buộc phải thỏa 2 điều kiện:
- Trunk phải chạy tĩnh, không thương lượng
- Disable DTP
Hai lệnh không thể thiếu trên interface trunk là:
switchport mode trunk
switchport nonegotiate
Kiểm tra trunk giữa core-switch và switch-01
Vào core-switch kiểm tra interface kết nối với switch-01:
core-switch#show running-config interface gi1/0/1
Building configuration...
Current configuration : 111 bytes
!
interface GigabitEthernet1/0/1
description to_switch-01
switchport mode trunk
switchport nonegotiate
end
Nhìn là biết ngay: cổng đang trunk và DTP đã bị tắt.
Xem chi tiết trạng thái switchport
Check thêm cho chắc bằng lệnh:
core-switch#show interfaces Gi1/0/1 switchport
Chỉ cần để ý mấy dòng này là đủ:
- Operational Mode: trunk
- Negotiation of Trunking: Off
Thế là ổn, trunk chạy đúng yêu cầu.
Cấu hình Port Security trên trunk
Scenario ở đây là:
- Chỉ cho phép client-02
- Client-02 có 2 MAC
- MAC nào khác đi qua trunk là bị chặn
Cấu hình trên core-switch như sau:
core-switch#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
core-switch(config)#interface Gi1/0/1
core-switch(config-if)#switchport port-security violation restrict
core-switch(config-if)#switchport port-security maximum 2
core-switch(config-if)#switchport port-security mac-address 1234.0000.c021
core-switch(config-if)#switchport port-security mac-address 1234.0000.c022
core-switch(config-if)#switchport port-security
core-switch(config-if)#end
Dùng restrict để tránh bị shutdown cả trunk.
Verify port security
Check lại trạng thái port security:
core-switch#show port-security interface gi1/0/1
Kết quả thấy:
- Port Security: Enabled
- Port Status: Secure-up
- Maximum MAC Addresses: 2
- Configured MAC Addresses: 2
Xem bảng MAC:
core-switch#show port-security address
Hai MAC của client-02 đã nằm trong bảng, đúng như mong đợi.
Test thực tế
Client-02 → Client-03
Ping từ interface chính: OK
Ping từ sub-interface ens2.1: OK
Client-01 → Client-03
Ping FAIL do MAC không được phép.
Trên core-switch xuất hiện log vi phạm:
%PORT_SECURITY-2-PSECURE_VIOLATION
MAC 1234.0000.c011 – VLAN 10 – Gi1/0/1
Client-01 → Client-02
Ping lại OK vì client-02 có MAC hợp lệ.
Nhận xét nhanh
Cấu hình port security trên trunk chạy được, nhưng:
- Không phải best practice
- Dễ gây drop traffic ngoài ý muốn
- Khó troubleshoot nếu mạng lớn
- Tốn công bảo trì MAC
👉 Khuyến nghị:
Port security nên đặt ở access port, càng gần client càng tốt.
Trunk chỉ nên dùng cho lab, học tập, hoặc case rất đặc biệt.