Ứng dụng MultiThread để xây dựng chương trình ScanIP trong môi trường mạng
ĐỒ ÁN LẬP TRÌNH MẠNG ĐỀ TÀI: SINH VIÊN THỰC HIỆN • Ứng dụng MultiThread để xây dựng chương trình ScanIP trong môi trường mạng. • Bùi Thị Thanh Tuyền • Lớp: 07T1 • Nhóm: 8A Nội dung trình bày • Địa chỉ IP • Giao thức ICMP • Xây dựng chương trình • Demo ĐỊA CHỈ IP (1) • Các lớp địa chỉ IP: ĐỊA CHỈ IP (2) • Các địa chỉ IP đặc biệt Địa chỉ quay vòng: 127.x.y.z Mặt nạ mạng: các bit tương ứng với phần địa chỉ mạng bằng 1, các bit của phần địa chỉ máy bằng 0 Địa chỉ quảng bá: Địa chỉ này có các bit của phần HostID bằng 1, được sử dụng khi muốn chuyển một gói tin đến mọi máy tính trong mạng con. GIAO THỨC ICMP • Vì gói tin IP cung cấp dịch vụ giao nhận gói tin không tin cậy nên cần có giao thức ICMP để hổ trợ, các bản tin ICMP được đóng gói và chuyển tải trong các gói tin IP. Tầng TCP đảm nhận việc đảm bảo các datagram được truyền đến đích một cách đầy đủ và an toàn GIAO THỨC ICMP (1) • Giao thức ICMP (Internet Control Message Protocol) thực hiện truyền các thông tin điều khiển (các báo cáo về các tình trạng lỗi trên mạng, ) giữa các gateway hoặc các máy chủ trên liên mạng theo giao thức IP. • Một thông báo ICMP được khởi tạo và chuyển cho IP. IP sẽ bọc (encapsulate) thông báo đó với một IP header và truyền đến cho router hoặc trạm đích • Có 2 loại thông báo ICMP Thông báo lỗi ICMP Thông báo truy vấn ICMP GIAO THỨC ICMP (2) • Các thông báo ICMP khác nhau về định dạng tùy theo chức năng từng loại, nhưng kiến trúc tổng quát bao gồm 2 phần: Phần đầu (ICMP header) Phần dữ liệu (ICMP data) • Phần đầu của thông báo ICMP luôn bắt đầu bằng 3 trường: TYPE: 8 bit, xác định loại thông báo ICMP CODE: 8 bit, cung cấp thông tin chi tiết của từng loại thông báo ICMP CHECKSUM: 16 bit, xác định sự toàn vẹn dữ liệu trong quá trình truyền GIAO THỨC ICMP (3) • Thông báo lỗi ICMP: Có 5 loại Định dạng chung Type Loại lỗi 3 Destination Unreachable 4 Source Quench 5 Redirect 11 Time Exceeded 12 Parameter Problem 0 4 8 16 31 Type Code Checksum Unused IP header + 64 bit original data GIAO THỨC ICMP (4) • Thông báo truy vấn ICMP Có 8 loại: Type Loại lỗi 0 Echo Reply 8 Echo Request 13 Timestamp Reply 14 Timestamp Request 15 Information Reply 16 Information Request 17 Address Reply 18 Address Request [...]... DỰNG CHƯƠNG TRÌNH (1) • Sử dụng lệnh Ping và Semaphore: Lệnh Ping (Packet Internet Groper) được dùng để hỏi (query) hệ thống (máy tính) khác để đảm bảo rằng một kết nối vẫn đang hoạt động (active) Lệnh Ping hoạt động bằng cách gửi đi yêu cầu (echo request) ICMP Nếu như phần mềm IP của máy tính nhận được yêu cầu ICMP đó, nớ đưa ra một trả lời phản hồi (echo reply) ngay lập tức XÂY DỰNG CHƯƠNG TRÌNH (2)... mềm IP của máy tính nhận được yêu cầu ICMP đó, nớ đưa ra một trả lời phản hồi (echo reply) ngay lập tức XÂY DỰNG CHƯƠNG TRÌNH (2) Mỗi lệnh ping được thực thi trong một thread riêng và được gửi bất đồng bộ nghĩa là không phải đợi reply để thực hiện lệnh tiếp theo Dùng semaphore để giới hạn số thread (lệnh ping) được thực thi cùng lúc DEMO (1) • Lúc đang quét: DEMO (2) • Lúc quét xong: DEMO (3) . ĐỒ ÁN LẬP TRÌNH MẠNG ĐỀ TÀI: SINH VIÊN THỰC HIỆN • Ứng dụng MultiThread để xây dựng chương trình ScanIP trong môi trường mạng. • Bùi. hồi (echo reply) ngay lập tức. XÂY DỰNG CHƯƠNG TRÌNH (2) Mỗi lệnh ping được thực thi trong một thread riêng và được gửi bất đồng bộ nghĩa là không