Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Работа с сетью > Как узнать локальный адрес.


Автор: val 28.10.2005, 09:57
Привет, всем!
Имеет место такая ситуация. На компьютере зарегистрировано несколько локальных адресов (скажем так, их 3 штуки), через один из них пользователь при помощи роутера подключен к интернету. Внимание вопрос: Как узнать средствами Java, какой именнно из локальных адресов используется роутером? Подойдут даже решения связанные с написанием небольшой серверной части.

Автор: val 31.10.2005, 16:55
Ну, в общем, покопал я эту проблему и в конце-концов решил, правда, в рамках платформы Win32. А больше мне пока и надо... Есть в Windows такая стандартная программа, называется - netstat. Так вот, если запускать её из шела с параметром -r и парсить строку с нулевым сетевым адресом, то можно в ней отыскать свой локальный, через который ты ходишь в Интернет. В такое решение, ничего другого пока в голову не пришло, хотя перепробовал много.

Строчка, которую надо парсить выглядит примерно так:
Сетевой адрес Маска сети Адрес шлюза Интерфейс Метрика
0.0.0.0 0.0.0.0 zzz.zzz.zzz.zzz zzz.zzz.zzz.zzz 1

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)