Computer Science/Network

[Network] 네트워크 장치 구조(Inline, Out of path, Proxy)

LeeJaeJun 2023. 12. 22. 23:39
728x90
반응형

- Inline

기본적으로 필터링 역할. Packet이 기본 단위. Drop/Bypass(차단/허용)를 합니다.
인라인 장치는 일반적으로 네트워크 선에 직접 연결되어 네트워크 트래픽을 감지하고 조작합니다. 이는 네트워크의 송수신 사이에 위치하므로 트래픽이 장치를 통과할 때마다 장치에서 작업이 수행됩니다. 인라인 장치는 실시간으로 트래픽을 처리하기 때문에 성능과 대역폭이 중요한 응용 프로그램에서 많이 사용됩니다. 그러나 장치 장애 또는 잘못된 구성의 경우에는 전체 네트워크 트래픽에 영향을 줄 수 있으므로 신중하게 설치하고 관리해야 합니다.
ex) 라우터, 방화벽, 침입 탐지 시스템 (IDS), 침입 차단 시스템 (IPS)
* 방화벽: 네트워크 트래픽을 모니터링하고 불법적인 활동을 차단하여 네트워크 보안 강화
* IDS: 악성 행위를 감지하고 경고를 발생시키는데 사용.
* IPS: 발견된 악성 행위를 차단.
 

- Out of path

기본적으로 Read onlyPacket이 기본 단위. sensor 역할이 주역할입니다.
Out-of-path 장치 구조는 네트워크 트래픽을 처리하기 위해 통신 경로 밖에 배치되는 장치 또는 기기를 의미합니다. 이러한 장치는 통신 흐름에 직접적으로 참여하지 않고, 네트워크 트래픽을 모니터링하거나 분석하는 역할을 수행합니다.
 
Out-of-path 장치는 일반적으로 트래픽의 복사본을 획득하기 위해 트래픽 복제 장치(TAP) 또는 스패닝 포트(Span Port)를 통해 네트워크에 연결됩니다. 이를 통해 장치는 네트워크에서 흐르는 모든 트래픽을 복사하여 분석, 모니터링, 또는 보안 검사를 수행할 수 있습니다.
 
Out-of-path 장치는 복사된 트래픽을 분석하여 네트워크 활동을 감지하고 보안 이벤트를 식별할 수 있습니다. 이러한 장치는 네트워크 인프라나 서버에 부담을 주지 않고 트래픽을 모니터링하므로 네트워크 성능에 영향을 미치지 않습니다.
일반적인 예로는 네트워크 분석기, 침입 탐지 시스템 (IDS), 보안 정보 및 이벤트 관리 시스템 (SIEM) 등이 있습니다. 이러한 장치는 네트워크 트래픽을 모니터링하고 이상 행위나 보안 위협을 탐지하여 조치를 취할 수 있습니다.
 

- Proxy

