1

私は次のコードを試しました:

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ではインターフェイスが表示されません..構文エラーはありません..

4

2 に答える 2

0

これはおそらく、Linux がインターフェースを検出できないためであり、Java プログラムでも使用できません。次のコマンドを実行すると何が得られますか?

sudo ifconfig 

それを質問に追加して、問題を診断しやすくします。Unix/Linux StackExchange に関する関連する質問がここにあります。

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

于 2013-02-16T23:46:14.533 に答える
0

Ubuntu 11.10 と netbeans で実行すると、同じ問題が発生しました。端末を使用して(sudo権限で)jarファイルを実行しようとすると、機能しました。問題はLinuxのパーミッションにあると思います。

ターミナルで .jar ファイルを実行してみてくださいsudo java -jar YourJarFile.jar

于 2013-02-18T10:39:22.167 に答える