서버의 응답이로드 밸런서를 통과하거나 클라이언트에게 직접 전달되어야합니까?


0

C ++에서 자체로드 밸런서를 구축하려고합니다. 그러나 클라이언트와 서버 사이의 모든 패킷 (요청 및 응답 모두)이로드 밸런서를 통과해야하는지 확실하지 않습니다.

  1. 클라이언트의 서버를 찾은 다음 서로 직접 통신하게하는 것이 도움이됩니까?
  2. 아니면 요청뿐만 아니라 응답도 통과하는 "전이중"이어야합니까?

답변:


0

이는 가장 안전하고 쉬운 구성이므로 모든 트래픽이 양방향으로로드 밸런서를 통과하는 대부분의 경우 설정에 따라 다릅니다. 최종 사용자로부터 서버를 더 잘 격리 할 수 ​​있으므로 네트워크 보안 POV의 이점도 있습니다.

TCP 세션이 작동하려면 소스 및 대상 IP 주소와 포트가 TCP 스트림마다 일관성이 있어야합니다. 동일한 IP에서 여러 시스템이 응답 할 수는 있지만 문제가 발생하면 고통과 어려움을 요구합니다.

임계 경로에로드 밸런서를 갖지 않고이 작업을 수행하려는 경우로드 밸런서 수준이 아닌 DNS 수준에서이 작업을 수행 할 수 있습니다.

내 마음을 먼 과거로 되돌려 놓는 로드 밸런싱을위한 3 가지 메커니즘이 있으며 유용한 읽기가 가능한 LVS ( http://www.linuxvirtualserver.org/how.html )를 기억 합니다. 나는 이것을 오랫동안 사용하지 않았지만 Apache 또는 동등한로드 밸런싱 솔루션보다 낫다는 것을 확신하지 못합니다. [인터넷은 이전되었고이 문서는 30 살입니다. 송신 필터링 및 보안 심도는 그다지 중요하지 않으며 컴퓨터는 훨씬 느려졌습니다. 또한 https-> http를 제거하는 데 사용할 수 없습니다. 오늘 매우 유용합니다.]


모든 트래픽이로드 밸런서를 통과하는 경우 요청자의 IP 주소를 저장하거나 헤더에 넣으면 서버 가이 헤더로 서버 가이 헤더로 응답하도록 특정 헤더 필드가 있습니까? 잘?
TeamBeam

당신의 목표가 무엇인지 확실하지 않습니다. 일반적으로 들어오는 웹 요청을 종료하고 (헤더를 언급했기 때문에 웹 요청이라고 가정)로드 밸런서에서 요청을 시작하고 X-FORWARDED-FOR 헤더를 적절한 클라이언트 주소로 추가하여 원래 IP 대신 소프트웨어. 이것은 표준 헤더이며 한 번 이상 존재할 수 있습니다.
davidgo
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.