2012-01-19 21 views
5

Có thể gửi và nhận các gói ICMP bằng thư viện socket của Ruby nhưng tôi không thấy bất kỳ tài liệu nào tốt về điều này.Làm cách nào để triển khai ping ICMP trong Ruby bằng cách sử dụng thư viện socket chuẩn?

Tôi không muốn sử dụng net-ping, icmp, ping và tất cả các thư viện khác không thành công do các vấn đề đa nền tảng, yêu cầu devkit và xây dựng tùy chỉnh, không thành công trong quá trình xây dựng. chưa được cập nhật trong một thời gian dài và/hoặc chỉ là lỗi chung.

Có ai có tài liệu hay về cách thực hiện việc này không? Tôi muốn gửi trả lời ICMP echo, không phải gói TCP hoặc UDP.

+1

Thư viện socket ruby ​​có cho phép chỉ định giao thức ICMP không? Nó có khả năng chặt chẽ dựa trên "unix" ổ cắm. –

+0

Tôi cũng có thể .. 'sock = Socket.new (Socket :: PF_INET, Socket :: SOCK_RAW, Socket :: IPPROTO_ICMP)' – Beaon

+0

Với tài liệu hướng dẫn tuy nhiên nó không phải là rõ ràng nơi để đi từ đó. Có rất nhiều tài liệu về cách tạo kết nối UDP hoặc TCP. Không có gì về cách sử dụng phần ICMP. – Beaon

Trả lời

Các vấn đề liên quan