2012-11-04 40 views
2

我想以編程方式讓我的設備回答在連接到wifi網絡時廣播ping(即ping 192.178.1.255)。有沒有辦法讓android設備回覆到廣播地址的icmp ping?

有沒有辦法可以做到這一點?也許一個會回頭的聽衆,或一個標誌設置在某個地方?

謝謝。

+0

請詳細說明,什麼樣的廣播? – Frank

+2

指向子網廣播地址的ping,例如192.168.1.0網絡上的192.168.1.255。 – Intrepidd

+0

我認爲值得注意的是,響應ping可以讓攻擊者知道你存在,如果他們是暴力強制設備。 – samdoj

回答

2

有沒有辦法可以做到這一點?

總之:是的。但是需要一些很好的努力來整合必要的組件。

關鍵問題是您需要偵聽ICMP網絡數據包。這種功能不能從Java訪問,並且需要JNI代碼或外部程序。 (據我所知,它也需要一個紮根設備。)

您將需要一個庫或程序來處理網絡流量,如Jpcap(這將需要some modification在Android上工作)。您也可以在後檯安裝並運行tcpdump的實例並解析其輸出。

+0

最佳答案,謝謝。我可能會使用多播作爲@forgemo指出。 – Intrepidd

1

應用程序無法在Android上發送/接收ICMP回顯請求。 (也許有根植設備的方法)

但是,如果您的基本目標是實現某種本地設備發現功能(並且您的代碼在所有設備上運行),則可以使用UDP廣播/多播消息。

相關問題