如何以编程方式通过 Wifi 获取连接在同一网络上的其他设备的 IP 地址?
Posted
技术标签:
【中文标题】如何以编程方式通过 Wifi 获取连接在同一网络上的其他设备的 IP 地址?【英文标题】:How to get Ip address of other devices connected on same network via Wifi programmatically? 【发布时间】:2012-08-18 16:05:56 【问题描述】:我已经在我的 android 手机中检查了它。启用 Wifi 后,它向我显示了已连接的网络,然后还提供了获取特定网络 IP 地址、信号强度等详细信息。
我可以在 Android 2.3 版中以编程方式执行此操作吗?
【问题讨论】:
我认为这很难你应该有一个 root 权限,并且必须为每个地址 ping 并等待重播,但我们可以假设你的 ip -1 ip 都分配给设备;)无论如何 + 1 我怎样才能拥有root权限并且必须ping每个地址?你能告诉我这是怎么可能的吗? 这取决于每个手机,如果你有一个他们提供的 htc 我不知道其余的,我认为这个论坛不讨论这样的事情——你想做什么到底是什么?? 【参考方案1】:路由器将 IP 分配给范围内的连接设备。例如说来自:
192.168.1.2 到 192.168.1.254
这你可以根据你的设备子网和网关来计算,如下所示-
地址:192.168.0.1 => 11000000.10101000.00000000 .00000001
网络掩码:255.255.255.0 = 24 => 11111111.11111111.11111111 .00000000
通配符:0.0.0.255 => 00000000.00000000.00000000 .11111111
=>
网络:192.168.0.0/24 => 11000000.10101000.00000000 .00000000(C 类)
广播:192.168.0.255 => 11000000.10101000.00000000 .11111111
HostMin: 192.168.0.1 => 11000000.10101000.00000000 .00000001
HostMax:192.168.0.254 => 11000000.10101000.00000000 .11111110
主机/网络:254(私人互联网)
现在尝试从您的设备在 192.168.0.1 到 192.168.0.254 范围内发送 PING 命令,如果您收到回复,通过这种方式您可以了解网络中存在的其他设备。
【讨论】:
以上是关于如何以编程方式通过 Wifi 获取连接在同一网络上的其他设备的 IP 地址?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Android 上以编程方式从 Mac 地址获取 IP 地址?
如何以编程方式在android中获取连接的wifi路由器的IP地址?