Linux中的网络接口未检测到

时间:2013-02-16 23:42:55

标签: java linux windows network-programming network-interface

我尝试过以下代码:

NetworkInterface[] devices = JpcapCaptor.getDeviceList();
    JpcapCaptor jpcap = null;
    System.out.print(devices.length);
    for (int a=0;a<devices.length;a++)
    {
        try
        {
            jpcap = JpcapCaptor.openDevice(devices[a], 2000, true, 20);
            jpcap.loopPacket(-1, new arp_spoofing());//for capture packet
        } 
        catch (IOException ex) 
        {
            Logger.getLogger(Receiver2.class.getName()).log(Level.SEVERE, null, ex);
        }
    }

在相同的代码中。当我在Windows中运行时,我得到一些接口但在linux中我没有得到任何接口.. 没有语法错误..

2 个答案:

答案 0 :(得分:0)

这可能是Linux无法检测到的界面,因此它也无法用于任何Java程序。如果运行以下命令,会得到什么?

sudo ifconfig 

将其添加到问题中,以便更容易诊断问题。这里有一个相关的问题,在Unix / Linux StackExchange上:

https://unix.stackexchange.com/questions/48980/cannot-get-realtek-r8168-ethernet-card-up/52451#52451

答案 1 :(得分:0)

当我在Ubuntu 11.10和netbeans中运行时,我遇到了同样的问题。当我尝试使用终端运行jar文件(具有sudo权限)时,它工作。我认为问题在于linux中的权限。

尝试在终端sudo java -jar YourJarFile.jar

中运行.jar文件