[AWS][Networking][강의노트] VPN, DX, Endpoint Service, Transit Gateway, Traffic Mirroring

컴퓨터공학/분산시스템

2022. 02. 24.

사내망과 VPN 연결 만들기

Virtual Private Gateway (VGW)

VPN

AWS 자원과 사내망 간에 연결을 수립한다. www상에서 연결이 맺어지지만 암호화로 보호된다.

VGW를 통한 VPN 연결 설정

  • VPC에 Virtual Private Gateway(VGW)를 붙인다.
  • 회사는 Customer Gateway를 노출 한다.
  • 회사 Customer Gateway를 Private으로 두고 싶다면, 앞단에 Public NAT Gateway를 노출하고 있어야 한다.

Route Propagation 활성화

당신 서브넷에 달린 라우트 테이블에서 Route Propagation 옵션을 켜둔다.

연결 대상

  • VGW ↔ Customer Gateway
  • 또는, VGW ↔ Customer NAT Gateway 연결을 수립

VGW를 통한 VPN CloudHub 만들기

VGW는 다른 사설망 여럿과 연결을 맺을 수 있다.

VGW에 Dynamic Routing 옵션을 켜고 라우트 테이블을 설정한다면

사설망 A, B, C는 VGW를 통해 서로 대화할 수 있다.

사내망과 물리적으로 연결

Direct Connection (DX)

외부망과 VPC 간에 VPN 연결을 수립한다면 www을 이용하게 된다.

www가 아닌 전용의 네트워크 인프라를 쓰고 싶다면

회사와 Direct Connection Location간 물리적인 연결을 이용한다.

DX 장점

  • 큰 쓰루풋 작업의 부담이 줄어든다
  • 일관적인 네트워크 사용 경험을 준다: www를 쓰면 무슨 일로 네트워크가 말썽이 될지 예측할 수 없다.
  • 사내망과 AWS 클라우드망을 섞어 쓸 수 있다.

DX 설정하기

(설정을 마치는데 한 달 이상이 걸릴 수 있다)

  • 회사는 Direct Connection Location의 라우터를 렌트한다.
  • 회사는 Direct Connection Location과 물리적 연결을 구축한다.
  • 사내망에 라우터를 두고 여기서부터 Private Virtual Interface를 구현한다
    • 사내 Router ↔ 빌린 Router ↔ AWS Direct Connect Endpoint ↔ VPC의 VGW ↔ 서브넷의 EC2 인스턴스
  • Public Virtual Interface를 구현하여 사내망과 AWS 서비스 간 사적으로 통신할 수도 있다.
    • S3 ↔ AWS Direct Connect Endpoint ↔ 빌린 Router ↔ 사내 Router

DX 연결의 사양

  • Dedicated Connections
  • 물리적 연결이다. 1Gps~10Gps.
  • Hosted Connections
  • AWS Direct Connect 협력사를 통한다.

여러 VPC와 DX를 맺고 싶다면

Direct Connect Gateway

더 많은 VPC와 DX를 맺고자 한다면, Direct Connect Gateway를 사용하여 유연하게 대처하자.

다이어그램

AWS Direct Connect Endpoint ↔ Direct Connect Gateway ↔ VPC의 VGW

보안

  • 사설 연결망이라 전송 데이터의 암호화는 없다.
  • 사내망 - DX 사이에 VPN을 연결을 두어 이 구간의 연결을 암호화할 수 있으니, 추가 보안이 필요하면 이 방법을 고려한다.

회복력 갖추기

One connection at multiple locations 모델

사내망은 여러 Direct Connection Location과 Private VIF를 구축하는 게 좋다.

더 나아가 동일 Direct Connection Location이랑 여러 개의 Private VIF를 구축하는 게 더욱 좋다.

요약

  • AWS Direct Connection Location을 다중화
  • Private VIF를 다중화

VPC내 서비스를 다른 VPC에 노출하기

선택지1: 서비스를 Public하게 노출

www를 통해 서비스를 노출하므로 Reliable하지 않다.

선택지2: VPC Peering 맺기

일일이 다른 VPC 간 Perring Connection을 설정해야 한다.

내 VPC의 모든 자원이 상대에게 노출되는 부담이 있다..

