Cấu hình rate-limit bão DNS query trên router cisco

Mô hình

Trong bài này, Linux sẽ đóng vai trò nguồn phát tán bão DNS hướng tới DNS-Server nằm sau Router. Ta không chặn tại Server, mà chặn ngay tại cổng e0/0 của Router trung gian.

Trên linux dùng lệnh để sinh DNS query:

while true; do dig @10.1.1.254 netflix.com +short; done

!Trong đó 10.1.1.254 là IP của DNS server

Linux sẽ sinh ra 1 đống bản tin DNS query

Cấu hình siết DNS

Bước đầu tiên là nhận diện đúng lưu lượng DNS (UDP Port 53) bằng ACL, sau đó đưa vào Policy để giới hạn mức 8Kbps (khoảng 10-15 gói/s).

access-list 100 permit udp any any eq 53

!

class-map match-all CLASS-DNS-STORM

match access-group 100

!

policy-map HAINM_DNS

class CLASS-DNS-STORM

police 8000 1500 conform-action transmit exceed-action drop

!Nghĩa là cho tốc độ là 8000bit/s (8Kbs) còn BC là 1500Byte; ứng với khoảng 10-15 gói DNS được qua mỗi second

interface e0/0

service-policy input HAINM_DNS

Nên dùng Policing ở chiều input giúp Router loại bỏ rác ngay lập tức, tiết kiệm tài nguyên CPU và băng thông cho các chặng kế tiếp trong mạng nội bộ.

Check lại: Siết DNS và xem Router chặn

Show lệnh dưới quan sát số gói DNS bị drop

conformed: Số gói DNS được phép tới Server.

exceeded/drop: các gói vượt ngưỡng bị Router drop.

 

Bài viết cùng danh mục