Tuesday, May 12, 2015

Xác định thủ phạm gây rối trong mạng LAN

Xác định thủ phạm gây rối trong mạng LAN

Giả sử các bạn đang quản lý một mạng LAN với vài chục PC, mọi thứ đều đang hoạt động bình thường… Rồi một buổi sáng, tất cả các PC trong LAN bỗng nhiên hoạt động chậm chạp khác thường, tốc độ truy xuất internet rất chậm, thậm chí không thể check mail được! Đầu tiên các Bác có thể nghi ngờ ngay đường truyền internet có vấn đề. Các Bác tắt mở điện Router kết nối internet, vẫn không hiệu quả. Rồi lần lượt đến việc khởi động lại PC, tắt mở điện switch… Nhưng mọi thứ vẫn không khá hơn sau các cố gắng trên.

Để xác định nguyên nhân của vấn đề, chúng ta nên làm theo phương pháp loại trừ. Trước tiên, các Bác nên dùng một PC nối trực tiếp vào Router Internet để thử đường truyền. Nếu nguyên nhân tại đây, hãy gọi dịch vụ của ISP. Trong trường hợp ngược lại nguyên nhân phần lớn do phía trong mạng LAN gây ra.

Thông thường các PC gửi dữ liệu trực tiếp với nhau bằng các gói tin unicast (là gói tin có địa chỉ đích đến là một số chính xác). Tuy nhiên, các dịch vụ trên PC lại dùng đến một số loại gói tin broadcast (ARP, …). Trên thực tế, nếu các PC hoạt động bình thường thì mỗi PC sẽ gửi các gói tin broadcast ở mức vừa phải nghĩa là khi có nhu cầu tìm MAC Add hoặc tìm NetBios name… thì chúng mới gửi broadcast.

Nhưng trong trường hợp một số PC bị cài đặt các “chương trình lạ” thường là virus thì chính các chương trình này liên tục gửi các gói tin broadcast để lây lan sang các PC khác trong mạng.

Đối với các gói tin unicast thì switch sẽ gửi chúng đến đúng port của máy nhận, trong khi đối với broadcast thì switch sẽ gửi chúng đến tất cả các port (flood). Các PC khi nhận broadcast đều phải xử lý gói tin này. Việc gửi quá nhiều broadcast trong LAN sẽ làm cho tốc độ liên lạc giữa các PC trong LAN chậm hẳn đi vì các gói tin broadcast liên tục gây ra xung đột (collision). Các gói tin broadcast này cũng làm cho các PC trong LAN phải xử lý liên tục.

Nếu đây là nguyên nhân của vấn đề thì chúng ta phải tìm cách xác định và cô lập các PC đã nhiễm virus và phát quá nhiều các gói tin broadcast. Với một vài công cụ để theo dõi các gói tin truyền trong mạng LAN, chúng ta có thể xác định các PC trên.

Trong bài này Em trình bày cách sử dụng chương trình wireshark để capture packet và xác định các PC không bình thường trong LAN.

1. Link download và hướng dẫn chương trình wireshark

 2. Cài đặt:



 

 



 
 

 
 
 
 


 


3. Giao diện chính của chương trình wireshark:


4. Chon card mạng để capture packet:



5. Capture packet:

 

6. Stop capture

 

7. Các gói tin broadcast dùng giao thức NBNS không bình thường vì liên tục được gửi với mật độ cao từ các PC 192.168.6.17 và 192.168.6.18

 

8. Trong cùng thời gian trên các gói tin broadcast NBNS từ PC 192.168.6.2 là hợp lý

 
9. Broadcast ARP từ 192.168.6.9, 192.168.6.11, 192.168.6.19 là quá nhiều:



 

10. Trong khi đó Broadcast ARP từ các PC khác ít hơn hẳn:



11. Trong mạng LAN sử dụng switch hỗ trợ giao thức STP (Spanning-tree) nên các gói tin BPDU liên tục gửi theo chu kỳ 2 giây:



Với một vài phân tích trên, chúng ta đã có thể khoanh vùng các PC có vấn đề (nghi bị lây nhiễm virus…). Ngoài ra, việc capture theo định kỳ và so sánh lại sẽ phản ánh tình trạng của mạng LAN. Hy vọng bài viết này sẽ giúp cho các bác có một công cụ để tìm hiểu sâu hơn về hoạt động của các PC trong mạng LAN.

Tìm hiểu về storm control

Tìm hiểu về storm control

