Найти шлюз по умолчанию для подключения по локальной сети в Windows - PullRequest
2 голосов
/ 22 декабря 2011

Я пробовал http://docs.oracle.com/javase/6/docs/api/java/net/NetworkInterface.html но, похоже, нет поля для шлюза по умолчанию.

Другая вещь, которую я попробовал, это выполнить собственную команду ipconfig /all и проанализировать результат, но это зависит от локали системы.

1 Ответ

2 голосов
/ 22 декабря 2011

Вместо ipconfig / all используйте

netstat -rn

с помощью Runtime.exec () и анализа результатов, шлюзом по умолчанию будет 2-я строка.

Process result = Runtime.getRuntime().exec("netstat -rn");

    BufferedReader output = new BufferedReader
        (new InputStreamReader(result.getInputStream()));

    String line = output.readLine();
    while(line != null){
        if ( line.startsWith("default") == true )
            break;              
        line = output.readLine();
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...