자바 프로젝트의 경우 사용자 IP 주소를 웹 사이트의 고유 식별자로 사용합니다. 사용자가 IPv4 주소 만 가지고 있으면 잘 작동합니다.자바가 IPv6 주소로 IPv4 주소를 만들도록
하지만 내 문제는 사용자가 IPv6 주소를 가지고있을 때 브라우저가 IPv6 주소를보고하는 동안 Java가 IPv4 주소를보고한다는 것입니다 (PHP의 $ _SERVER [ 'REMOTE_ADDR'] 호출에서).
그래서 어떻게 Java가 IPv6 주소가 IPv4로되어 있는지보고합니까?
편집 : 일부 설명은 :
에만 파일을 다운로드 한 사람을 허용하는 데 사용됩니다. 여러 사람이 동일한 PC를 사용하더라도 중요하지는 않습니다.
사용자가 크롬으로 http://whatismyipaddress.com/으로 이동한다고 가정하면 IPv6 주소가 표시됩니다.
그러나 지금 자바를 사용하여 http://whatismyipaddress.com/을 가져 오는 경우 IPv4 주소가 표시됩니다. 이유가 무엇이며 Chrome에 표시되는 IPv6 주소를 어떻게 표시 할 수 있습니까?
편집 2 : 코드는 내가
public static String get(String url) throws WebFetchException {
String result = "";
try {
URL url1 = new URL(url);
HttpsURLConnection urlConn = (HttpsURLConnection) url1.openConnection();
urlConn.setConnectTimeout(8 * 1000);
urlConn.setRequestMethod("GET");
BufferedReader in = new BufferedReader(new InputStreamReader(urlConn.getInputStream()));
String text;
while ((text = in.readLine()) != null) {
result = result + text;
}
in.close();
}
} catch (Exception e) {
throw new WebFetchException("There was an exception while fetching the requested page: " + url);
}
return result;
}
우선, IP 주소는 (완전히) 고유 한 식별자가 아닙니다. ipv4 나 ipv6과 상관없이 왜 IP를 저장하지 않으시겠습니까? 그리고 "Java가 IPv4 주소를보고 할 것"이란 무엇을 의미합니까? –
동일한 시스템에서 여러 사용자가 사용할 수 없습니다. –
어떻게 ip 데이터를 가져 오나요? 특정 유형을 사용합니까? 코드가 있습니까? –