3

我正在尝试找到一种方法来从要在网站上运行的 java 小程序访问默认网关的 IP 和 MAC 地址,这可能吗?

4

3 回答 3

1

getHardwareAddress您可以使用类中的方法java.net.NetworkInterface( http://download.oracle.com/javase/6/docs/api/java/net/NetworkInterface.html#getHardwareAddress() ) 获取Java 接口的 Mac 地址。我不确定这是否可以在 Applet 中工作,而且我自己也从未测试过该方法,但如果有什么办法,那么这个方法就是那个东西。

于 2011-03-21T23:45:45.950 回答
1

你不能在 Java 中做那种事情,比如在 Wifi 网络上获取 SSID。这种低级硬件信息无法在 Java 中以跨平台方式获得,Java 仅允许您在传输 (TCP) 级别工作,也就是使用套接字。

如果您需要此类信息,请尝试使用Runtime.getRuntime().exec(...)并解析输出调用操作系统命令工具。但是您必须处理不同的操作系统,这意味着不同的命令工具和输出。

但是在 Applet 世界中,您不能调用操作系统命令工具,也不能打开文件,您处于一个沙箱中,它阻止 Applet 执行一些可能会给用户计算机带来风险的低级任务。

如果您签署您的小程序,则您有权执行与常规桌面应用程序相同的操作,但这超出了范围。

试着把你的问题集中在另一个方向。

于 2011-03-21T18:50:06.423 回答
0

IP地址?确定的事情。只需让小程序连接回您的服务器。小程序可以打开到托管它的服务器的 http 连接。

MAC 和 Default GW 是系统特定的东西,您可以通过外部程序获得,但我不能 100% 确定这些在 applet 沙箱中受支持(事实上,它们可能不受支持)。

于 2011-03-21T18:42:52.303 回答