在Windows上查找“本地连接”的默认网关

时间:2011-12-22 18:45:11

标签: java windows

我试过http://docs.oracle.com/javase/6/docs/api/java/net/NetworkInterface.html 但这似乎没有默认网关的字段。

我尝试的另一件事是执行本地ipconfig /all命令并解析结果,但这会根据系统的区域设置而有所不同。

1 个答案:

答案 0 :(得分:2)

代替ipconfig / all,使用

  

netstat -rn

使用Runtime.exec()并解析结果,默认网关将是第二行。

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();
    }