728x90
반응형
안녕하세요. 말아탕 입니다.
오늘도 그림으로 이해하는 AWS 구조와 기술 책을 읽고 이해한 내용을 간략하게 정리해 보자(홍보 X)
6장
가상 네트워크 서비스 Amazon VPC
가상 네트워크 서비스 Amazon VPC
Amazon VPC
- AWS가 제공하는 AWS 계정 전용 가상 네트워크이다.
- Amazon Virtual Private Cloud의 약자로 네트워크를 구축하기 위해 사용되는 것이다.
- 리소스를 사용하기 위해서는 반드시 필요한 서비스이다.(EC2, RDS)
- VPC를 별도로 설정하지 않으면 VPC자체는 격리된 네트워크가 되며, 외부와 통신하려면 VPC를 인터넷 or LAN과 연결해야 한다.
VPC 기능
항목 | 내용 |
CIDR 블록 | 서브넷을 말하며 네트워크를 나눈 범위이다. VPC를 생성할 때 네트워크 범위를 CIDR로 정한다. |
서브넷 마스크 | 네트워크 크기를 계산하는 값 |
가용 영역 | 서브넷이 구축된 물리적 장소 |
인터넷 게이트웨이 | 인터넷이 접속하기 위한 출입구 |
라우팅 | 어떤 데이터를 어디에 보낼지 조정한다. AWS는 소프트웨어가 이 기능을 담당한다. |
라우팅 테이블 | 라우팅에 대한 설정이 기록된 테이블 |
보안 그룹 | AWS가 제공하는 가상 방화벽, 기본 설정은 '거부' |
네트워크 ACL | AWS가 제공하는 가상 방화벽이다. 서브넷 단위로 설정된다. |
VPC 네트워크
- VPC 네트워크는 클라우드이기 때문에 일반 네트워크는 조금 다르다.
- 라우터가 가장 큰 차이점인데, VPC는 물리적인 라우터가 아닌 소프트웨어가 라우터 역할을 하며 라우팅을 수행한다.
- 라우팅은 라우팅 테이블에 따라 동작한다.
- VPC 네트워크의 특징
- 소프트웨어가 라우팅 한다. 라우터는 IP 주소를 갖지 않는다.
- 라우팅 테이블 한 개에 서브넷 여러 개를 설정할 수 있다.
- VPC 한 개에 인터넷 게이트웨이는 한 개만 설정할 수 있고, IP 주소를 갖지 않는다.
- 서브넷 사이의 통신은 라우터 없이 직접 통신할 수 있다.
VPC 설정
- VPC는 네트워크이다. 그에 따른 서버(인스턴스)가 어떤 환경에 설치되어 있는지, 인터넷에 연결해야 하는지에 대한 설정이 필요하다.
- 중요한 것은 인터넷 연결 여부와 오토 스케일링이 있다.
- 인터넷 연결 여부 : 인터넷을 연결해야 한다면 인터넷 게이트웨이를 설정
- 오토 스케일링 : 서버가 자동으로 늘어나기 때문에 IP 주소를 많이 확보해야 한다.
- 보안 그룹과 네트워크 ACL을 설정하려면 인스턴스 용도에 맞는 포트를 설정해야 한다.
- 어떻게 해야 할지 모를 때는 기본 VPC를 사용하기를 권장한다.
VPC 사용
- VPC 사용 절차
- AWS에 로그인한다.
- VPC를 생성한다. (CIDR 블록 설정)
- 서브넷을 설정한다.
- 인터넷에 연결한다.
기본 VPC
- AWS는 네트워크 지식이 없어도 VPC를 사용할 수 있도록 리전별로 기본 VPC를 제공한다.
- 특별한 설정 없이 바로 사용할 수 있다.
- 기본 VPC에서 ELB(Elastic Load Balancing)과 같은 서비스도 사용할 수 있다.
- 기본 VPC는 서브넷과 인터넷 게이트웨이가 기본적으로 구성되어 있다.
- VPC 마법사를 사용하면 몇 단계에 걸쳐 선택만 해도 VPC를 생성할 수 있다.
기본 VPC 네트워크 구성
네트워크 | CIDR | 네트워크와 범위 |
VPC 전체의 네트워크 범위 | 172.31.0.0/16 | 172.31.0.0 ~ 172.31.255.255 |
서브넷1 | 172.31.0.0/20 | 172.31.0.0 ~ 172.31.15.255 |
서브넷2 | 172.31.16.0/20 | 172.31.16.0 ~ 172.31.31.255 |
서브넷3 | 172.31.22.0/20 | 172.31.32.0 ~ 172.31.47.255 |
서브넷14 | 172.31.48.0/20 | 172.31.48.0 ~ 172.31.63.255 |
서브넷
- 서브넷이란 커다란 네트워크를 작게 나눈 네트워크를 말한다.
- 네트워크를 분할해 직접 통신할 수 있는 범위를 좁히고, 방화벽을 설정해 보안 강화하는 것을 목적으로 한다.
- 서브넷은 물리적 장소를 특정한다.(가용 영역에 서브넷을 둘지 설정)
- 서브넷별로 역할을 다르게 부여할 수 있다.
CIDR
- 네트워크와 서브넷의 범위를 나누는 데 사용되는 표기법을 CIDR(Classless Inter-Domain Routing)라고 한다.
- 프리픽스 표기라고도 한다.
- /.24, /20처럼 /(슬래시) 뒤에 네트워크 길이를 숫자로 적어서 표기한다.
- CIDR는 IP 주소의 수를 나타낸다.
- /24이면 256개, /20이면 4,096개 의미
- 2의 '32 - 네트워크 길이' 제곱을 기억할 것
- 네트워크 범위는 범위 안에서 가장 첫 번째 IP 주소와 CIDR 순으로 표기한다.
- 172.31.0.0/16이라고 가정하면 172.31.0.0 ~ 172.31.255.255까지가 네트워크 범위이다.
네트워크 클래스와 IP 주소 수
클래스 | CIDR | IP주소 수 | 사설 IP 범위 |
A 클래스 | /8 ~ /15 | 131,072 ~ 16,777,216 | 10.0.0.0 ~ 10.255.255.255 |
B 클래스 | /16 ~ /23 | 512 ~ 65,536 | 172.16.0.0 ~ 172.31.255.255 |
C클래스 | /24 ~ /32 | 1 ~ 256 | 192.168.0.0 ~ 192.168.255.255 |
DHCP
- AWS의 VPC는 EC2 인스턴스나 RDS 인스턴스 외에도 라우터나 인터넷 게이트웨이의 IP 주소로도 예약 주소를 사용할 수 있다.
- 네트워크 및 서브넷에 사용되는 IP 주소의 범위는 관리자가 설정할 수 있고, DHCP(Dynamic Host Configuration Protocol)에서 각 호스트(인스턴스)에 IP 주소를 자동으로 할당한다.
- VPC가 일반적으로 사용하는 IP 주소는 사설 IP 주소이다.
※DHCP : 사용할 수 있는 IP 주소 풀을 보유하고 있어, 클라이언트에게 자동으로 IP를 할당하는 서비스
※예약 IP 주소 : 첫 번째부터 네 번째까지의 IP 주소 4개와 마지막 IP 주소는 AWS에 예약된 IP 주소이기 때문에 사용할 수 없다.
IP주소가 256개라면 5개를 뺀 251개가 실제로 사용할 수 있는 IP 주소가 된다.
라우팅, 게이트웨이, IP 마커스레이드
- 데이터를 라우터로 보내고, 라우터가 목적지로 보내는 방식이 필요한데, 이를 라우팅이라 한다.
- 라우팅은 여러 물동이를 거쳐 물을 전달하는 것처럼, 호스트에서 호스트로 데이터를 전달하는 형태로 데이터를 전송한다.
- 라우터는 네트워크의 관문에 위치해 있기 때문에 관문이라는 의미로 게이트웨이라고도 한다.
- 게이트웨이 중에 '자신 이외의 접속되어 있는 모든 것(대부분의 경우 인터넷과의 연결점)'을 기본 게이트웨이라고 한다.
- LAN에서 인터넷으로 데이터를 전송할 때 LAN 내부의 출입구가 되는 것이 게이트웨이다.
- 게이트웨이는 기기의 역할을 말하며 실제 기기는 라우터이다.
- 게이트웨이가 사설 IP 주소를 공인 IP 주소로 변환하고 가정 or회사 내에서는 공인 IP주소 하나를 공동으로 사용한다.
- 주소 변환을 담당하는 것이 IP 마스커레이드(masquerade)(NAPT(Network Address Port Translation)이다.
- IP 마커스레이드는 일대다이며 공인 IP 주소와 사설 IP 주소를 변환한다.
IP 마커스레이드, NAT
- IP 마커스레이드를 사용하면 내부에서 외부로 나가는 것은 가능하지만, 외부에서 내부로 들어오는 것은 불가능하다.
- IP 마커스레이드는 내부에서 외부로 요청하는 것에 응답하지만, 외부에서 내부로 요청하는 것에는 응답하지 않기 때문이다.
- IP 마커스레이드는 공인 IP 하나만 설정할 수 있기 때문에 서버가 여러 대라면 공인 IP 주소를 여러 개 설정할 수 있는 NAT(Network Address Translation)를 사용해야 한다.
- NAT는 다대다이며 공인 IP 주소와 사설 IP 주소를 변환한다.
IP 마커스레이드와 NAT의 차이
IP 마커스레이드 | NAT |
1. 일대다 2. 포트(호스트상에 어떤 소프트웨어와 통신할 것인지 식별하는 번호)를 변환 가능 |
1. 다대다 2. NAT는 포트 변환 불가능 |
인터넷 게이트웨이
- 인터넷 게이트웨이는 인터넷 연결을 담당한다.
- 인터넷 게이트웨이가 공인 IP 주소(목적지)를 사설 IP 주소로 변환하여 해당 EC2 인스턴스에 요청을 보낸다.
- EC2 인스턴스는 사설 IP 주소밖에 설정할 수 없기 때문에
NAT 게이트웨이
- 회사 내부에서만 사용하는 서버의 경우에도 소프트웨어를 업데이트하려면 인터넷에 연결해야 할 때가 있다.
- NAT 게이트웨이는 EC2 인스턴스와 인터넷을 연결한다.
- NAT 게이트웨이는 서브넷에서 인터넷으로 접속할 수 있지만, 인터넷에서 서브넷으로 접속하지 못하게 한다.
보안 그룹과 네트워크 ACL
- VPC의 가상 방화벽으로 보안 그룹과 네트워크 ACL이 있다.
- 보안 그룹과 네트워크 ACL은 인바운드 트래픽과 아웃바운드 트래픽을 제어한다.
- 양쪽 모두 설정해야 하며 설정하지 않으면 기본설정이 적용된다.
- 네트워크 ACL은 서브넷 단위로 설정하기 때문에 개별 인스턴스에 설정할 필요가 없다.
항목 | 보안 그룹 | 네트워크 ACL |
설정 범위 | 인스턴스에 대해 설정한다(최대 5개) | 서브넷에 설정한다. |
규칙 | 규칙 허용만 가능 | 규칙 허용과 거부가 가능 |
설정 | 스테이트풀(stateful) (규칙과 상관없이 반환된 트래픽을 자동으로 허용한다) |
스테이트리스(stateless) (반환된 트래픽을 규칙에 따라 명시적으로 허용한다) |
규칙의 적용 순서 | 모든 규칙을 확인하여 트래픽의 허가 여부를 정한다. | 순서대로 규칙을 처리하면서 트래픽의 허가 여부를 정한다. |
VPC 엔드포인트
- VPC 엔드포인트란 VPC 내부에서 VPC 외부로 접속하기 위한 연결점을 제공하는 서비스이다.
- VPC 외부의 다른 서비스와 VPC를 연결하려면 인터넷 게이트웨이를 사용해 인터넷으로 접속해야 한다.
- 인터넷 게이트웨이를 통하지 않고, S3와 같은 VPC 외부에 있는 서비스와 VPC를 직접 연결해 주는 것이 엔드포인트 서비스이다.
- VPC 엔드포인트는 가상 서비스이다. 트래픽에 대해 고민하지 않아도 된다.
- 엔드포인트의 요금은 무료지만 인터페이스 엔드포인트의 경우에는 요금을 부과된다.
- VPC 엔드포인트 기본요금 + 데이터 전송 요금
- 종류에는 인터페이스 엔드포인트, 게이트웨이 엔드포인트가 있다.
- 인터페이스 엔드포인트 : 네트워크 인터페이스로 구축하는 유형
- 사설 IP 주소를 가진 ENI가 존재하며 각 서비스와 출입구 역할을 한다.
- AWS PrivateLink라는 방식을 사용하기 때문에 AWS 외에 타사 서비스가 PrivateLink를 지원하면 사용 가능하다.
- 게이트웨이 엔드포인트 : 라우팅 테이블에 설정된 내용을 라우팅 하는 유형
- 서비스 리전 단위로 라우팅 테이블을 설정하는 방식이다.
- 한 번 설정하면 해당 리전의 모든 서비스에 사용 가능하다.
- ex) S3, DynamoDB
- 인터페이스 엔드포인트 : 네트워크 인터페이스로 구축하는 유형
VPC 연결
- VPC는 다른 VPC나 네트워크와 연결할 수 있다.
- VPC끼리 연결하려면 VPC 피어링이라는 기능을 활성화해야 한다.
- VPC는 물리적인 네트워크 or 다른 클라우드에도 접속할 수 있다.
- AWS는 전용선 서비스로 AWS Direct Connect를 제공하며, 가상 사설망 서비스로 AWS VPN을 제공한다.
- 전용선 혹은 VPN을 사용하면 통신 내용이 누설될 걱정을 하지 않아도 된다.
전용선과 가상 사설망
- 네트워크와 네트워크를 연결해 커다란 네트워크를 구축하는 것을 WAN(Wide Area Network)이라 한다.
- WAN을 구축하는 방법으로는 두 가지가 있다.
- 전용선
KT와 같은 통신 사업자가 직접 연결할 수 있는 회선인 전용선을 임대하여 구축
비싸다, 안전하고 신뢰성이 높다.
- 가상 사설망(VPN)
공용 회선을 사용하여 거점끼리 통신을 암호화하여 연결한다.
비용이 싸지만, 신뢰성이 낮다.
데이터가 유출될 걱정은 없다.
인터넷 VPN은 인터넷 회선만 사용하므로 선 공사는 불필요하며 VPN을 지원하는 라우터만 설치하면 이용이 가능하다.
AWS Direct Connect
- AWS Direct Connect는 VPC나 AWS 서비스와 다른 네트워크를 전용선으로 연결하는 서비스이다.
- AWS 네트워크에 전용선을 물리적으로 연결하는 방벙이다.
- 비용을 절약하고 간단하게 도입하고 싶다면 AWS Direct Connect 공유 설비를 사용한 연결 서비스를 사용하는 방법이 있다.
- AWS Direct Connect 게이트웨이는 AWS Direct Connetc 컴포넌트 중 하나이다.
- 기본 설정은 일대일 연결이지만, 게이트웨이를 구축하면 일대다(AWS에 여러 개)로 연결할 수 있다.
AWS VPN
- AWS VPN은 인터넷 VPN을 사용하여 다른 네트워크와 연결하는 방법이다.
- AWS 네트워크에 가상으로 전용선을 연결한다.
- VPN을 지원하는 라우터가 설치되어 있다면 사용 가능하다. -> VPN 연결이라고 한다.
- VPC에 VPG(Virtual Private Gateway)를 구축하는데, AWS 용어로 고객 게이트웨이라고 한다.
- AWS VPN은 퍼블릭 연결, 프라이빗 연결과 같은 구분이 없고 VPC만 접속할 수 있다.
- AWS VPN은 네트워크 품질과 속도를 보장하지 않는다.
전송 게이트웨이
- 전송 게이트웨이란 VPC나 온프레미스 네트워크를 하나로 묶어 서로 연결하는 '접속점'(연결점)을 제공하는 서비스이다.
- 서로 다른 AWS 계정도 연결할 수 있다.
- 전송 게이트웨이는 네트워크 여러 개를 중앙 거점으로 집약하여 통신 경로를 통합적으로 처리하는 서비스이다.
참조
직접 구매 한 그림으로 이해하는 AWS구조와 기술 책
728x90
반응형
'인프라 > AWS' 카테고리의 다른 글
몇 가지 AWS 서비스 알아보기 (0) | 2024.04.27 |
---|---|
Amazon RDS 이해 (0) | 2024.04.20 |
Amazon S3 이해 (0) | 2024.04.06 |
Amazon EC2 이해 (0) | 2024.03.30 |
AWS를 사용하기 위한 도구 (0) | 2024.03.23 |