Storm control là một tính năng của switch nhằm ngăn chặn những cơn bão (storm) broadcast, multicast hoặc unicast trong mạng LAN. Storm xảy ra khi có quá nhiều một loại gói tin nào đó (như ARP) trong mạng, khiến cho lượng traffic đột ngột tăng vọt và gây ra nghẽn. Không những thế, storm còn khiến cho CPU của các thiết bị mạng tăng cao vì phải xử lý quá nhiều gói tin cùng một lúc, do đó làm ảnh hưởng nghiêm trọng đến hiệu suất của các thiết bị. Nguyên nhân gây ra storm có thể đến từ việc người quản trị cấu hình sai, do một thiết bị nào đó bị lỗi, hoặc cũng có thể do user thực hiện kiểu tấn công từ chối dịch vụ (DOS).
Storm control hoạt động bằng cách giám sát các gói tin đi vào một port và xem thử gói tin đó là broadcast, multicast hay unicast. Switch đếm số lượng gói tin nhận được trong 1 giây và so sánh giá trị đó với một ngưỡng định trước. Nếu vượt quá ngưỡng này thì switch sẽ đưa ra hành động đối với traffic.
Storm control sử dụng một trong các phương pháp sau để đo tốc độ của traffic:
  • Phần trăm bandwidth trên tổng bandwidth của một port được dùng bởi broadcast, multicast hoặc unicast traffic.
  • Số gói tin broadcast, multicast hoặc unicast nhận được trong 1 giây (packets per second – pps).
  • Số bit broadcast, multicast hoặc unicast nhận được trong 1 giây (bits per second – bps).
  • Số lượng small frame nhận được trong 1 giây. Tính năng này được bật globally, nhưng ngưỡng cho các small frames được cấu hình trên mỗi port.
Với mỗi phương pháp, switch sẽ drop traffic nhận được trên port khi tốc độ traffic vượt quá ngưỡng trên (rising threshold). Traffic sẽ tiếp tục bị drop cho đến khi tốc độ traffic giảm xuống thấp hơn ngưỡng dưới (falling threshold). Nếu ta không cấu hình ngưỡng dưới thì traffic sẽ bị drop cho đến khi tốc độ traffic giảm xuống thấp hơn ngưỡng trên. Nói chung nếu như ta cấu hình ngưỡng trên càng cao thì storm control càng kém hiệu quả.
Chú ý: Khi tốc độ của multicast traffic vượt quá ngưỡng trên thì tất cả multicast traffic sẽ bị drop, ngoại trừ control traffic như BPDU và CDP.
Ta xem biểu đồ sau để hiểu rõ hơn hoạt động của storm control:
storm
Biểu đồ trên thể hiện hình thái của broadcast traffic nhận được trên một port trong một khoảng thời gian, tuy nhiên nó cũng có thể áp dụng cho multicast và unicast traffic. Trong hình trên, ta thấy broadcast traffic đã vượt ngưỡng trong khoảng thời gian giữa T1 đến T2 và giữa T4 đến T5. Khi một loại traffic vượt ngưỡng thì tất cả traffic loại đó sẽ bị drop ở khoảng thời gian tiếp theo. Do đó ta thấy broadcast traffic bị drop trong các khoảng thời gian theo sau T2 và T5. Tại khoảng thời gian tiếp sau đó (ví dụ T3), nếu broadcast traffic giảm xuống thấp hơn ngưỡng dưới (hoặc thấp hơn ngưỡng trên, nếu như ngưỡng dưới không được chỉ định) thì traffic sẽ được forward trở lại.
Storm control hoạt động bằng cách định nghĩa ra ngưỡng chặn và khoảng thời gian 1 giây để đo tốc độ traffic. Ngưỡng càng cao thì sẽ càng cho phép nhiều gói tin đi qua. Nếu ngưỡng bằng 100% có nghĩa là traffic không bị chặn. Ngược lại, ngưỡng bằng 0% đồng nghĩa với tất cả traffic đều bị chặn. Mặc định storm control bị tắt trên tất cả các port của Cisco switch, có nghĩa ngưỡng chặn là 100%.
Để bật storm control thì ta sẽ dùng lệnh storm-control cho port mà ta muốn bật tính năng này. Ví dụ ta có cấu hình như sau:
SW1(config)# interface FastEthernet0/41
SW1(config-if)# storm-control broadcast level pps 100 70
SW1(config-if)# storm-control action shutdown

Cấu hình trên có tác dụng bật storm control trên port f0/41 của SW1, quy định ngưỡng trên là 100 gói tin broadcast mỗi giây và ngưỡng dưới là 70 gói tin broadcast mỗi giây. Nếu ta không có lệnh storm-control action shutdown thì khi số lượng broadcast vượt quá 100 gói/giây thì traffic sẽ bị drop trong vòng 1 giây tiếp theo. Ở khoảng thời gian tiếp sau đó, nếu số lượng broadcast giảm xuống thấp hơn 70 gói/giây thì port sẽ forward traffic trở lại; nếu không thì traffic sẽ tiếp tục bị drop.
Khi ta cấu hình lệnh storm-control action shutdown thì switch sẽ thay đổi hành động mặc định từ drop traffic sang error disabled port đó.
storm3
Khi một port bị error disabled do storm control thì hoặc là ta phải bật lại thủ công bằng cáchshutdown rồi no shutdown port đó, hoặc là ta cấu hình thêm lệnh sau:
SW1(config)# errdisable recovery cause storm-control
SW1(config)# errdisable recovery interval 60

Lệnh trên có tác dụng tự động kích hoạt lại những port bị error disabled do storm control gây ra sau 60 giây (mặc định là 600 giây).
storm4
Để kiểm tra hoạt động của storm control, ta dùng lệnh show storm-control.
storm5
Cấu hình storm control cho multicast và unicast traffic cũng được thực hiện tương tự. Các bạn có thể xem thêm các tùy chọn khi cấu hình storm control tại link sau: Configuring Port-Based Traffic Control