DHCP fail khi bật DHCP Snooping trust trên uplink EtherChannel Cisco
DHCP fail khi bật DHCP Snooping trust trên uplink EtherChannel Cisco
Trên một số dòng Cisco Catalyst 9200/9300/9400/9500/9600 chạy IOS XE 16.6.2, DHCP có thể bị lỗi khi bật DHCP Snooping và cấu hình ip dhcp snooping trust trên uplink EtherChannel đi về DHCP Server hoặc switch tầng trên.
Hiện tượng thường gặp là client gửi DHCP request nhưng không nhận được IP, dù cấu hình tổng thể vẫn đúng về mặt nguyên tắc. Lỗi này chủ yếu xuất hiện khi uplink là Port-channel, còn nếu dùng uplink vật lý thông thường thì thường không gặp.
Điều kiện phát sinh
-
Đã bật DHCP Snooping
-
Uplink dùng EtherChannel / Port-channel
-
Cấu hình DHCP Snooping trust trên interface Port-channel
Ảnh hưởng
-
Client không nhận được IP từ DHCP Server
-
DHCP hoạt động không ổn định sau khi link member trong EtherChannel bị flap
-
Dễ nhầm với lỗi DHCP relay, VLAN hoặc server
Workaround
- Có thể xử lý tạm thời bằng cách bỏ trust rồi cấu hình lại trên Port-channel:
interface Port-channel10 no ip dhcp snooping trust ip dhcp snooping trust
Trong một số trường hợp, thao tác này giúp DHCP hoạt động lại. Tuy nhiên, nếu member link trong EtherChannel flap, lỗi có thể tái diễn.
- Ngoài ra có thể dùng EEM để tự động toggle trust nếu cần workaround nhanh trong môi trường production.
event manager applet DHCPsnooping-toggle event timer countdown time 300 action 001 syslog msg "Toggling DHCPsnooping on Port-channel" action 010 cli command "enable" action 020 cli command "conf t" action 030 cli command "interface po <#>" action 040 cli command "no ip dhcp snooping trust" action 050 cli command "ip dhcp snooping trust" action 060 cli command "end"
-Thay thế <#> bằng số port-channel có trust.
Các bạn cũng có thể nâng cấp lên các phiên bản IOS mới hơn để khắc phục lỗi này.
Khuyến nghị
Đây là lỗi mang tính hành vi phần mềm, không phải do nguyên tắc triển khai DHCP Snooping sai. Về lâu dài, nên kiểm tra bug tương ứng và nâng cấp IOS XE thay vì chỉ xử lý thủ công.
Kết luận
Nếu bạn triển khai DHCP Snooping trên uplink EtherChannel của Catalyst đời mới và gặp hiện tượng client không lấy được IP, hãy kiểm tra ngay khả năng liên quan tới DHCP Snooping trust trên Port-channel. Với các hệ thống đang chạy IOS XE 16.6.2, đây là lỗi cần đặc biệt lưu ý.
