繁体   English   中英

以编程方式创建虚拟网络接口

[英]Create virtual network interface programmatically

是否可以使用Java或C#添加虚拟网络接口。 我需要为计算机上的数据挖掘应用程序设置一堆IP,但我的NIC不够(我不想购买更多的IP)。

我需要从应用程序完全控制虚拟卡(创建,删除,设置IP,也许重定向流量)。

我不确定您是否为此有一个纯Java解决方案。

您有几种选择。
1.使用将为您完成任务的脚本,在perl \\ shell中编写此解决方案将需要4-5行。
2.您可以打开与计算机的ssh连接,然后从Java运行命令。 我有使用trilead-ssh2的实用程序。

要使用Maven获得它,您可以使用:

    <dependency>
        <groupId>com.trilead</groupId>
        <artifactId>trilead-ssh2</artifactId>
        <version>build213-svnkit-1.3-patch</version>
    </dependency>

例如,通过这种方式,您应该打开一个连接:

public static Connection newConnectionWithPassword(String host, String username, String passwd) {
    Connection newConn = new Connection(host);
    try {
        newConn.connect(); // Ignoring ConnectionInfo returned value.
        newConn.authenticateWithPassword(username, passwd);
        return newConn;
    } catch (IOException ioe) {
        newConn.close();
        ioe.printStackTrace();
        return null;
    }
}

然后,您可以运行命令:

this.session = conn.openSession();
this.session.execCommand(this.cmd);

您现在可以使用OS命令从Java创建虚拟接口。 顺便说一句,您可以使用NetworkInterface.class测试结果,该结果可以查询计算机上的netweork接口。

祝好运。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM