Jump to content
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

Sign in to follow this  
SexPistolsPT

[Resolvido] JPCap em Linux

Recommended Posts

SexPistolsPT

Boa tarde a todos,

estou a tentar usar a biblioteca JPCap para Java no sistema operativo Ubuntu.

No entanto, não consigo fazer import do JpcapCaptor nem da NetworkInterface do JPCap.

Alguma sugestão?

Cumprimentos,

Hugo

Share this post


Link to post
Share on other sites
pedrotuga

hum.... qual é a dificuldade?

eu costumava adicionar isso via library manager no netbeans e funcionava sem problemas.

Algumas piquices:

-tinha que correr isso como root para descobrir interfaces

-não funcionava com o openjdk, só com o java da sun (agora oracle)

Share this post


Link to post
Share on other sites
SexPistolsPT

Tocaste nos dois pontos que me estão a acontecer lol.

Comecei por tentar usar a biblioteca em Ubuntu mas obtenho o erro de que o ficheiro libpcap.so é para 32-bit e eu estou a correr sobre Ubuntu 64-bit. Não encontro uma versão desse ficheiro para 32-bit.

Depois experimentei em Windows e em Windows, quando corro um PcapCaptor.getDeviceList() no Eclipse, devolve-me uma lista vazia.

Cumprimentos,

Hugo

Share this post


Link to post
Share on other sites
pedrotuga

estou no ubuntu, acabei de pesquisar nos repositorios, deve ser um destes

p@plaptop:~$ apt-cache search libpcap|grep pcap
libpcap-dev - development library for libpcap (transitional package)
libpcap0.8 - system interface for user-level packet capture
libpcap0.8-dbg - debugging symbols for libpcap0.8
libpcap0.8-dev - development library and header files for libpcap0.8
bittwist - libpcap-based Ethernet packet generator
libmlpcap-ocaml - binding of libpcap for OCaml
libmlpcap-ocaml-dev - binding of libpcap for OCaml
libnet-pcap-perl - Perl binding to the LBL pcap packet capture library
libpcap-ruby - Transitional package for ruby-pcap
libpcap-ruby1.8 - Transitional package for ruby-pcap
libpcapnav0 - wrapper to libpcap
libpcapnav0-dev - development files for libpcapnav
pcaputils - specialized libpcap utilities
python-libpcap - python libpcap wrapper
python-pcapy - Python interface to the libpcap packet capture library
python-pypcap - object-oriented Python interface for libpcap
ruby-pcap - Interface to LBL Packet Capture library (libpcap)
p@plaptop:~$ 

libpcap0.8 provavelmente

Mais info aqui:

https://launchpad.net/ubuntu/+source/libpcap

tem para a tua arquitectura.

Quanto às permissões, usa o eclipse só para compilar, abre um consola ao lado e corre o jar com permissões de root.

Share this post


Link to post
Share on other sites
SexPistolsPT

Já consegui resolver ambos os problemas e ambos no Ubuntu.

O primeiro não consegui encontrar o jibpcap.so para 64-bit. O que fiz foi gerar novamente o ficheiro modificando o ficheiro Makefile.

As modificações foram:

1. Mudar a JAVA_DIR de:

JAVA_DIR = $(JAVA_HOME)

para:

JAVA_DIR = /usr/lib/jvm/java-6-sun/

2. Juntar essa flag a todos os COMPILE_OPTIONS

COMPILE_OPTION = -fPIC

Assim passei a gerar um libpcap.so para 64-bit.

Quanto ao Eclipse, executando o programa como sudo, tudo o que é executado lá dentro também corre como sudo. Como resultado, já consegui obter a lista de Interfaces dentro do Eclipse.

Obrigado pela ajuda,

Cumprimentos,

Hugo

  • Vote 1

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.