VPN
Virtual Private Network
- 여러 곳에 분산되어 있는 컴퓨터들을 연견하는 보안성이 높은 Private Network
- 인터넷을 활용하여 원격지 간에 네트워크를 서로 연결하고 암호화 기술을 적용하여 보다 안정적이며, 보안성 높은 통신 서비스를 제공하는 서비스

- VPC(Virtual Private Cloud)와 VPC Gateway를 통해 On-Premise의 VPN 장비와 AWS 간의 VPN을 연결할 수 있다.
- VPN Gateway, Customer Gateway
VPC
Virtual Private Cloud
- 논리적으로 격리된 네트워크 공간을 할당하여 가상 네트워크에서 AWS 리소스를 이용할 수 있는 서비스 제공
- 가상 네트워크 환경을 설정 가능
- VPC 자체 IP 주소 범위
- Subnet
- Gateway
- Internet Gateway
- VPN Gateway
- Security Group, nACL
- IPv4, IPv6 모두 사용하여 리소스와 Application에 안전하고 쉽게 액세스할 수 있다.

VPC 구성 요소
Private IP
- VPC 내부에서만 사용할 수 있는 IP 주소
- Subnet 범위에서 자동으로 할당
Public IP
- 인터넷을 통해 연결할 수 있는 IP 주소
- ⚠️ Public IP 주소를 수동으로 연결하거나 해제할 수 없다.
- 인스턴스가 재부팅되면, 새로운 Public IP가 할당된다.
Elastic IP
- 고정 Pulbic IP
- 사용 가능한 탄력적 IP 주소는 5개로 제한
VPC
- AWS 계정을 위한 전용의 가상 네트워크
- VPC 내부의 네트워크에서도 서비스 목적에 따라 IP Block을 나누어 구분할 수 있다.
- VPC는 Region의 모든 AZ에 적용되며, 각 AZ에 하나 이상의 Subnet 추가 가능
Subnet
- VPC 내부 네트워크 상에서 분리된 IP Block의 모음
- 단일 AZ에서만 생성 가능.
- ❌ 여러 AZ에 걸쳐서 확장할 수 없다.
CIDR
- Classless Inter-Domain Routing
10.0.0.0/24
10.0.0.0/25
10.0.0.128/25
Public Subnet
- Subnet 네트워크 트래픽이
IGW (Internet Gateway)
로 라우팅 되는 Subnet
Private Subnet
Routing Table
- 각 Subnet 외부로 나가는 Outbound 트래픽에 대해 허용된 경로를 지정해줌
- Subnet간의 통신이나 VPC간의 통신을 위해 Routing Table을 이용
Security Group
vs nACL
구분 | Security Group | nACL |
---|
서비스 범위 | Instance 레벨에 적용 | Subnet 레벨에 적용 |
적용 정책 | Allow 만 적용 가능 | Allow, Deny 모두 적용 가능 |
구동 방식 | 규칙에 상관없이 반환 트래픽 허용 | 반환 트래픽이 별도로 허용되어야 함 |
Rule 검토/적용 | 해당 객체 내 모든 Rule 검토 | 해당 객체 내 Rule을 번호 순으로 처리 |
적용 방법 | Instance에 Security Group 추가 | 연결된 Subnet에 모든 Instance에 자동 적용 |
VPC Peering Connection
- 비공개적으로 두 VPC 간에 트래픽을 라우팅할 수 있게 하기 위한 서로 다른 VPC 간의 네트워크 연결을 제공
- 동일한 네트워크에 속한 것과 같이 서로 다른 VPC의 인스턴스 간에 통신을 가능하게 함.
- 서로 다른 Region 간 VPC Peering 가능
실제로 VPC Peering Connection을 만들 때
1. VPC Peering Connection 을 생성 (Source VPC, Target VPC)
2. 각 VPC 라우팅 테이블에 각 VPC CIDR 블록을 VPC Peering Connection으로 연결 설정
3. 각 인스턴스 리소스의 Security Group에 서로의 IP 블록을 Allow 설정

NAT Gateway
- Network Address Translation
- 내부 IP 주소를 외부 IP주소로 변환하는 작업을 수행하는 서비스
- Private Subnet에 있는 인스턴스를 외부 인터넷에 연결
- 외부에서 해당 인스턴스에 연결하지 못하도록 구성
NAT Gateway 구성 조건
- NAT Gateway를 생성하기 위해 Public Subnet 지정
- NAT Gateway와 연결할 Elastic IP 필요
- Private Subnet과 연결된 Routing Table 업데이트

VPC Endpoint
- Private Subnet에 위치한 인스턴스는 인터넷과 연결되어 있는 S3와 같은 공용 리소스를 연결할 수 없다.
- NAT Gateway를 사용하지 않고, VPC Endpoint를 이용하면 손쉽게 인터넷과 연결되어있는 공용 리소스를 연결할 수 있다.

VPN 연결
Site-to-Site VPN 단일 및 다중 연결 예 - AWS Site-to-Site VPN
- VPC 내 인스턴스는 On-Premise에 있는 서버나 IDC와 통신할 수 없다.
- VPN Gateway를 연결하고, 사용자 지정 Routing Table 생성하며, Security Group을 업데이트
- VPC에서 원격 네트워크에 접속 가능하도록 하이브리드 클라우드 환경을 구성
- VPC와 자체 네트워크 사이의 연결을 의미한다.

Create VPC workflow
