본문으로 바로가기 본문 바로가기
WIKI 기술 지식 베이스

프록시 상태

원문 보기 위키 갱신

프록시 상태 (Proxy status)

이 문서는 로드 밸런싱 트래픽을 네트워킹 스택의 여러 수준에서 처리할 수 있는 프록시 상태 옵션(Layer 7, DNS-only, Layer 4)에 대해 안내해요. 각 방식의 동작 원리와 장단점을 비교해 볼 수 있어요.

출처: 문서

본문

네트워킹 스택의 여러 수준에서 트래픽을 로드 밸런싱할 수 있어요:


Layer 7 로드 밸런싱

Layer 7 로드 밸런서는 각 HTTP/HTTPS 요청에 존재하는 정보(HTTP 헤더, URI, 쿠키, 데이터 유형 등)를 기반으로 트래픽을 특정 엔드포인트로 보내요.

클라이언트가 애플리케이션을 방문하면 Cloudflare는 트래픽 스티어링 정책과 엔드포인트 가중치로 결정된 건강한 엔드포인트로 요청을 보내요.

호스트 이름으로 가는 트래픽이 Cloudflare를 통해 프록시(proxied) 될 때 Cloudflare는 Layer 7 로드 밸런싱을 수행해요. Load Balancing 대시보드에서 이러한 로드 밸런서는 주황색 구름으로 표시돼요.

DNS-only 로드 밸런서는 주황색 구름으로 표시됩니다.

주의

DNS-only (회색 구름) CNAME 레코드가 프록시된 로드 밸런서를 가리키면, 해당 레코드에 대해 반환되는 IP는 엔드포인트 IP가 되고, 그 IP로 보내진 HTTP 요청은 프록시되지 않는다는 점을 유의하세요.

장점 (Benefits)

DNS-only 로드 밸런싱과 비교해 Layer 7 로드 밸런싱은:

  • 엔드포인트의 IP 주소를 숨겨 DDoS 공격으로부터 보호해요.
  • DNS 캐싱의 영향을 받을 수 있는 것보다 더 빠른 장애 조치와 더 정확한 라우팅을 제공해요.
  • 캐싱, Workers, WAF 같은 다른 Cloudflare 기능과 통합돼요.
  • Cloudflare에 대한 권한 있는 쿼리를 줄여, 사용량 기반 요금 고객에게 비용을 절약해 줄 수 있어요.
  • 사용자 지정 세션 어피니티와 엔드포인트 드레인을 지원해요.
  • 사용자의 재귀 리졸버와 연결된 데이터 센터 대신 요청을 하는 사용자와 연결된 데이터 센터를 사용해 트래픽을 더 정확하게 지역 배정해요.
  • 사설 네트워크 로드 밸런싱으로 사설 IP 주소를 지원해요.

DNS-only 로드 밸런싱

DNS-only 로드 밸런서는 클라이언트의 DNS 쿼리에 대한 응답으로 특정 IP 주소를 반환해 트래픽을 라우팅해요.

클라이언트가 애플리케이션을 방문하면 Cloudflare는 트래픽 스티어링 정책과 엔드포인트 수준 스티어링 정책으로 결정된 건강한 엔드포인트의 주소를 제공해요. 그러나 Cloudflare는 DNS 리졸버가 짧은 TTL을 존중해 업데이트된 건강한 주소 목록을 위해 Cloudflare DNS를 다시 쿼리하기를 신뢰해요. 클라이언트가 캐시된 DNS 응답을 가지고 있다면 이전 목적지로 이동하게 되어 로드 밸런서를 무시할 수 있어요.

호스트 이름으로 가는 트래픽이 Cloudflare를 통해 프록시되지 않을 때 Cloudflare는 DNS-only 로드 밸런싱을 수행해요. Load Balancing 대시보드에서 이러한 로드 밸런서는 회색 구름으로 표시돼요.

DNS-only 로드 밸런서는 회색 구름으로 표시됩니다.

참고

로드 밸런서 엔드포인트가 Cloudflare의 프록시된 (주황색 구름) CNAME 레코드라면, 그에 대해 반환되는 IP는 Cloudflare의 IP가 되고, 그 IP로 보내진 HTTP 요청은 그에 따라 프록시된다는 점을 유의하세요.

장점 (Benefits)

로드 밸런서가 A, AAAA, CNAME 레코드가 아니라 MX 또는 SRV 레코드용으로 사용되는 호스트 이름에 연결되어 있다면, 해당 프록시 모드는 DNS-only여야 해요.

제한 사항 (Limitations)

프록시된 Layer 7 로드 밸런싱과 비교해 DNS-only 로드 밸런싱은:

  • 엔드포인트의 IP 주소를 숨기지 않아 DDoS 공격에 취약하게 돼요.
  • DNS 리졸버와 캐시 설정에 의존해야 하므로 더 느린 장애 조치와 덜 정확한 라우팅을 수행해요.
  • 캐싱, Workers, WAF 같은 다른 Cloudflare 기능과 통합할 수 없어요.
  • Cloudflare에 대한 권한 있는 쿼리를 늘려, 사용량 기반 요금 고객에게 더 많은 비용이 들 수 있어요.
  • 세션 어피니티를 지원하지 않아요. 대신 DNS persistence를 사용할 수 있어요.
  • 사용 가능하다면 ECS 소스 주소와 연결된 데이터 센터를 기준으로 트래픽을 지역 배정해요. 사용할 수 없다면 사용자의 재귀 리졸버를 기반으로 지역 배정하는데, 이는 지연 시간 기반 스티어링에서 문제를 일으킬 수 있어요.
  • 사설 네트워크 로드 밸런싱을 지원하지 않아요.

Layer 4 로드 밸런싱

Layer 4 로드 밸런서는 특정 포트나 IP 주소로 트래픽을 전달해 라우팅해요.

Cloudflare는 현재 Cloudflare Spectrum의 일부로만 Layer 4 로드 밸런싱을 지원해요.

참고

Spectrum은 TCP 수준에서 동작하므로 세션 어피니티, 사용자 지정 규칙, 캐싱 같은 기능을 지원할 정보가 없어요.

더 알아보기 (Learn more)

트래픽 스티어링 정책과 엔드포인트 상태 관리에 대해 더 알아보려면 관련 개념 문서를 참고하세요.