2014-04-15 7 views
0

"packet"이라는 DatagramPacket 객체를 사용하여 네트워크에서 패킷을 수신하고 패킷 객체를 사용하여 보낸 사람의 IP 주소를 가져옵니다 (즉, packet.getAddress ()). 그러나 IPv4 주소를 원할 때 보낸 사람을 나타내는 IPv6 주소를 반환합니다. 내가 원하는 것을 성취 할 수있는 방법이 있습니까?IPV6 주소를 반환하지만 IPv4가 필요한 Java DatagramPacket 객체

답변

0

IPv4와 IPv6은 별도의 프로토콜입니다. IPv6 주소를 얻으면 IPv6을 통해 패킷을 수신하므로 표시되는 주소가됩니다. IPv6는 전 세계에 배포되므로 소프트웨어가이를 처리해야합니다. IPv4 주소와 IPv6 주소 사이에는 아무런 관련이 없으므로 IPv6 주소를 보면 그만큼 얻을 수 있습니다.

유일한 예외는 IPv6 소켓을 통해 IPv4 패킷을 수신하는 경우입니다. 이 경우 ::ffff:으로 시작하는 IPv6 주소가 표시됩니다. 그 다음은 IPv4 주소입니다. 이 경우 IPv6을 통해 실제로 통신하지 않으므로 IPv4 주소를 볼 수 있습니다.