2012-11-04 39 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广播/多播消息。

相关问题