전 포스팅에서 본 물리적 네트워크의 개념은 대부분 클라우드 기반 네트워크에도 적용됨
클라우드에서는 네트워크를 설정하는데 있어 복잡성이 제어, 보안 및 사용성에 영향을 주지 않도록 추상화 되어있다.
Amazon VPC(Virtual Private Cloud)
AWS 클라우드의 논리적으로 격리된 공간을 프로비저닝할 수 있는 서비스, AWS 클라우드의 자체 프라이빗 공간
가상 머신 및 기타 리소스를 VPC 내에 배치하게 된다
- 자체 IP 주소 범위 선택, 서브넷 생성, 라우팅 테이블 구성, 네트워크 게이트웨이 생성 등의 기능 제공(IPv4, IPv6 사용 가능)
- VPC의 네트워크 구성을 손쉽게 사용자 지정화 할 수 있다.
- 보안 그룹 및 네트워크 액세스 제어 목록을 비롯한 다중 보안 계층을 사용하여 각 서브넷에서 EC2인스턴스에 대한 액세스 제어 가능
VPC 및 서브넷
VPC : 다른 가상 네트워크와 논리적으로 분리되어 있는 가상 네트워크
- 고객 전용 서비스
- 단일 리전에 속하며 여러 가용 영역에 걸쳐 구현 가능
- VPC를 생성한 후 하나 이상의 서브넷으로 분할 가능
서브넷 : 자체 IP 주소 범위를 가진 VPC의 격리된 세그먼트(작은 조각 하나하나라고 생각하면 됨)를 나타냄
- 단일 가용 영역에 속함
- 여러 가용 영역들 안에 서브넷을 생성해 고가용성 실현 가능
- 퍼블릭(인터넷에 직접 액세스 가능) 또는 프라이빗(인터넷에 직접 액세스 불가능)으로 분류
IP 주소 지정
IP주소는 VPC 내의 리소스가 서로 통신하고 인터넷을 통해 다른 리소스와도 통신할 수 있게 해줌
VPC를 생성할 때 VPC에 IPv4 CIDR 블록(프라이빗 IPv4 주소의 범위) 할당
VPC 생성 후 주소 범위 변경 X
가장 큰 IPv4 CIDR 블록은 /16으로 총 65536개의 주소를 제공함
가장 작은 IPv4 CIDR 블록 크기는 /28으로 VPC에 16개의 주소를 제공
IPv6 CIDR 블록을 VPC와 서브넷에 연결하고 그 블록에 속한 IPv6 주소를 VPC 리소스에 할당 가능
서브넷이 전체 VPC와 동일할 수도 있음
자체 CIDR 블록이 있는 서브넷을 사용하여 VPC를 세분화할 수도 있음
-> 여러개의 서브넷 정의 가능
VPC에 2개 이상의 서브넷을 만들 경우 서브넷의 CIDR 블록이 중첩될 수 없다, 동일한 VPC에 중복된 IP주소가 있어서는 안된다.
서브넷을 생성할 때, 서브넷에는 자체 CIDR 블록이 필요
지정한 각 CIDR 블록에 대해 AWS는 해당 블록 내에 5개의 IP주소를 예약하며 해당 주소는 사용할 수 없다
ex) IPv6 CIDR 블록이 10.0.0.0/16인 VPC에 총 65536개의 IP주소가 있을 때 이 VPC에는 동일한 크기의 서브넷이 4개 구성되어 있다. 5개가 AWS에 의해 예약되기 때문에 실제로 각 서브넷에 251개의 IP주소만 사용할 수 있다.
VPC : 10.0.0.0/16 |
서브넷 1(10.0.0.0/24) 251개의 IP 주소 |
서브넷 2(10.0.0.0/24) 251개의 IP 주소 |
서브넷 3(10.0.0.0/24) 251개의 IP 주소 |
서브넷 4(10.0.0.0/24) 251개의 IP 주소 |
CIDR 블록 10.0.0.0/24의 IP주소 | 예약된 용도 |
10.0.0.0 | 네트워크 주소 |
10.0.0.1 | VPC 로컬 라우팅 및 내부 통신용 |
10.0.0.2 | DNS(Domain Name System) 확인용 |
10.0.0.3 | 향후 사용 |
10.0.0.4 | 네트워크 브로드캐스트 주소 |
퍼블릭 IP주소 유형
1. 퍼블릭 IPv4 주소
- VPC를 생성하면 해당 VPC의 모든 가상 머신에 자동으로 프라이빗 IP주소가 할당됨
- 서브넷의 자동 할당 퍼블릭 IP 주소 속성을 수정하여 인스턴스를 생성할 때 가상 머신에 할당할 퍼블릭 IP주소를 요청할 수 있음
2. 탄력적 IP 주소(고정 퍼블릭 IPv4 주소)
- 계정의 어떤 VPC에 대해서든 탄력적 IP주소를 인스턴스 또는 네트워크 인터페이스와 연결 가능
- VPC의 다른 인스턴스에 신속하게 다시 매핑하여 인스턴스 장애를 줄일 수 있음
- 인스턴스에 직접 연결하는 것보다 이점
- 장애 발생 시 네트워킹 인터페이스의 모든 속성을 한 인스턴스에서 다른 인스턴스로 한 번에 옮길 수 있음
- 추가 요금 발생 가능(사용하지 않으면 릴리즈 하기!)
탄력적 네트워크 인터페이스
: VPC의 인스턴스에 연결하거나 분리할 수 있는 가상 네트워크 인터페이스
- 다른 인스턴스에 다시 연결되어도 네트워크 인터페이스 속성은 그대로 적용됨
- 네트워크 인터페이스를 인스턴스 간에 이동하면 네트워크 트래픽이 새 인스턴스로 리디렉션 됨
- VPC의 각 인스턴스에는 주 네트워크 인터페이스라는 기본 네트워크 인터페이스가 있음
- 이 인터페이스에는 프라이빗 IPv4 주소가 자동으로 할당되며 VPC의 IPv4 주소 범위 내에 있음
- 기본 네트워크 인터페이스는 인스턴스에서 분리할 수 없음
- 추가 네트워크 인터페이스를 만들어 VPC의 모든 인스턴스에 연결할 수 있음
- 연결 가능한 네트워크 인터페이스의 수는 사용 중인 인스턴스 유형에 따라 달라짐
라우팅 테이블 및 경로
서브넷 안팎으로 네트워크 트래픽을 구성할 수 있는 규칙이나 경로가 포함됨
각 경로는 대상 위치와 대상을 지정
대상 위치는 서브넷에서 트래픽을 전달하려는 CIDR 블록
대상은 트래픽이 전송되는 처리 리소스
기본적으로 생성하는 모든 라우팅 테이블에는 로컬 경로가 포함되어 있음
이는 VPC의 내부 통신용이다
경로를 추가하여 라우팅 테이블을 사용자 지정화할 수 있다
로컬 경로 테이블 항목은 삭제할 수 없다 -> 내부통신에 사용되며 고정되어 있고 변경X
VPC 내의 각 서브넷은 라우팅 테이블(최대 1개)과 연결되어야 한다
기본 라우팅 테이블은 VPC에 자동으로 할당되는 라우팅 테이블로, 사용자 지정 라우팅 테이블과 명시적으로 연결되지 않은 모든 서브넷의 라우팅을 제어
서브넷은 한 번에 하나의 라우팅 테이블에만 연결 가능, 여러 서브넷을 같은 라우팅 테이블에 연결 가능
즉, 라우팅 테이블을 여러 서브넷에 사용 가능 but, 서브넷과 라우팅 테이블 간의 매핑은 일대일로 이루어짐
'AWS' 카테고리의 다른 글
VPC 보안그룹 | 네트워크 ACL (0) | 2022.07.12 |
---|---|
VPC 네트워크 (0) | 2022.07.12 |
네트워크 개념정리 (0) | 2022.07.11 |
AWS 데이터 보안 | 규정 준수 (0) | 2022.07.11 |
AWS 계정 보안 (0) | 2022.07.11 |