++

...+

Theขี้ฝุ่นริมทาง

วันพฤหัสบดีที่ 18 มิถุนายน พ.ศ. 2552

วิธีตรวจว่าเครื่องไหนใช้ Bit Torrent

วิธีตรวจว่าเครื่องไหนใช้ Bit Torrent

โปรแกรมตรวจสอบการใช้ Bit Torrent น่าจะมีประโยชน์สำหรับ
ผู้ที่ต้องดูแลเครื่องนะเครับ ไว้ตรวจว่าเครื่องไหนใช้งาน Bit Torrent
ในเครือข่ายของเรา

ข้อมูล
ตรวจสอบ ที่ระดับ packet แบบอัตโนมัติ สำหรับผู้ที่ใช้ Server เป็น ลีนุกซ์
1. Download ที่ http://efaxthai.com/2009/linux/autodetect.zip
2. จากนั้นทำการ unzip ไฟล์ ด้วยคำสั่ง "unzip autodetect.zip"
3.1 เรียกใช้งานโปรแกรม ./autodetect -i eth1 -n 192.168.1. > /dev/null &
3.2 พารามิเตอร์ -i ตามด้วย Network Device หรือ LAN card
ที่เราต้องการตรวจ เช่น กรณี กลุ่ม Wireless Control Software หรือ
Gateway Control จะมี LAN card 1 ออกอินเทอร์เน็ต อีก 1 เป็นเน็ตภายใน
เราก็กำหนดเป็น LAN card ที่กลุ่มภายในเพื่อให้ ตรวจดูว่า
มีเครื่องภายในเครือข่ายบ้างที่ใช้งาน Torrent หรือ ปล่อย Packet จำพวก
Torrent ออกมาภายในเครือข่าย
3.3 พารามิเตอร์ -n เป็นการบอกขอบเขตของเครือข่ายที่ต้องการตรวจหา
เช่นต้องการตรวจทุกเครื่องที่เป็น 192.168.1 หรือ ทุกเครื่องที่เป็น
192.168 หรือเฉพาะเครื่องเดียว 192.168.1.123 เป็นต้น
3.4 หากไม่สั่งให้ทำงานแบบ background mode โปรแกรมจะแสดงผลลัพธ์ออกทางหน้าจอ
4. ถ้าระบบตรวจพบแพกเก็ตที่เป็น Torrent จะแสดงผลลัพธ์ หมายเลข IP และ
Mac ของเครื่อง เก็บไว้ที่ /tmp/chkip เพื่อนำไปใช้ประโยชน์ ตามต้องการ
เช่น นำไปทำการ Block หรือ จำกัด Bandwidth ต่อไป

ข้อมูลเพิ่มเติม ด้านเทคนิค
ข้อมูล packet สำหรับงานประเภท Torrent ใช้งานทั้ง TCP และ UDP มี
โครงสร้าง 2 รูปแบบ คือ Info กับ Data (กำหนดเอง
โดยสังเกตุจากผลลัพธ์ของงาน) เนื่องจาก Data
(คือตัวข้อมูลที่เป็นเนื้อความ) ไม่ส่วนใดที่จะพอหา Pattern สำหรับจะทำ
Regular expression เรียกง่ายๆ คือไม่มีรูปแบบตายตัวอย่างใดเลย
และยังมีโครงสร้างเหมือนหรือใกล้เคียงกับโปรแกรม P2P ประเภทอื่นๆ
ที่ใช้กัน ระบบจึงสนใจเฉพาะส่วน Infomation
(คือส่วนที่ใช้ระหว่างการติอต่อสื่อสาร) โดย Infomation มี 2
ชุดที่สำคัญสำหรับ Torrent คือ 1. สำหรับติดต่อสื่อสารกับ Tracker และ 2.
ติดต่อสื่อสารระหว่าง Peer
จากการทดสอบพบว่า เมื่อเริ่มใช้งาน Torrent จะมี packet ประเภท Info
ออกไปยัง Tracker เพื่อรับข้อมูลต่างๆ
และระหว่างใช้งานจะมีการปรับปรุงค่าต่างๆ ระหว่าง Peer เป็นระยะๆ
ก็จะเกิด packet ประเภท Info นี้ขึ้นอีก แต่มีรายละเอียดต่างกัน
กับที่สื่อสารกับ Tacker จากการทดลอง พบว่า เจ้าโครงสร้างขนาด packet
info นอกจากจะเล็กกว่ามากเมื่อเทียบกับ Data แล้ว ยังมีรูปแบบที่พอจะหา
Pattern แน่นอนได้ ระบบจึงนำจุดนี้ มาใช้ในการตรวจหา หรือ Detection
โปรแกรมใช้ libpcap หรือ ไลบารี pcap

ทดลองดูเองนะครับ

ข้อมูลอ้างอิงจาก
http://efaxthai.com/2009/index.php?autodetect

ไม่มีความคิดเห็น:

แสดงความคิดเห็น