피드로 돌아가기
How I Solved the IP-Bound Cookie Problem in My Web Scraper With a Self-Hosted Proxy
Dev.toDev.to
Infrastructure

IP-Bound Cookie 문제, Shadowsocks 프록시로 해결한 세션 유지 전략

How I Solved the IP-Bound Cookie Problem in My Web Scraper With a Self-Hosted Proxy

José Catalá2026년 4월 7일5intermediate

Context

공항 웹사이트의 세션 쿠키가 생성 IP에 종속되는 IP-Bound Cookie 구조. 로컬 브라우저에서 생성한 쿠키를 VPS 스크래퍼에서 재사용 시 IP 불일치로 401 에러 발생. 개발 편의성을 위한 로컬 쿠키 추출과 서버 실행 환경 간의 IP 동기화 필요.

Technical Solution

  • 로컬 브라우저 트래픽을 VPS IP로 송출하기 위한 self-hosted Shadowsocks 프록시 서버 구축
  • Docker를 활용한 Shadowsocks-libev 컨테이너 배포로 인프라 설정 복잡도 최소화
  • SOCKS5 프록시 설정을 통해 특정 브라우저 프로필만 VPS IP를 경유하도록 애플리케이션 단위 라우팅 적용
  • 로컬 브라우저(프록시 경유) → VPS IP → 웹사이트 순의 요청 흐름으로 VPS IP 기반 쿠키 발급 유도
  • 발급된 쿠키를 서버 사이드에 저장 후 동일 VPS IP를 사용하는 스크래퍼가 요청에 포함하는 구조
  • VPN 대비 가벼운 리소스 사용량과 HTTPS 유사 트래픽 특성을 통한 네트워크 필터링 우회 전략 채택

Impact

  • 프록시 경유 시 발생하는 왕복 지연 시간 약 80-120ms 수준
  • 월 5달러 VPS 단일 환경에서 API 서버와 프록시 서버 동시 운영

Key Takeaway

인증 세션이 IP에 바인딩된 환경에서는 클라이언트의 요청 경로를 서버 IP로 일치시키는 프록시 계층 설계가 효율적인 해결책임.


IP 기반 세션 검증이 엄격한 타겟 사이트 스크래핑 시, 개발 환경의 트래픽을 운영 서버 IP로 라우팅하는 SOCKS5 프록시 도입을 검토할 것

원문 읽기