Test thử bắn gói vào CPU router xem có drop không (COPP)
Trên router có 2 luồng xử lý hoàn toàn tách biệt:
- Data Plane (Forwarding): ví dụ các gói http, https từ user ra internet. Phần này do chip ASIC và CEF xử lý, nhanh khủng khiếp và không cần đẩy lên CPU tổng.
- Control Plane: Gói tin gửi ĐÍCH DANH vào IP của router (Ping, SSH, SNMP, OSPF, BGP, ARP). Tất cả những gói này bắt buộc phải đưa lên CPU chính để bóc ra xử lý. Nếu quá nhiều gói rác bắn vào là CPU bị cao tải; dễ drop các gói quan trọng như routing update, SSH mgmt...
Trong bài này ta sẽ test bắn gói sau đó dùng tính năng CoPP để chặn các gói rác khi quá ngưỡng.
Sơ đồ mạng :

Con Linux đóng vai trò máy bắn traffic độc hại
Cấu hình CoPP trên R1:
|
ip access-list extended ACL-COPP-ROUTING permit ospf any any ## Bắt gói tin định tuyến OSPF (IP proto 89) permit eigrp any any ## Bắt gói tin EIGRP (IP proto 88) permit tcp any eq bgp any ## Bắt gói BGP nguồn port 179 permit tcp any any eq bgp ## Bắt gói BGP đích port 179 ! ip access-list extended ACL-COPP-MGMT permit tcp any any eq 22 ## Bắt gói quản trị SSH permit udp any any eq snmp ## Bắt gói giám sát SNMP ! ip access-list extended ACL-COPP-ICMP permit icmp any any ## Bắt toàn bộ gói Ping và Traceroute ! class-map match-all CM-COPP-ROUTING match access-group name ACL-COPP-ROUTING ! class-map match-all CM-COPP-MGMT match access-group name ACL-COPP-MGMT ! class-map match-all CM-COPP-ICMP match access-group name ACL-COPP-ICMP ! policy-map PM-COPP class CM-COPP-ROUTING police 1000000 conform-action transmit exceed-action transmit ## Ưu tiên 1 Mbps, vượt ngưỡng vẫn cho qua, không bao giờ drop class CM-COPP-MGMT police 256000 conform-action transmit exceed-action drop ## Cho 256 kbps, vượt ngưỡng thì drop chống brute-force class CM-COPP-ICMP police 8000 conform-action transmit exceed-action drop ## Chỉ cho 8 kbps (~1 gói/s), vượt ngưỡng là drop thẳng tay ! control-plane service-policy input PM-COPP ## Áp policy vào cổng vào của Control Plane CPU |
Trên linux đặt IP cho eth0
|
ip addr add 10.1.2.2/24 dev eth0 ## Đặt IP cho Linux ip link set eth0 up ## Bật card mạng |
TEST BẮN GÓI:
Từ Linux, bắn thử 5 gói ping với tần suất mặc định (1 giây/gói):

Kiểm tra bộ đếm CoPP trên R1 bằng lệnh show policy-map control-plane:

=> THÀNH CÔNG: không gói nào bị drop khi dưới ngưỡng
Từ Linux, bắn thử 50 gói mỗi giây
ping -c 50 -i 0.02 10.1.2.1

Quay lại R1 kiểm tra bộ đếm chính sách CoPP bị drop:

=> BẢO VỆ THÀNH CÔNG vì đã drop các gói quá ngưỡng
Tiếp theo test thử bắn gói OSPF (được ưu tiên) xem có drop ko
|
localhost:~# python3 -c " import socket s = socket.socket(socket.AF_INET, socket.SOCK_RAW, 89) for _ in range(10): s.sendto(b'\x02\x01\x00\x18' + b'\x00'*20, ('10.1.2.1', 0)) print('Sent 10 OSPF packets') " Sent 10 OSPF packets |

=> Toàn bộ 10 gói OSPF lọt vào Class-map CM-COPP-ROUTING, conformed 10 packets, không rớt gói nào.
Tương tự thử quét cổng 22
|
localhost:~# nc -zv 10.1.2.1 22 10.1.2.1 (10.1.2.1:22) open |
Trên R1 cũng ngon , không drop

Vậy là các gói routing, mgmt như SSH là đã ko bị drop dù bắn ào ạt vào
Bài viết cùng danh mục
Danh mục bài viết
- Juniper
- Tài Nguyên LAB
- Wireshark
- FeedBack
- Multicast lab
- Security Infa
- Checkpoint
- Lab OSPF
- Router Logging
- LAB CCNA CCNP CÓ GIẢI
- DMVPN
- Mikrotik
- MPLS
- PFSENSE
- DUMP CCNA
- Điều khoản
- F5 LTM
- MONITOR NETWORK
- TOOL HỌC CCNA
- TƯ VẤN KHÓA HỌC
- PYTHON SCRIPT HỮU ÍCH
- IPv6
- Quality of Service
- QoS
- VXLAN
- SDWAN
- ISE
- Fortigate
- BGP
- MINH HỌA KHÁI NIỆM TRONG CCNA
- Bài tập CCNA CCNP (support Học viên)
- Phỏng vấn IT chứng khoán
- Layer2 CCNA
- Bài tập thiết kế mạng CCNA
- Linux
- EEM SCRIPT
- ASA LAB
- DHCP
- NEXUS
- Giao thức IS IS
- ANSIBLE
- PALO ALTO
- ARUBA SWITCH
- CÂU HỎI TỪ ĐỀ THI THẬT
- Firepower Cisco
- MERAKI CONFIG
- VRF
- AWS SIMULATOR CHO NETWORK ADMIN
- ĐỊNH HƯỚNG NGHỀ NGHIỆP
- Troubleshoot lỗi mạng
- TRẮC NGHIỆM THỰC TẾ
- TÀI NGUYÊN LÀM LAB
- Giải thích lí thuyết dễ hiểu
- TỔNG ĐÀI
- WIFI
- CEH cho network admin
- CCNA HIỆU ỨNG ĐỘNG