설명
스티키 세션은 요청 단위 IP 로테이션의 반대 개념입니다. 매 요청마다 새로운 종료 IP를 선택하는 대신, 프록시 게이트웨이가 세션이 지속되는 동안 하나의 IP를 트래픽에 고정합니다. 세션은 일반적으로 프록시 사용자 이름에 전달하는 세션 ID로 범위가 지정되며(예: `customer-USER-session-abc123`), 게이트웨이의 고정 유지 시간(일반적으로 1, 5, 10, 또는 30분)이 만료될 때까지 지속됩니다.
스티키 세션은 대상 사이트가 소스 IP에 상태를 바인딩하는 모든 워크플로에 필수적입니다. 로그인 페이지, 다단계 결제 흐름, IP에 종속된 CSRF 토큰, 페이지네이션된 검색 결과, 그리고 대부분의 계정 관리 작업은 여러 요청에 걸쳐 동일한 IP를 필요로 합니다. 요청 단위 로테이션을 사용했다면, 두 번째 요청은 다른 IP로 이동하게 되고 대상 서버는 이를 인증되지 않은 새로운 방문자로 취급하게 됩니다.
대부분의 레지덴셜 프록시 제공업체는 동일한 게이트웨이를 통해 두 모드를 모두 제공합니다. 프록시 인증에 세션 ID를 포함시켜 필요에 따라 고정 기능을 활성화할 수 있으며, 이를 제거하면 비활성화됩니다.
작동 방식
인증 자격 증명에 세션 ID를 포함하여 로테이팅 프록시 게이트웨이에 연결하면, 게이트웨이는 세션 ID를 해시하여 풀에서 특정 출구 IP에 바인딩합니다. 동일한 세션 ID를 사용하는 이후의 모든 요청은 고정 유지 기간이 만료되거나 IP가 비정상 상태가 될 때까지 해당 IP를 통해 라우팅됩니다.
세션 ID를 변경하면(또는 세션 ID 전송을 중단하면) 게이트웨이는 새로운 IP를 선택합니다. 이를 통해 풀의 다양성이라는 이점을 잃지 않으면서도 워크플로우별 고정성을 얻을 수 있습니다 — 병렬로 실행되는 서로 다른 워크플로우는 각각 자신만의 고정 IP를 할당받으면서도, 동일한 대규모 로테이팅 풀에서 IP를 가져옵니다.