REMOTE_ADDR은 클라이언트가 서버와 "핸드셰이크"할 때의 IP입니다. "익명 프록시"가 사용되는 경우 REMOTE_ADDR은 프록시 서버의 IP를 표시합니다.
HTTP_CLIENT_IP는 프록시 서버가 보낸 HTTP 헤더입니다. "수퍼 익명 프록시"인 경우 없음 값이 반환됩니다. 마찬가지로 REMOTE_ADDR은 이 프록시 서버의 IP로 대체됩니다.
$_SERVER['REMOTE_ADDR']; //액세스 끝(사용자일 수도 있고 프록시일 수도 있음)
$_SERVER['HTTP_CLIENT_IP'] //프록시 끝(존재할 수 있음) 위조 가능)
$_SERVER['HTTP_X_FORWARDED_FOR'] //사용자가 프록시로 사용하고 있는 IP(존재할 수도 있고 위조할 수도 있음)
세 값의 차이점은 다음과 같습니다.
1. 프록시 서버를 사용하지 않는 경우:
REMOTE_ADDR = 사용자 IP
HTTP_VIA = 값이 없거나 표시되지 않음
HTTP_X_FORWARDED_FOR = 값이 없거나 표시되지 않음
2. 투명 프록시 서버를 사용하는 경우: 투명 프록시
REMOTE_ADDR = 마지막 프록시 서버 IP
HTTP_VIA = 프록시 서버 IP
HTTP_X_FORWARDED_FOR = 실제 IP입니다. 여러 프록시 서버를 통과할 때 이 값은 203.98.182.163, 203.98.182.163, 203.129.72.215와 유사합니다.
이 유형의 프록시 서버는 귀하가 방문하는 사람에게 귀하의 정보를 계속 전달하며 귀하의 실제 신원을 숨기는 목적을 달성할 수 없습니다.
3. 일반 익명 프록시 서버를 사용하는 상황: 익명 프록시
REMOTE_ADDR = 마지막 프록시 서버 IP
HTTP_VIA = 프록시 서버 IP
HTTP_X_FORWARDED_FOR = 프록시 서버 IP는 여러 프록시 서버를 통과할 때 이 값은 203.98.182.163, 203.98.182.163, 203.129.72.215와 유사합니다.
실제 IP를 숨기되 방문자에게 액세스하기 위해 프록시 서버를 사용하고 있다는 사실을 공개하세요.
4. 사기성 프록시 서버 사용: 프록시 왜곡
REMOTE_ADDR = 프록시 서버 IP
HTTP_VIA = 프록시 서버 IP
HTTP_X_FORWARDED_FOR = 임의 IP, 여러 프록시 서버를 통과할 때 이 값은 203.98.182.163, 203.98.182.163, 203.129.72.215와 유사합니다.
방문자에게 프록시 서버를 사용하고 있다고 알리고 실제 IP 대신 가짜 임의 IP를 만들어 속이세요.
5. 익명성이 높은 프록시 서버를 사용하는 경우: 높은 익명성 프록시(엘리트 프록시)
REMOTE_ADDR = 프록시 서버 IP
HTTP_VIA = 값이 없거나 표시되지 않음
HTTP_X_FORWARDED_FOR = 값이 없거나 표시되지 않습니다. 여러 프록시 서버를 통과할 때 값은 203.98.182.163, 203.98.182.163, 203.129.72.215와 유사합니다.
프록시 서버를 사용하여 객체에 직접 액세스하는 것처럼 모든 정보를 프록시 서버의 정보로 완전히 대체합니다.
아아아아위 내용은 PHP에서 실제 클라이언트의 실제 IP를 얻는 방법 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!