망연계란?

Kevin·2024년 10월 12일
4

Network

목록 보기
13/15
post-thumbnail

서론

최근 A 대역에 존재하는 WAS와 B 대역에 존재하는 데이터베이스에 대해 접근해 요청을 보내야 하는 일이 있었다.

WAS와 DB의 대역이 달라 직접적으로 접근을 할 수 없어, 같은 회사 분께 여쭈어 보니 “연계망을 타야 한다.” 라는 답변을 들었다.

연계망을 탄다는 것이 정확히 인지가 되지 않아, 이에 대해서 더 자세히 여쭈어보았다.

그러자 아래와 같은 답변을 들었다.

“서로 다른 두 망의 중계 서버를 거쳐 요청을 전달 시켜야 한다. ”

해당 글에서는 망연계에 대한 기본적인 개념과 예시를 통해 해당 개념을 공부 해보고자 한다.


망연계란?

망연계란 서로 보안 수준이 다른 망 간 데이터 전송 방식을 제공하는 기술이다.

개발을 하다 보면 내부망외부망으로 망이 분리된 환경을 겪는 일이 많다.

내부망에서 대역이 다른 외부망으로 요청을 보내고자 하는 일이 종종 있는데, 이 때 서로 다른 망 간 요청을 보낼 수 있게 하는 기술이다.

이러한 망연계 시스템은 아래와 같은 주요 구성 요소로 이루어져 있다.

  1. 망 연계 서버
    • 내부망과 외부망을 연결해주는 중간 서버 역할을 하며, 일반적으로 단방향 전송을 지원한다.
  2. 게이트웨이
    • Proxy, VPN과 같은 기능을 통해 서로 다른 대역간 통신을 관리한다.

위의 구성 요소 중 망 연계 서버에는 IP를 등록 해야 하는 절차가 있다.

각 망 연계 솔루션마다 절차 및 위 구성 요소는 상이 하기에 참고 정도로만 보면 된다.

  1. 외부망에서 접근할 클라이언트나 내부망에서 통신할 서버의 IP 주소 및 포트, 프로토콜을 등록한다.
  2. 등록을 마친 후 클라이언트에게 접근 할 수 있는 IP와 PORT를 제공한다.

위 절차를 글로만 보면 잘 이해가 안될 수도 있을 것이다.


예시

내부망에서 외부망에 요청을 보내는 예시를 통해 더 자세히 알아보도록 하자.

요청 사항은 아래와 같다.

내부망 WAS 인스턴스에서 외부망에 있는 데이터베이스에 요청을 보내고자 한다.


이 때 각 IP, PORT 정보는 아래와 같다고 하자.

[WAS]
IP : 30.16.2.15
PORT : 8080

[DB]
IP : 170.104.78.65
PORT : 30000


위와 같이 망이 다른 WAS와 DB가 있을 때 WAS 내부망에서 DB 외부망으로 요청을 보내고자 한다.

이 때 망연계가 필요하다.

망 연계 서버는 WAS에서 DB로 보내는 요청을 중계 해준다.


WAS 인스턴스에서 망 연계 서버에게 DB로 접근 하고 싶다고 요청한다.

실제로는 요청을 하고 싶어하는 Client가 망 연계 서버에 WAS 인스턴스를 등록 시키는 것이지만 설명의 편의성을 위해…

이 때 망연게 서버는 WAS 인스턴의 IP와 PORT를 저장한다.


그 후 WAS 인스턴스에게 같은 내부망 대역인 IP와 PORT를 공급한다.


WAS 인스턴스가 해당 IP:PORT로 요청을 보내면 망 연계 서버는 이를 DB 서버로 Forwarding 해준다.


이 때 PORT Forwarding 등의 기술을 사용하여 망 연계 서버는 WAS 인스턴스가 보낸 요청을 DB 인스턴스로 전달 시켜준다.

즉 쉽게 생각해서

망 연계 서버 내부에서 등록된 WAS 인스턴스의 IP와 PORT에서 30.16.2.10:30000으로 요청을 보내면 이를 핸들링 해서 170.104.78.65:30000 으로 요청을 보내는 것이다.

망연계 기술은 이러한 방법을 통해서 외부망과 내부망간 통신을 할 수 있게 한다.

profile
Hello, World! \n

0개의 댓글