Socket 수준. Stream이 기본 단위. filtering 역할을 합니다.
클라이언트와 서버 간의 중개 역할을 수행하는 서버입니다. 클라이언트는 프록시 서버를 통해 네트워크 서비스 또는 리소스에 접근하고 요청합니다. 이러한 프록시 서버는 클라이언트의 요청을 받아 처리한 후, 대신 원격 서버로부터 데이터를 가져와 클라이언트에게 반환합니다. 이 과정에서 클라이언트와 서버 간의 직접적인 통신은 발생하지 않습니다. 즉, 프록시를 거쳐서 통신이 이루어지는 것입니다.
프록시는 다양한 용도로 사용될 수 있습니다. 가장 일반적인 용도는 네트워크 보안과 개인 정보 보호입니다. 프록시를 통해 클라이언트의 IP 주소를 숨길 수 있으며, 클라이언트와 서버 간의 통신을 암호화하여 보안성을 강화할 수 있습니다. 또한, 프록시는 캐싱을 통해 서버의 부하를 줄이고 네트워크 대역폭을 절약하는 데에도 사용됩니다.

  1. 웹 프록시: 웹 프록시는 HTTP 프로토콜을 사용하는 웹 트래픽을 중개하는 데 사용됩니다. 클라이언트의 웹 요청을 받아 서버로 전달하고, 서버로부터 받은 응답을 클라이언트에게 전달합니다. 이를 통해 웹 콘텐츠 필터링, 캐싱, 압축, 로드 밸런싱 등을 수행할 수 있습니다.
  2. 리버스 프록시클라이언트와 서버 사이에 위치한 서버로서, 클라이언트의 요청을 받아 적절한 서버로 전달하는 역할을 합니다. 일반적으로 클라이언트는 리버스 프록시를 서버로 인식하고 요청을 보내며, 리버스 프록시는 이를 적절한 원격 서버로 중계하여 응답을 받아 클라이언트에게 전달합니다. 목적은 다음과 같습니다.
    • 로드 밸런싱: 리버스 프록시는 여러 개의 서버 또는 백엔드 시스템 사이에서 트래픽을 분산시키는 역할을 합니다. 클라이언트의 요청을 받아 여러 서버에 분산하여 부하를 공평하게 분배하거나, 특정 서버에 너무 많은 요청이 몰리지 않도록 조절합니다.
    • 보안: 리버스 프록시는 클라이언트와 서버 사이에 위치하여 보안을 강화할 수 있습니다. 클라이언트의 요청을 받아 서버로 전달하기 전에, 보안 검사나 인증 등의 추가 작업을 수행할 수 있습니다. 이를 통해 악성 트래픽을 차단하거나, SSL 암호화를 적용하여 보안을 강화할 수 있습니다.
    • 캐싱: 리버스 프록시는 서버로부터 받은 응답을 캐싱하여 동일한 요청에 대해 다시 서버에 접근하지 않고 캐시된 응답을 클라이언트에게 바로 전달할 수 있습니다. 이를 통해 서버의 부하를 줄이고 응답 시간을 단축할 수 있습니다.
    • 서버 감추기: 리버스 프록시를 사용하면 웹 서버와 같은 백엔드 시스템의 정보를 클라이언트에 노출시키지 않고, 프록시 서버의 정보만 노출시킬 수 있습니다. 이를 통해 보안과 개인 정보 보호를 강화할 수 있습니다.
  3. SOCKS 프록시: SOCKS 프록시는 네트워크 프로토콜을 사용하는 다양한 애플리케이션 트래픽을 중개하는 데 사용됩니다. 주로 전용 애플리케이션 또는 소켓 기반의 프로그램에서 사용되며, TCP 및 UDP 트래픽을 지원합니다.
  4. Fiddler: Fiddler는 웹 디버깅 프록시 도구로, 웹 애플리케이션의 트래픽을 모니터링하고 분석하는 데 사용됩니다. 개발자들은 Fiddler를 사용하여 웹 애플리케이션의 HTTP 및 HTTPS 통신을 검사하고 수정할 수 있습니다. Fiddler는 클라이언트와 서버 사이의 모든 HTTP(S) 요청과 응답을 가로채고 기록합니다. 이를 통해 개발자는 애플리케이션의 네트워크 트래픽, 요청 및 응답의 헤더, 쿠키, 캐시 등을 실시간으로 확인할 수 있습니다. 또한, Fiddler는 요청 및 응답의 본문 데이터를 편집하고 재전송할 수 있는 기능도 제공합니다.
728x90
반응형

'Computer Science > Network' 카테고리의 다른 글

[Network] Inbound와 Outbound  (1) 2023.12.22
[Network] DPI(Deep Packet Inspection)  (0) 2023.12.22
[Network] HTTP  (1) 2023.12.22
[Network] URI와 URL  (1) 2023.12.22
[Network] DNS  (0) 2023.12.22