2009-03-20 5 views
6

자바 소켓이 장착되어 있습니다. 나는 소켓에 연결할 수 있고 문제없이 데이터 바이트를 보내고받을 수있다. 그러나 나는 또한 wireshark를 사용하여 트래픽을 스니핑하고 java 소켓에서 오는 각 패킷이 "tcp checksum incorrect"로 wireshark로 표시되었음을 알았습니다.Java 소켓 : TCP 체크섬이 잘못되었습니다.

누구나 통찰력을 갖고 있습니까?

자바 버전 "1.6.0_12" 자바 (TM) SE 런타임 환경 (빌드 1.6.0_12-B04) 자바 핫스팟 (TM) 클라이언트 VM (공유, 11.2-B01, 혼합 모드를 구축)

Wireshark v1.0.6 w/WinPcap 4.0.2

답변

13

많은 경우 Wireshark와 같은 도구를 사용하면 로컬 패킷에 잘못된 tcp 체크섬이 생깁니다.

이것은 로컬 호스트를 대상으로하는 패킷에 TCP 체크섬을 채우려는 노력을 현명하게 낭비하지 않기 때문입니다 (결국 잘못된 것일 수는 없습니다).

또한 실제 물리적 인터페이스에서 나가는 로컬 생성 패킷에는 하드웨어 생성 tcp 체크섬이있을 수 있습니다. 즉, 패킷을 보내는데 일반적으로 잘못된 체크섬이있는 것처럼 보입니다 (전선에서 정확할 것입니다).

스위치에 모니터 포트를 설치하고 연결된 포트에 Wireshark를 실행하면 실제 사진을 볼 수 있습니다.

7

이것은 Wireshark 위키 here에 설명되어 있습니다.