如何获取网络中所有设备的名称和 IP 或获取我连接的路由器 IP?

Posted

技术标签:

【中文标题】如何获取网络中所有设备的名称和 IP 或获取我连接的路由器 IP?【英文标题】:How can I get the name and IP of all devices in my network or get the router IP that I am connected to? 【发布时间】:2015-06-02 14:01:06 【问题描述】:

好的,所以我正在尝试编写一个与硬件(路由器)一起工作的应用程序。我的应用程序的第一部分显然是检测设备是否在网络上(在 WAN 端或 LAN 端,因为路由器可以从两侧访问,无论您是连接到下游路由器还是直接连接到我试图通过应用程序访问的路由器) - 我希望这是有道理的。

我想到的检测设备是否在网络上的两个选项是:

    因为我知道网络上设备的名称,我可以让应用程序编译连接到网络的所有设备的列表,并检查我要查找的设备的名称是否是他们? 第二个选项意味着应用程序只有在应用程序连接到路由器的 LAN 端时才能自动连接,因此不如用户必须输入他们尝试的路由器 ID 的 IP从WAN侧访问。我这样做的方式是通过分配以某种方式简单地获取路由器的默认网关,然后向它发送一个 API 请求并查看它是否回复(如果它回复,我可以假设我已连接到正确的设备)。

总而言之,我要么需要一种方法来获取连接到我所在网络的所有设备的名称 + IP(这是最好的解决方案),要么需要一种方法来获取默认网关(路由器 IP 地址)。

我对此很陌生,所以请为我提供更多信息,以便我理解。如果您能真正解释如何实现它,我将不胜感激,也许这样我就可以让它在控制台中打印出来 - 然后我可以将它实现到我的程序中并做我需要做的事情。

【问题讨论】:

请有人回答这个问题 【参考方案1】:

如果您从 DHCP 获取 IP,则获取路由器的 IP 很容易,因为您的默认路由器是您的路由器的 IP 地址。

route print | find " 0.0.0.0"

【讨论】:

以上是关于如何获取网络中所有设备的名称和 IP 或获取我连接的路由器 IP?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Java 获取连接在同一网络(子网)中的 IP 列表

如何以编程方式通过 Wifi 获取连接在同一网络上的其他设备的 IP 地址?

如何获取局域网中的所有IP地址?

如何在 iOS 7 中使用 iBeacons 获取设备详细信息,如 UUID 或设备名称

如何在同一网络上以编程方式获取其他支持Wifi的设备的IP地址?

安卓设备连接3G移动网络时获取IP地址