2013-03-01 1 views
0

최근에 JEthereal.jar 파일을 다운로드하여 JEthereal을 통해 인터넷 트래픽의 패킷 트래픽을 캡처하고이를 연구했습니다. 그냥 벌금 .pcap 파일에서 패킷을 읽고 있지만, 패킷을 캡처하려고에는 나에게 메시지를 주었다.JEthereal에서 jpcap.JpcapCaptor 클래스의 getDeviceList() 메소드가 기본이되는 이유는 무엇입니까?

"를 찾았 장치 이것은 아마 당신이 JPcap 설치되어 있음을 의미하지만 의 libpcap/따라 WinPcap.Please 웹 사이트의 지침을 따르십시오. 약 15 초 정도 걸리며 그만한 가치가 있습니다. "

그래서 이미 WinPcap을 설치했기 때문에 소스 코드를 다운로드하여 Eclipse에서 열었습니다.

코드를 살펴보면 네트워크 장치가 발견 된 부분으로갔습니다. NetworkInterface 유형의 네트워크 장치 배열을 반환해야하는 jpcap 패키지의 JpcapCaptor 클래스의 정적 메서드 getDeviceList(). 다음은 인터넷에 주어진 선언이다 : 나는이 방법은 몸 방치하고, 즉

public static native NetworkInterface[] getDeviceList(); 

native를 선언 다운로드 한 소스 코드에서

public static NetworkInterface[] getDeviceList() 

그러나, 내가 뭘해야 지금 내 장치를 식별하려면 어떻게해야합니까? 그물과이 포털에서 검색 할 때 jpcap.dll 파일이 내 system32 폴더에 존재해야한다는 것을 알게되었고 (Windows7을 사용하고 있습니다) 그 파일에 WinPcap을 설치해야합니다. WinPcap을 이미 설치했으며 jpcap.dll 파일이 system32 폴더에 없습니다. 또한, 나는 내 PATH 변수에 system32를 추가해야한다고 생각하는데, 아직 거기에 jpcap.dll이 없기 때문에 나는 그렇게하지 않았다. 사전에

고맙습니다!

답변

0

"인터넷에서 검색 할 때 jpcap.dll 파일이 내 system32 폴더 (Windows7을 사용 중입니다)에 있어야하고 그 파일에 WinPcap을 설치해야합니다."라고 입력하면 가고있다, someone is wrong on the Internet.

jpcap.dll입니다은 WinPcap의하지 부분, 당신은 그것을 얻을은 WinPcap를 설치하지을한다. Keita Fujii의 Jpcap을 설치해야합니다 (더 이상 작업하지 않는 것 같습니다. JEthereal 사이트 링크는 더 이상 존재하지 않지만 JEthereal 사이트에는 일부 로컬 다운로드 링크가 있고 일부 사람들은 자신의 포크를 만들었습니다. 그것).

Jpcap의 모든 버전을 설치 했습니까? 그렇다면 어디에서 가져 왔습니까? JEthereal에서 작동하지 않는 버전 일 수 있습니다.

+0

예, jpcap도 다운로드하여 설치했습니다. http://yuba.stanford.edu/JEthereal/applet/에서 JEthereal 설정이있는 동일한 링크에서 가져 왔습니다. 내가 별도로 거기에 제공된 로컬 DLL 파일을 다운로드하고 좋은 측정을 위해 내 경로와 CLASSPATH에 추가했지만 여전히 같은 오류가 발생하고 있습니다. –

+0

내 PATH 및 CLASSPATH는 Program Files의 jdk installatio에있는 lib 및 bin 폴더입니다. –

+0

jpcap을 다운로드했지만'jpcap.dll '이 없다면 jpcap에'jpcap.dll'이 없거나 올바르게 설치하지 않았습니다. 도움을 받으려면 [Jethereal의 저자에게 문의하십시오] (http://yuba.stanford.edu/JEthereal/contact.php)와상의해야합니다. CLASSPATH는 .dll의 코드와 같은 원시 코드와 관련이 없습니다. –

0

왜 JEthereal에서 jpcap.JpcapCaptor 클래스의 getDeviceList() 메소드가 기본입니까?

getDeviceList()은 네이티브 (C/C++) 코드로 구현되어 있기 때문에.

패킷을 캡처하려고하면 "No device found ..."라는 메시지가 나타납니다."

내가 Windows7의

사용하고

이 여어. 당신이 관리자로 을 jpcap 실행해야합니다 (루트 같은 허세를 구현하는 첫 번째 Windows입니다) Windows Vista에서 시작.이있다 가되게합니다 jpcap FAQ

에서 적어도합니다 (은 WinPcap 라이브러리가 네트워크 리소스에 액세스 할 수있는 권한이 있도록) 시스템이 재시작 된 후 jpcap 처음 실행할 때.

을 수행

Q : 네트워크 인터페이스 목록을 가져올 수 없거나 패킷을 캡처 할 수 없습니다. 왜?

관리자 권한이 없기 때문일 수 있습니다.이 권한은 Jpcap 기반 응용 프로그램을 실행하는 데 입니다.

Windows 2000/XP에서 계정은 관리자 그룹에 있어야합니다.

Windows Vista에서 계정이 관리자 그룹 인 경우에도 "관리자 권한으로 실행"옵션을 사용해야합니다. 옵션을 사용하려면 애플리케이션 아이콘을 마우스 오른쪽 버튼으로 클릭하고 " 관리자 권한으로 실행"을 선택하십시오. 응용 프로그램이 명령 줄 기반 인 경우 "관리자 권한으로 실행"옵션을 사용하여 명령 프롬프트를 열고 해당 명령 프롬프트에서 응용 프로그램을 실행해야합니다.

+0

... 그런 다음 JPcap 개발자에게 오류 메시지가 오도 된 것이라고 불평합니다. libpcap 또는 WinPcap이 설치되어 있는지 여부를 결정할 수 있다면, * "* JPcap을 설치했지만 libpcap/WinPcap은 설치하지 않았습니다."라고 제안해야합니다. –

+0

제 생각에 jpcap은 "인터페이스 없음"을보고하고 JEthereal은 jpcap이 설치되어 있지 않을 수도 있다고 가정합니다. – Javier

+0

그런 다음 JEthereal 개발자를 대상으로 불만 사항을 제기해야합니다. –

관련 문제