Можно ли получить IP-адрес и MAC-адреса шлюза по умолчанию в Java? - PullRequest
3 голосов
/ 21 марта 2011

Я пытаюсь найти способ доступа к IP-адресам и MAC-адресам для шлюза по умолчанию из Java-апплета для запуска на веб-сайте. Возможно ли это?

Ответы [ 3 ]

1 голос
/ 21 марта 2011

Вы не можете делать такие вещи в Java, как получение SSID в сети Wifi .Эта низкоуровневая информация об оборудовании не может быть получена в Java кроссплатформенным способом, а Java позволяет работать только на уровне транспорта (TCP), иначе говоря, использовать сокеты.

Если вам нужна такая информация, попробуйте вызвать инструмент командной строки ОС, используя Runtime.getRuntime().exec(...), и проанализировать вывод.Но вам приходится иметь дело с разными ОС, то есть с разными инструментами команд и выходами.

Но в мире апплетов вы не можете ни вызывать инструменты команд ОС, ни открывать файлы, вы находитесь в «песочнице», которая не позволяет Апплетам выполнять некоторые задачи низкого уровня, которые могут подвергнуть риску компьютер пользователя.

Если вы подпишете свой апплет, у вас будут привилегии для выполнения тех же операций, что и для обычных настольных приложений, но это выходит за рамки.

Попробуйте сфокусировать вашу проблему в другом направлении.

1 голос
/ 22 марта 2011

Вы можете получить Mac-адрес интерфейса в Java, используя метод getHardwareAddress в классе java.net.NetworkInterface (http://download.oracle.com/javase/6/docs/api/java/net/NetworkInterface.html#getHardwareAddress()).. Я не уверен, что это будет работать внутри апплета, и я никогда не проверялэтот метод сам, но если что-то делает, этот метод и есть тот.

0 голосов
/ 21 марта 2011

IP-адрес?конечноПросто подключите апплет к вашему серверу.Апплет может открыть http-соединение с сервером, на котором он размещен.

MAC и Default GW - это специфичные для системы вещи, которые вы можете получить с помощью внешних программ, но я не уверен на 100%, что они поддерживаются в апплетепесочница (на самом деле, они, вероятно, не поддерживаются).

...