Study Note

AWS VPC 서비스 본문

AWS

AWS VPC 서비스

moreLearn 2020. 2. 18. 11:21

Netework

Net + Work의 합성어이다. NetWork는 서로 연결해서 가지고 있는 정보를 결합하여 생산적인 가치를 만드는 일이다. ‘네트워킹을 한다 = 통신 한다.’ 라고 생각하면 된다. 또한 이런 통신을 위하여 지켜야 하는 약속들을 Protocol이라고 한다.

VPN

Virtual Private Network의 약자로 안정적이며 보안성 높은 통신 서비스이다.

여러 곳에 분산되어 있는 컴퓨터들을 연결하는 보안성 높은 사설 네트워크를 만들거나, 원격 접속 시 암호화 기술을 적용하는 서비스이다.

네이버 백과사전

AWS는 VPC와 VPC Gateway를 통해 On-pemise의 VPN 장비와 AWS 같의 VPN 연결이 가능하다. 때문에 보안성 높은 Hybrid Cloud 환경을 구현할 수 있다.

VPC

Virtual Private Cloud의 약자로 AWS에서 논리적으로 격리된 네트워크 공간을 할당하여 가상 네트워크에서 AWS 리소스를 이용하는 서비스이다.

VPC는 가상 네트워킹 환경을 제어할 수 있다. IP 주소 범위, Subnet 생성, Routing Table, 네트워크 게이트웨이 구성 선택 등을 제어할 수 있다.

VPC 서비스 설명

VPC IP 구성 요소

VPC IP 구성 요소

VPC Subnet

VPC 내부 네트워크에서 서비스 목적에 따라 IP Block을 나눌 수 있다. 이런 IP Block을 Subnet이라 하며 네트워크 상의 Subnet과 동이한 개념이다.

VPC는 리전의 모든 가용 역역에 적용된다. 또한 각 가용 영역에 하나 이상의 서브넷을 추가할 수 있지만 단일 가용 영역에서만 생성할 수 있으며, 다른 가용 영역으로 확장할 수 없다.

VPC Subnet Size

VPC를 생성할 때 CUDR(Classless Inter-Domain Routing)형태로 IP 주소 범위를 지정한다.

VPC를 생성하면 10.0.0.0/24로 생성되고 256개의 IP 주소를 얻게 된다. 이런 CIDR 블록을 128개의 IP로 구성된 (10.0.0-/25 CIDR과 10.0.0.128/25 CIDR) Subnet으로 나눌 수 있다.

Public Subnet / Private Subnet

 

Public Subnet
서브넷 네트워크 트래픽이 인터넷 게이트웨이로 라우팅 된다. 인터넷망을 통해 서비스를 수행하는 Web Server는 Public Subnet에 생성해야 한다. 때문에 EC2 인스턴스가 IP를 통해 인터넷 통신을 하려면 Public Subnet이고 Elastic IP가 있어야 한다.

 

Private Subnet
서브넷 네트워크 트래픽이 인터넷 게이트웨이로 라우팅 되지 않는다. 인터넷에 직접적인 연결할 필요가 없고, 높은 보안성이 필요한 DB Server는 Private Subnet에 생성해야 한다.

Routing Table

Subnet은 외부로 나가는 Outbound 트래픽에 대한 혀용 경로를 지정하는 Routing Table과 연결되어야 한다. 새로 생성된 Subnet은 자동적으로 VPC의 기본 Routing Table과 연결되며 이 Table내용을 변경할 수 있다.

Routing Table은 Subnet 내에서 생성된 네트워크 패킷이 목적지 IP로 이동하기 위한 경로를 알려준다. 때문에 Subnet 간 통신이나 VPC 간의 원활한 통신을 위해 Routing Table을 이용한다.

VPC Service

Security Group / Network ACL

보안 그룹(Security Group)과 네트워크 액세스 제어 목록(Network ACL)은 네트워크 통신과 트래픽을 IP와 Port를 이용하여 허용/차단하는 서비스이다.

Security Group / Network ACL의 서비스 비교

VPC Peering Connection

VPC 피어링 연결(Peering Connection)을 하면 두 VPC의 트래픽 라우팅을 통해 동일한 네트워크에 속한 것처럼 인스턴스 간의 통신이 가능하다.

AWS VPC Preering Connection

글로벌 기업에서 전 세계 임직원을 대상을 이메일 서비스를 제공하는 경우 각 구역별로 이메일 서버를 구축해야 하는데 VPC Peering Connection 서비스를 이용할 경우 안정성/보안성이 높은 네트워크 인프라를 이용할 수 있다.

NAT Gateway

NAT
Network Address Translation의 약자이다. NAT은 내부 IP 주소를 외부 IP주소로 변환하는 서비스이다.

 

NAT Gateway
Private Subnet 내의 인스턴스를 인터넷 또는 AWS 서비스에 연결하고, 외부에서 해당 인스턴스를 연결하지 못하도록 구성하는데 사용한다.

외부에 공개되지 않고 윈도우 패치나 보안 업데이트, 소프트웨어 업데이트를 인터넷을 통해 받아야 할 경우 NAT Gateway나 NAT Instance를 사용한다.

 

Nat Gateway 조건

  • NAT Gateway를 생성하기 위해 Public Subnet을 지정
  • NAT Gateway와 연결할 Elasic IP 주소 필요
  • NAT Gateway를 만든 후 인터넷 트래픽이 NAT Gateway로 통신이 가능하도록 Private Subnet과 연결된 Routing Table 업데이트

AWS NAT GatewayVPC Endpoint

Amazon S3는 인터넷망에 연결된 서비스이기 때문에 Public Subnet의 인스턴스는 연결 가능하지만 Private Subnet의 인스턴스는 S3 같은 공용 리소스와 연결할 수 없다.

이때 NAT Gateway를 사용하지만 VPC Endpoint를 이용하면 쉽게 S3등에 연결할 수 있다.

AWS VPC Endpoint

VPN Connection은 VPC와 자체 네트워크 사이의 연결을 의미한다.

AWS의 VPC와 IDC 내부의 시스템 간의 데이터 통신을 위해 Hybrid Cloud 환경을 다음과 같이 구성할 수 있다.

  1. VPC에 가상의 Private Gateway를 연결
  2. 사용자 지정 Routing Table을 생성
  3. 보안 그룹(Security Group) 규칙을 업데이트
  4. AWS 관리형 VPN Connection을 생성
  5. VPC에서 원격 네트워크에 접속

VPN Connection

 

'AWS' 카테고리의 다른 글

AWS ELB - Elastic Load Balancing  (1) 2021.06.02