我知道在java中我们可以NetworkInterface.getNetworkInterfaces()
来获取本地机器上所有可用的网络接口。我们可以做类似的事情,我可以传递主机名来获取正在运行的NIC(带IP)吗?
答案 0 :(得分:1)
不,我们不能按照定义。需要IP地址来隐藏外部世界的mac地址。要检索它,你肯定需要在该机器上运行一些代码。
这意味着你需要某种代理。您可以使用Java实现它,也可以使用特定于平台的工具。例如,您可以在远程Unix机器上运行ifconfig
或在远程Windows机器上运行ipconfig
,获取并解析其输出。使用(例如)ssh,rsh,telnet在远程计算机上运行命令。对于Windows,您还可以使用WMI。
对于所有这些,您可以使用SNMP(如果在远程计算机上启用了它)。