VPC 에 대해 알기 전에 IP에 대한 기본적인 내용 정리가 필요하다고 생각하여 정리한다.
- IP의 개념과 서브넷마스크 , 클래스
IP(Internet Protocol)란?
인터넷에 연결되어 있는 모든 장치들(컴퓨터, 서버 장비, 스마트폰 등)을 식별할 수 있도록 각각의 장비에게 부여되는 고유 주소이다.
패킷 교환 네트워크 상에서 데이터를 교환하기 위한 프로토콜 이다.
전세계의 인터넷 상에서 사용되는 IP 주소와 도메인을 관리하는 기관은 IANA(Internet Assigned Numbers Authority) 이다.
현재 IP 주소는 IPv4, IPv6 두가지 종류가 있으며 일반적으로 IPv4를 ip라고 부른다.
인터넷 사용의 급격한 증가로 IPv4가 고갈될 수 있어서 IPv6가 생겼다.
IPv4 , IPv6 차이점
IP는 일반적으로 192.168.121.123와 같이 마침표로 구분된 4개의 숫자가 있는, 점으로 분리된 10진수 형식으로 표시된다.
마침표로 구분되기 전까지 들어갈 수 있는 숫자 중 가장 큰 수는 255다. 2진수로 나타내면 2^8 이 256이기 때문에.
마침표로 구분되는 구역들 하나하나를 옥텟이라고 부른다.
IP 주소 구성
아이피는 네크워크 ID + 호스트 ID로 구성되어 진다.
네트워크 ID
전세계 Host들을 관리하기 힘드니 각 국가마다 Network ID를 부여한다고 보면 된다. 그럼 네트워크 아이디가 같으면 어떤 국가인지 알 수 있게 된다.
호스트 ID
호스트들을 개별적으로 관리하기 위해 사용하게 된 것이다. 즉, 국가의 국민에 해당한다.
따라서 우리가 인터넷을 사용할 때 목적지를 알아내고 찾아가기 위해서는 NetworkID와 HostID가 합쳐진 IP 주소를 보게 된다.
ex)
192.168.10.10 /24 → 11000000.10101000.00001010.00001010
subnet mask : 255.255.255.0
네트워크 주소는 11000000.10101000.00000010 이 되고, 나머지 빨간 부분인 00001010은 호스트 주소가 된다.
그리고 192.168.10. 으로 시작하는 PC는 192.168.10.10, 192.168.10.25, 192.168.10.126 ...과 같은 네트워크에 속하고 있다고 말 할 수 있다.
IP 주소 클래스
현재는 사용되지 않고 CIDR 방식을 사용하지만, 개념적으로 어떻게 발전했는지 이해하기 위해 준비했다.
클래스는 옥텟별로 나누게 되며 각 클래스마다 네트워크 ID, 호스트 ID 부분 범위가 달라진다.
보통 우리가 사용하는 클래스는 A,B,C 클래스이다.
A 클래스 | 주소 | 1.0.0.0 ~ 127.255.255.255 |
서브넷 마스크 | 255.0.0.0 | |
그룹별 호스트 개수 | 2^24-2 = 16,777,214 개 | |
B 클래스 | 주소 | 128.0.0.0 ~ 191.255.255.255 |
서브넷 마스크 | 255.255.0.0 | |
그룹별 호스트 개수 | 2^16-2 = 65,534개 | |
C 클래스 | 주소 | 192.0.0.0 ~ 223.255.255.255 |
서브넷 마스크 | 255.255.255.0 | |
그룹별 호스트 개수 | 2^8-2 = 256개 | |
D 클래스 | 주소 | 224.0.0.0 ~ 239.255.255.255 |
특징 | 멀티캐스트용 | |
E 클래스 | 주소 | 240.0.0.0 ~ 254.255.255.255 |
특징 | 미래에 사용할 IP로 예약되어 있음 |
클래스는 다른 블로그에서 깔끔하게 정리해놓아서 가져왔다.
CIDR
Classless Inter-Domain Routing 으로 클래스 없는 도메인간 라우팅 기법이다.
클래스가 없다는 뜻은 네트워크 구분을 위에서 설명한 Class로 하지 않는다는 것이다.
Class는 CIDR가 나오기전 사용했던 네트워크 구분 체계입니다.
CIDR가 나오면서 Class 체계보다 더 유연하게 IP주소를 여러 네트워크 영역으로 나눌 수 있게 되었다.
CIDR 표기법
ex ) 192.168.10.0/24
'/' 뒤에 N은 prefix 길이이며 주소의 왼쪽으로부터 비트의 수를 가리키고 있습니다.
prefix 비트 수를 자유롭게 조절 가능한 점에서 기존에 클래스로 ip를 관리하면 더 잘게 쪼개지 못하고, 클래스별로만 나누던 네트워크를 더욱 세분화해서 나눠서 사용할 수 있다.
서브넷 마스크 치트 시트
CIDR | 서브넷 마스크 | IP 주소 개수 | 와일드카드 마스크 |
/32 | 255.255.255.255 | 1 | 0.0.0.0 |
/31 | 255.255.255.254 | 2 | 0.0.0.1 |
/30 | 255.255.255.252 | 4 | 0.0.0.3 |
/29 | 255.255.255.248 | 8 | 0.0.0.7 |
/28 | 255.255.255.240 | 16 | 0.0.0.15 |
/27 | 255.255.255.224 | 32 | 0.0.0.31 |
/26 | 255.255.255.192 | 64 | 0.0.0.63 |
/29 | 255.255.255.248 | 8 | 0.0.0.7 |
/28 | 255.255.255.240 | 16 | 0.0.0.15 |
/27 | 255.255.255.224 | 32 | 0.0.0.31 |
/26 | 255.255.255.192 | 64 | 0.0.0.63 |
/25 | 255.255.255.128 | 128 | 0.0.0.127 |
/24 | 255.255.255.0 | 256 | 0.0.0.255 |
/23 | 255.255.254.0 | 512 | 0.0.1.255 |
/22 | 255.255.252.0 | 1024 | 0.0.3.255 |
/21 | 255.255.248.0 | 2048 | 0.0.7.255 |
/20 | 255.255.240.0 | 4096 | 0.0.15.255 |
/19 | 255.255.224.0 | 8192 | 0.0.31.255 |
/18 | 255.255.192.0 | 16384 | 0.0.63.255 |
/17 | 255.255.128.0 | 32768 | 0.0.127.255 |
/16 | 255.255.0.0 | 65536 | 0.0.255.255 |
/15 | 255.254.0.0 | 131072 | 0.1.255.255 |
/14 | 255.252.0.0 | 262144 | 0.3.255.255 |
/13 | 255.248.0.0 | 524288 | 0.7.255.255 |
/12 | 255.240.0.0 | 1048576 | 0.15.255.255 |
/11 | 255.224.0.0 | 2097152 | 0.31.255.255 |
/10 | 255.192.0.0 | 4194304 | 0.63.255.255 |
/9 | 255.128.0.0 | 8388608 | 0.127.255.255 |
/8 | 255.0.0.0 | 16777216 | 0.255.255.255 |
/7 | 254.0.0.0 | 33554432 | 1.255.255.255 |
/6 | 252.0.0.0 | 67108864 | 3.255.255.255 |
/5 | 248.0.0.0 | 134217728 | 7.255.255.255 |
/4 | 240.0.0.0 | 268435456 | 15.255.255.255 |
/3 | 224.0.0.0 | 536870912 | 31.255.255.255 |
/2 | 192.0.0.0 | 1073741824 | 63.255.255.255 |
/1 | 128.0.0.0 | 2147483648 | 127.255.255.255 |
/0 | 0.0.0.0 | 4294967296 | 255.255.255.255 |
- 공인 IP, 사설 IP
공인 IP
인터넷 사용자의 로컬 네트워크를 식별하기 위해 ISP(인터넷 서비스 공급자)가 제공하는 IP 주소이다. 공용 IP 주소라고도 불리며 외부에 공개되어 있는 IP 주소이다.
- 공인 IP는 전세계에서 유일한 IP 주소를 갖는다.
- 공인 IP 주소가 외부에 공개되어 있기에 인터넷에 연결된 다른 PC로부터의 접근이 가능하다. 따라서 공인 IP 주소를 사용하는 경우에는 방화벽 등의 보안 프로그램을 설치할 필요가 있다.
사설 IP
일반 가정이나 회사 내 등에 할당된 네트워크의 IP 주소이며, 로컬 IP, 가상 IP라고도 한다. IPv4의 주소부족으로 인해 서브넷팅된 IP이기 때문에 라우터에 의해 로컬 네트워크상의 PC 나 장치에 할당된다.
사설 IP 주소 대역
RFC 1918 문서
국제 인터넷 표준화 기구 (IETF)에서 공포한 표준으로, 지정된 IP주소를 사설망으로 규정하고 해당 IP주소들은 공인망으로 사용하지 않고 각 기업 내에서 사설망으로만 사용하는 것을 지키기로 한 원칙을 말한다.
아래 주소까지가 RFC1918에서 규정한 사설 IP 주소의 범위이다.
CIDR 표기 | IP 범위 |
10.0.0.0/8 | 10.0.0.0~10.255.255.255 |
172.16.0.0/12 | 172.16.0.0~172.31.255.255 |
192.168.0.0/16 | 192.168.0.0~192.168.255.255 |
차이점
공인 IP (Public IP) | 사설 IP (Private IP) | |
할당 주체 | ISP(인터넷 서비스 공급자) | 라우터(공유기) |
할당 대상 | 개인 또는 회사의 서버(라우터) | 개인 또는 회사의 기기 |
고유성 | 인터넷 상에서 유일한 주소 | 하나의 네트워크 안에서 유일 |
공개 여부 | 내/외부 접근 가능. | 외부 접근 불가능 |
- VPC (Virtual Private Cloud)
VPC는 독립적인 가상의 네트워크 공간으로 사용자의 설정에 따라 자유롭게 구성할 수 있는 공간을 의미합니다. 따라서 사용자는 서브넷 생성, 라우팅 테이블, 네트워크 게이트웨이 구성 등 네트워킹 환경을 사용자가 원하는 대로 완벽하게 제어할 수 있습니다.
VPC에 필요한 사전 지식
Region
- AWS의 물리적서버가 위치하고 있는 국가단위의 위치입니다.예)서울리전, 도쿄리전 등등
Availability Zone
- Region내의 물리적 서버를 지역 단위의 위치입니다.
- 예)서울, 부산 등등
Subnet
- PublicSubnet
- 외부가 개방되어있어 인터넷 연결이가능한 서브넷
- PrivateSubnet
- 내부가 차단되어있어 직접적으로 인터넷에 연결하지않은 서브넷
CIDR
- 클래스 없는 도메인 간 라우팅 기법으로 1993년 도입되기 시작한 최신의 IP주소 할당 방법입니다.
- IP Adress의 그룹을 괸리하며 기존의 IP Adress Class보다 유연하게 동작할 수 있습니다.
VPC가 필요한 이유
VPC가 없는 경우에 해당 사진과 같이 AWS Cloud 안의 리소스들을 연결하기 위해 추가적인 작업들이 많이 생길 것입니다. 그렇게 되면 시스템 복잡성이 높아질 것입니다. 그러나 VPC를 이용하면 같은 VPC를 묶어서 리소스를 쉽게 관리할 수 있습니다.
VPC를 사용한 경우 위에서 말한 사설 IP 권고사항을 지키면서 만들게 된다.
그렇게되면 ip로 어떤 서비스에 접속해야하는지 알 수 있고, 내부 보안을 원하는대로 적용할 수 있다.
출처
'Server' 카테고리의 다른 글
WebRTC - turn 서버(coturn) 구축 EC2 (2) | 2022.10.31 |
---|---|
[AWS] VPC peering 서로 다른 계정 , 사설 IP 설정, 인스턴스 AMI 이미지 (0) | 2022.10.19 |
Kubernetes 이해 (0) | 2022.10.02 |
Live & VOD Streaming Media server 구축 (6) - 미디어컨텐츠 전송 프로토콜 선정 (RTMP vs SRT 등등) (0) | 2022.09.26 |
RESTful API란? (0) | 2022.08.13 |
댓글