딱 하나의 서비스만 상대에게 노출할 순 없을까?

선택지3: VPC Endpoint Services

이명은 AWS PrivateLink 이다.

다른 VPC에게 우리 서비스를 가장 안전하게 노출하는 방식이다.

Scalable하고 안전한 아키텍처를 강제하는 듯.

S3처럼 우리 서비스를 VPC 엔드포인트를 통해 접근할 수 있는 서비스로 만들어 준다.

준비 과정

  • 본인 VPC에 NLB를 두어야 한다.
  • 고객님 VPC에 ENI나 GWLB를 두어야 한다.
  • NLB ↔ ENI, GWLB 간에 연결 수락해줘야 한다. VPC Peering 없이 이런 연결을 구현할 수 있다는 게 장점이다.

실습1. PrivateLink 만들기

  1. VPC> VPC Endpoint Services> 노출하려는 서비스의 NLB를 지정하여 Endpoint Service 하나 만든다
  2. 고객은> VPC Endpoints> PrivateLink Ready partner services> 방금 만든 Enpoint Service 지정하여 엔드포인트 하나를 만든다.
  3. 서비스 제공자는 연결을 수락한다
  4. 이제 고객은 자신의 VPC 엔드포인트를 통해 서비스 제공자의 NLB를 Private하게 접근 가능하다.

선택지4: EC2-Classis & AWS Classic Link (Deprecated)

이런 개념들은 시험의 오답 선택지에 등장할 것이다.


토폴로지를 단순화

  • 여러 VPC들
  • VPC 간의 Peering Connection들..
  • 사내망과 VPN 연결이나 Direct Connection들...
  • IGW, VGW, DXGW, ENI, NLB, GWLB....
  • 가상 인터페이스를 구현하는 라우트 테이블 설정들.....

→ 네트워크 토폴로지가 계속 복잡해지기 시작한다

Transit Gateway 개요

컴포넌트 간에 강하게 의존이 발생한다면, 레이어를 중간에 추가하여 느슨하게 만들면 된다.

Transit Gateway가 그런 역할을 한다.

Transit Gateway에 물릴 수 있는 것들

  • VPC(VGW)
  • Direct Connect Gateway
  • VPN Connection

특징

  • RAM을 통하여 다른 계정과 공유 가능한 리소스다
  • Region에 배치되지만, Cross-Region으로 동작한다.
  • Transit Gateway끼리 Peering 할 수도 있다.
  • Transit Gateway의 라우트 테이블로 트래픽을 중앙 조정한다.
  • IP Multicast를 지원하는 유일한 서비스이다.

VPC Peering → Not Transitive

Transit Gateway의 이름은 VPC Peering와 반대되는 특징을 갖는 걸 보여준다.

Transit Gateway를 중심으로 여러 네트워크 컴포넌트들이 물릴 수 있고, 물려있는 것들끼리 서로 대화를 주고 받을 수 있다.

VPN ECMP 구현하기

Equal cost multi path 라우팅
한 패킷을 여러 경로에 포워딩하는 형태

VPN 대역폭 2배 활용하기

Transit Gateway에 VPN Connection을 물릴 수 있는데

이 경우에는 VPN Connection의 forward/backward 라인을 모두 사용할 수 있게되어 대역폭이 2배가 된다.

VPN 연결 다중화하기

하나의 사내망과의 VPN Connection을 여러 개 설정하면 어떨까?

→ AWS와 사내망 사이의 대역폭을 크게 확장!

Transit Gateway 없이 사내망과 VGW가 직접 연결되는 아키텍처였다면? 하나의 라인을 쓰므로 대역폭 절반이 손해이며, 대역폭 증대 구현이 복잡할 것이다.


VPC Traffic Mirroring

ENI로 지나다니는 트래픽을 확인하는 법

트래픽을 중간에 Security Appliance 측으로 경유시키는 방식이다.

동작 방식

  • 감시 대상 ENI가 있어야 한다
  • Security Appliances는 ENI나 NLB가 있어야 한다 (주소가 있어야 한단 소리)
  • Traffic Mirroring이 감시 대상 ENI의 Inbound/Outbound 트래픽을 Security Appliances 쪽으로 보내준다.