[AWS] ๐ VPC ๊ฐ๋ & ์ฌ์ฉ - ์ธํ๋ผ ๊ตฌ์ถ [Subnet / Routing / Internet Gateway]
VPC (Virtual Private Cloud) ๊ฐ๋ ์ ๋ฆฌ
VPC๋ ์ฌ์ฉ์๊ฐ ์ ์ํ๋ aws ๊ณ์ ์ฌ์ฉ์ ์ ์ฉ ๊ฐ์์ ๋คํธ์ํฌ ์ด๋ค.
์ฌ์ฉ์๋ ์๊ธฐ๊ฐ ์ํ๋๋๋ก IP ์ฃผ์ ๋ฒ์ ์ ํ, ์๋ธ๋ท ์์ฑ, ๋ผ์ฐํ ํ ์ด๋ธ ๋ฐ ๋คํธ์ํฌ ๊ฒ์ดํธ์จ์ด ๊ตฌ์ฑ ๋ฑ ๊ฐ์ ๋คํธ์ํฌ ํ๊ฒฝ์ ๊ตฌ์ฑํด VPC๋ฅผ ์์ฑํ ์ ์๋ค.
ํ๋ง๋๋ก AWS์ฉ ๋๋ง์ ๊ฐ์ธ ๋คํธ์ํฌ ๋ง ๋ฐ์ดํฐ์ผํฐ ๋ผ๊ณ ์ดํดํ๋ฉด ๋๋ค.
AWS๋ VPC์ ์ค์์ฑ์ ๊ฐ์กฐํ์ฌ ๋ชจ๋ ์๋น์ค์ VPC๋ฅผ ์ ์ฉํ๋๋ก ๊ฐ์ ํ๊ณ ์๋ค.
2011๋ VPC ์ถ์ ์ดํ EC2-Classic Platform(VPC ์ถ์ ์ ์ ๋คํธ์ํฌ)์ ์ฌ์ฉ์ด ์ค๋จ๋๊ณ , VPC ์ฌ์ฉ์ด ์๋ฌดํ๋ ๋ฐ๋ค ๋๋ถ๋ถ์ AWS ์๋น์ค๊ฐ VPC์ ์์กด์ ์ด๊ธฐ ๋๋ฌธ์ VPC์ ๋ํ ์ดํด๋ ํ์์ ์ด๋ค.
์์ ์๋, ์๋์ ๊ฐ์ด VPC ์ด์ EC2-ํด๋์ ๋คํธ์ํฌ๋ ์ฌ๋ฌ ์ฌ์ฉ์์ ์ธ์คํด์ค๋ค์ด ๊ฑฐ๋ฏธ์ค์ฒ๋ผ ์ฝํ์์ด ๋ณต์ก๋๊ฐ ๋์๋ค.
๊ทธ๋ฌ๋ Amazon VPC๊ฐ ๋์ ๋ ์ดํ๋ก ์๋์ ๊ฐ์ด ์ธ์คํด์ค๊ฐ VPC์ ์ํจ์ผ๋ก์จ ๋คํธ์ํฌ๋ฅผ ๊ตฌ๋ถํ ์ ์๊ณ VPC ๋ณ๋ก ํ์ํ ์ค์ ์ ํตํด ์ธ์คํด์ค์ ๋คํธ์ํฌ ์ค์ ์ ์ ์ฉํ ์ ์๊ฒ ๋์๋ค.
์ฌ์ฉ์๋ ์ง์ VPC๋ฅผ ์์ฑํด์ ์ฌ์ฉํ ์๋ ์๊ณ ๊ณ์ ์ ์์ฑ์ region๋ณ๋ก ๋ํดํธ๋ก ์์ฑ๋๋ VPC๋ฅผ ์ฌ์ฉํ ์๋ ์๋ค.
์ธ์คํด์ค๋ ํ๋์ ๊ฐ์ ์ปดํจํฐ๋ผ๊ณ ์ดํดํ๋ฉด ๋๋ค.
VPC๋ฅผ ์์๋ณด๊ธฐ ์ด์ ์ ์ ์ง์ (ํ์)
AWS VPC๋ฅผ ์ดํดํ๊ณ ๊ตฌ์ถํ๊ธฐ ์ํด์ ์๋์ ์ง์๋ค์ด ํ์์ด๋ค. ์์ผ๋ก VPC๋ฅผ ์ค์ ํ ๋ ์์ฃผ์์ฃผ ๋ฑ์ฅํ๋ ๊ฐ๋ ๊ณผ ์ฉ์ด๋ค์ด๋ค.
๋ง์ผ ์ ๋งคํ๊ฒ ์๊ณ ์๊ฑฐ๋ ์ ๋ชจ๋ฅธ๋ค๋ฉด ํฌ์คํ ๋งํฌ๋ก ๊ฐ์ ๋ง์คํฐ๋ฅผ ํ๊ณ ๋์์ค๊ธฐ๋ฅผ ๊ถ์ฅํ๋ค.
IP ํด๋์ค • ์๋ธ๋ท ๋ง์คํฌ • ์๋ธ๋ทํ ์๋ฒฝ ์ ๋ฆฌ
CIDR ๊ฐ๋ ์ ๋ฆฌ & ๊ณ์ฐ๋ฒ
Region(๋ฆฌ์ ) / AZ(Availability Zone) / Edge Location ๊ฐ๋ ์ ๋ฆฌ
aws ๋คํธ์ํฌ / ํด๋ผ์ฐ๋ ์ฉ์ด ์ ๋ฆฌ (๊ณ ๊ฐ์ฉ์ฑ, ์ฅ์ ํ์ฉ ...๋ฑ)
VPC (Virtual Private Cloud) ๊ตฌ์ฑ ์์
์ ์ฒด์ ์ธ VPC ๋ชจ๋ธ ์ง๋์ด๋ค.
์์ํ ์ฉ์ด๋ค์ด ๋ง์ง๋ง ์ฐจ๊ทผ์ฐจ๊ทผ ๋ฐฐ์๋ณด๋ฉด ๊ทธ๋ ๊ฒ ๋ณต์กํ์ง ์๋ค.
ํ๋ํ๋ ์ฉ ๋ฐฐ์๋๊ฐ๊ณ ์ค์ ๊ตฌ์ถ์ ํตํด ์ตํ๋ณด์.
VPC (Virtual Private Cloud)
์์ ๊ทธ๋ฆผ์์ ๋ณด๋ฉด ์ ์ ์๋ฏ์ด AWS Cloud ๋ด์๋ IDC์ ์งํฉ์ธ 'Region'์ด ์กด์ฌํ๋ฉฐ Region์ 2๊ฐ์ 'Availability Zone(AZ)'์ผ๋ก ์ด๋ฃจ์ด์ ธ ์๋ค. ๊ทธ์ค์์ VPC๋ Region์ ์์ํ๋ ๊ท๋ชจ์ ๋คํธ์ํฌ๋ผ๋๊ฑธ ๊ทธ๋ฆผ์ ํตํด ์ ์ ์๋ค.
IDC๋ ‘์ธํฐ๋ท ๋ฐ์ดํฐ ์ผํฐ’(Internet Data Center)์ ์ค๋ง๋ก, ์ธํฐ๋ท ์ฐ๊ฒฐ์ ํต์ฌ์ด ๋๋ ์๋ฒ๋ฅผ ํ ๋ฐ ๋ชจ์ ์ง์ค์ํฌ ํ์๊ฐ ์์ ๋ ์ค๋ฆฝํ๋ ์์ค์ ๋งํ๋ค.
์ฆ, VPC๋ ๋ ๋ฆฝ๋ ํ๋์ ๋คํธ์ํฌ๋ฅผ ๊ตฌ์ฑํ๊ธฐ ์ํ ๊ฐ์ฅ ํฐ ๋จ์์ด๋ค.
๊ทธ๋ฆฌ๊ณ VPC๋ Region์ ํ๋์ฉ ์ด๋ค. ๋ค๋ฅธ Region๊ณผ ๊ฑธ์ณ์ ํ์ฅ์ด ๋ถ๊ฐ๋ฅํ๋ค.
VPC๋ ๊ฐ region์ ์ข ์๋๋ฉฐ RFC1918์ด๋ผ๋ ์ฌ์ค IP ๋์ญ์ ๋ง์ถ์ด ์ค๊ณํด์ผ ํ๋ค.
VPC์์ ์ฌ์ฉํ๋ ์ฌ์ค IP ๋์ญ์ ์๋์ ๊ฐ๋ค.
10.0.0.0 - 10.255.255.255 (10/8 prefix)
172.16.0.0 - 172.31.255.255 (172.16/12 prefix)
192.168.0.0 - 192.168.255.255 (192.168/16 prefix)
AWS VPC๋ On-premise(์ ํต์ ์ธ ์ธํ๋ผ)์ ๋์ผํ ๋์ญ์ ์ฌ์ค IP๋ฅผ ์ด์ฉํด ๋ฒ์ ๋ด์์ vpc์ ipv4 CIDR์์ญ์ ์ค์ ํ๋ค.
์ฐธ๊ณ ๋ก ํ ๋ฆฌ์ ์์ VPC๋ฅผ ์ฌ๋ฌ๊ฐ ์์ฑํ ๋ ์๋ก ์์ดํผ๋ ๊ฒน์น๋ฉด ์๋๋ค. ์์ฑ์ ๋์ง๋ง DNS IP๋ฅผ ์ก์ง ๋ชปํ๋ ์๋ฌ๊ฐ ๋ฐ์ํ๊ธฐ ๋๋ฌธ์ด๋ค.
์๋ฅผ ๋ค์ด, ๊ธฐ๋ณธ VPC๊ฐ 172.31.0.0/16์ผ๋ก ์์ฑ๋์ด ์๋ค๋ฉด ์ฐ๋ฆฌ๋ 172.31 ๋คํธ์ํฌ IP์ฃผ์๋ฅผ ํผํด์ ์์ฑํด์ผ ํ๋ค.
๊ทธ๋ฆฌ๊ณ ์ ์ํ ์ ์ด ์๋๋ฐ, ์๋ ๊ท์ ๋ ์ฌ์ค IP ๋ฒ์์๋ ๋ค๋ฅด๊ฒ aws์์๋ /16 ~ /28 ๋นํธ์ ์๋ธ๋ท ๋ง์คํฌ๋ง์ ํ์ฉํ๋ค๋ ๊ฒ์ด๋ค.
์ฆ, AWS VPC๋ฅผ ์์ฑํ ์ ์๋ ๊ฐ์ฅ ํฐ IP ๋์ญ์ /16์ด๋ฉฐ, ๊ฐ์ฅ ์์ ๋์ญ์ /28 ์ธ ์ ์ด๋ค.
์ด ๋ฒ์๋ด์์๋ง CIDR๋ฅผ ์ค์ ํด์ผ ๋๋ค.
๊ทธ๋ฆฌ๊ณ VPC์์ ํ๋ฒ ์ค์ ๋ IP ๋์ญ์ ์์ ํ ์ ์์ผ๋ฉฐ, ๊ฐ๊ฐ์ VPC๋ ๋ ๋ฆฝ์ ์ด๊ธฐ ๋๋ฌธ์ ์๋ก ํต์ ํ ์ ์๋ค.
๋ง์ผ ํต์ ์ ์ํ๋ค๋ฉด VPC ํผ์ด๋ง(peering) ์๋น์ค๋ฅผ ํตํด VPC ๊ฐ์ ํธ๋ํฝ์ ๋ผ์ฐํ ํ ์ ์๋๋ก ์ค์ ํ ์ ์๋ค.
VPC ์ค์ ๊ตฌ์ฑํ๊ธฐ
๋จผ์ ๊ฒ์์ฐฝ์ vpc๋ผ ๊ฒ์ํ๊ณ ์๋น์ค์ ๋ค์ด๊ฐ๋ค.
๊ทธ๋ฆฌ๊ณ region์ ๋ฏธ๊ตญ์์ ์์ธ๋ก ๋ณ๊ฒฝํ๊ณ vpc ๋ง๋ฒ์ฌ ์์ ๋ฒํผ์ ๋๋ฅธ๋ค.
์ค์ ๊ฐ์ ์ ํํ๊ณ ์์ฑ๋ฒํผ์ ๋๋ฅด๋ฉด ๋ค์๊ณผ ๊ฐ์ด study๋ผ๋ vpc๊ฐ ์์ฑ๋๋๊ฑธ ๋ณผ ์ ์๋ค.
(์ฐธ๊ณ ๋ก ์์ ์๋ - vpc๋ ๊ณ์ ์์ฑํ ๋ ๊ฐ์ด ๋ง๋ค์ด์ง๋ ๊ธฐ๋ณธ vpc์ด๋ค)
๋ค์ VPC ๋ฉ๋ด๋ก ๋์๊ฐ์ ๋ฐฉ๊ธ ๋ง๋ VPC๋ฅผ ์ ํํ๊ณ ์ฐ์ธก ์๋จ์ ์๋ ์์
๋ฒํผ์ ๋๋ฌ DNS ํธ์คํธ ์ด๋ฆ ํธ์ง์ผ๋ก ๋ค์ด๊ฐ ํธ์คํธ ์ด๋ฆ ํ์ฑํ์ ์ฒดํฌํด์ฃผ๊ณ ์ ์ฅํด์ค๋ค.
์๋ธ๋ท (Subnet)
์๋ธ๋ท์ VPC์ IP ์ฃผ์๋ฅผ ๋๋์ด ๋ฆฌ์์ค๊ฐ ๋ฐฐ์น๋๋ ๋ฌผ๋ฆฌ์ ์ธ ์ฃผ์ ๋ฒ์๋ฅผ ๋ปํ๋ค.
VPC๊ฐ ๋ ผ๋ฆฌ์ ์ธ ๋ฒ์๋ฅผ ์๋ฏธํ๋ค๋ฉด, ์๋ธ๋ท์ VPC์์์ ์ค์ ๋ก ๋ฆฌ์์ค๊ฐ ์์ฑ๋ ์ ์๋ ๋คํธ์ํฌ ์์ญ์ด๋ผ๊ณ ์๊ฐํ๋ฉด ๋๋ค. ์ค์ ๋ก EC2, RDS๊ฐ์ ๋ฆฌ์์ค๋ฅผ ์์ฑ ํ ์ ์๋ค.
๊ทธ๋ฆฌ๊ณ ํ๋์ VPC์ N๊ฐ์ ์๋ธ๋ท์ ๊ฐ์ง ์ ์์ผ๋ฉฐ ํ๋์ AZ์๋ง ์์ฑ์ด ๊ฐ๋ฅํ๋ค.
๋ค์ ์ฌ์ง์ฒ๋ผ ์ฌ๋ฌ AZ์ ๊ฑธ์ณ์ ์๋ธ๋ท์ ์์ฑํ ์ ์๋ค๋ ๋ง์ด๋ค.
์๋ธ๋ท ์ญ์ vpc์ฒ๋ผ CIDR ๋ฒ์๋ /16(65536๊ฐ) ~ /28(16๊ฐ)์ ์ฌ์ฉํ ์ ์์ผ๋ฉฐ, VPC CIDR ๋ธ๋ก ๋ฒ์์ ์ํ๋ CIDR ๋ธ๋ก์ ์ง์ ํ ์ ์๋ค.
์๋ ์ฌ์ง์ ๋ณด๋ฉด VPC(10.0.0.16) ๋ด์์ ๋ค์ ํฌ๊ธฐ๋ฅผ ๋๊ฐ๋ก ์ชผ๊ฐ์ ์ฌ์ฉํ๊ฒ ๋๋๋ฐ VPC๋ฅผ ์ชผ๊ฐ ์กฐ๊ฐ๋ค์ด ๋ฐ๋ก Subnet(10.0.1.0/24)์ด๋ค.
๊ทธ๋ฆฌ๊ณ ํ๋์ AZ(Availability Zone)์ ์๋ธ๋ท์ด ๊ฐ๊ฐ ํ ๋น๋์ด ์๋ ๊ฒ์ ๋ณผ ์ ์๋ค.
VPC๋ฅผ ์๊ฒ ๋๋ ๊ฒ์ด ์๋ธ๋ท์ด๊ธฐ ๋๋ฌธ์ ๋น์ฐํ VPC๋ณด๋ค ๋์ญํญ์ด ๋ฎ์์ผ ํ๋ค.
๋จ, ์๋ธ๋ท ๋์ญํญ์ ์ง์ ํด ํธ์คํธ๋ฅผ ์ฌ์ฉํ ๋ ์ ์ํ ์ ์ด ์๋ค.
AWS๊ฐ ๊ด๋ฆฌ์ฉ์ผ๋ก ์ฌ์ฉํ๋ IP๋ ์กด์ฌํ๋๋ฐ, ์๋์ ์์ ํ IP๋ค์ AWS์ ๊ด๋ฆฌ IP๋ก์ ์ฌ์ฉ์๊ฐ ์ฌ์ฉํ ์ ์๋ AWS์ ์์ฝ ์ฃผ์์ด๋ค. (10.0.0.0/24 ๊ธฐ์ค)
10.0.0.0 | ๋คํธ์ํฌ ์ฃผ์ (Network ID) |
10.0.0.1 | AWS์์ VPC ๋ผ์ฐํฐ์ฉ์ผ๋ก ์์ฝ (Default Gateway) |
10.0.0.2 | DNS ์๋ฒ ์ฃผ์ DNS ์๋ฒ์ IP ์ฃผ์๋ ๊ธฐ๋ณธ VPC ๋คํธ์ํฌ ๋ฒ์์ 2๋ฅผ ๋ํ ์ฃผ์์ด๋ค. CIDR ๋ธ๋ก์ด ์ฌ๋ฌ ๊ฐ์ธ VPC์ ๊ฒฝ์ฐ, DNS ์๋ฒ์ IP ์ฃผ์๊ฐ ๊ธฐ๋ณธ CIDR์ ์์นํ๊ฒ ๋๋ค. |
10.0.0.3 | AWS์์ ์์ผ๋ก ์ฌ์ฉํ๋ ค๊ณ ์์ฝํ ์ฃผ์ |
10.0.0.255 | ๋คํธ์ํฌ ๋ธ๋ก๋์บ์คํธ ์ฃผ์ |
๊ธฐ์ต์ ๋ ์ฌ๋ ค๋ณด๋ฉด ๋คํธ์ํฌ ์ด๋ก ์์ ํธ์คํธ ๋ฒ์์ ๊ฐ์ฅ ์ฒซ๋ฒ์งธ ์ฃผ์๋ ๋คํธ์ํฌ ์ฃผ์, ๋ง์ง๋ง ์ฃผ์๋ ๋ธ๋ก๋์บ์คํธ ์ฃผ์๋ก์ ํธ์คํธ๋ฅผ ์ด์ฉํ ์ ์์๋ค.
๊ทธ๋ฐ๋ฐ AWS์์๋ ์์ฒด ์๋น์ค์ ์ด์ฉ๋๋ ํธ์คํธ๊ฐ ์ถ๊ฐ๋ก ํ ๋น๋์ด์์ด์ ์ด 2+3๊ฐ๋ฅผ ์ฌ์ฉ์ ๋ชปํ๋ค๊ณ ์ดํดํ๋ฉด ๋๋ค.
์๋ฅผ๋ค์ด ์ด๋ฐ AWS ๊ธฐ์ถ ๋ฌธ์ ๊ฐ ์๋ค๊ณ ํ๋ฉด,
Q. AWS์ 192.168.0.0/24 ์์ ์ด ์ฌ์ฉ๊ฐ๋ฅํ ํธ์คํธ ๊ฐฏ์๋?
1์ด 24๊ฐ ์์ผ๋ ํธ์คํธID๋ 8๋นํธ๋๊น, 2^8=256๊ฐ ์ด๊ณ ๊ทธ์ค ์ฒ์๊ณผ ๋์ ๋นผ๋ฉด 254๊ฐ๋ค! ๋ผ๊ณ ํ๋ฉด ํ๋ฆฐ ๊ฒ์ด๋ค.
256-5=251์ด ์ ๋ต์ด๋ค.
Public Subnet / Private Subnet
์๋ธ๋ท์ ๋ค์ Public Subnet๊ณผ Private Subnet์ผ๋ก ๋๋ ์ ์๋ค.
์ธํฐ๋ท๊ณผ ์ฐ๊ฒฐ๋์ด์๋ ์๋ธ๋ท์ public subnet์ด๋ผ๊ณ ํ๊ณ , ์ธํฐ๋ท๊ณผ ์ฐ๊ฒฐ๋์ด์์ง ์์ ์๋ธ๋ท์ private subnet์ด๋ผ๊ณ ํ๋ค.
- Private Subnet : ์ธํฐ๋ท์ ์ ๊ทผ ๋ถ๊ฐ๋ฅํ subnet (VPC ๋ด๋ถ์์๋ง ํต์ )
- Public Subnet : ์ธํฐ๋ท์ ์ ๊ทผ ๊ฐ๋ฅํ Subnet (VPC ์ธ๋ถ/๋ด๋ถ์ ํต์ )
๋ฐ๋ผ์ public subnet์ ์กด์ฌํ๋ ์ธ์คํด์ค๋ Public IP์ Elastic IP๋ฅผ ๋ณด์ ํ์ฌ ์ธํฐ๋ท์ ์ฐ๊ฒฐ๋์ด ์์๋ฐ์ด๋, ์ธ๋ฐ์ด๋ ํธ๋ํฝ์ ์ฃผ๊ณ ๋ฐ์ ์ ์๋ ๋ฐ๋ฉด, private subnet์ ์ธ๋ถ์ ๋ ธ์ถ์ด ๋์ด ์์ง ์๊ธฐ ๋๋ฌธ์ ์ ๊ทผํ ์ ์๋ค.
์ธ๋ฐ์ด๋ : ์ธ๋ถ์์ - > ์ธ์คํด์ค๋ก ์ค๋ ํธ๋ํฝ
์์๋ฐ์ด๋ : ์ธ์คํด์ค์์ - > ์ธ๋ถ๋ก ๊ฐ๋ ํธ๋ํฝ
๊ทธ๋์ private subnet์ ๋ฏผ๊ฐํ ๋ฐ์ดํฐ ์ ๋ณด๋ค์ ์ ์ฅํด ๋ณด์์ ๊ฐํํ๋ ์์ผ๋ก ์ค๊ณ๋ฅผ ํ๋ ํธ์ด๋ค.
์ด์ฒ๋ผ Private ์๋ธ๋ท ๋ด๋ถ์ ์ธ์คํด์ค๋ค์ ์ค์ง ๋ค๋ฅธ ์๋ธ๋ท๊ณผ๋ง ์ฐ๊ฒฐ์ด ๊ฐ๋ฅํ๋ฐ, ๋ง์ผ ๋ฐ์ดํฐ๋ฅผ ์ ๋ฐ์ดํธํ๋๋ฐ ์ธํฐ๋ท ์ฐ๊ฒฐ์ด ํ์๋ผ๋ฉด ๋ค์ ๋ฐฐ์ธ NAT instance๋ฅผ ํตํด์ Private ๋ด๋ถ์ ์ธ์คํด์ค๋ค์ด ์ธํฐ๋ท์ ๊ฐ๋ฅํ๊ฒ ๋ง๋ค ์๋ ์๋ค.
์ ์ฌ์ง์ ์๋ธ๋ท ๊ตฌ์กฐ์ ์์ฑํ์ด๋ค. (์ฌ์ง์ ๋ณด์ด๋ Router๋ Internet gatway๋ ๋ค์ ์น์ ์์ ์งํํ๋ค)
AZ์์ public ์๋ธ๋ท ๊ณผ private ์๋ธ๋ท์ ๋ฐฐ์นํ๋ค.
public Subnet์ธ 10.0.1.0/24์ 10.0.2.0/24์ EC2 ๋ค์๋ฅผ ํ์ฌํด์ผํ๋ ๋ค์์ ์ฌ์ค IP ํ์ํ๋ฏ๋ก cidr๊ฐ์ ๋ฎ๊ฒ ์ค์ /24(256๊ฐ) Subnet ๋ฒ์๋ฅผ ํฌ๊ฒ ๋๋์๋ค.
private Subnet์ธ 10.0.3.0/25๊ณผ 10.0.4.0/25์ RDS์ ๊ฐ์ ์์์ ์๋น์ค๋ฅผ ํ์ฌํ๋ฏ๋ก ๋ง์ด ํ์ํ์ง ์์ cidr ๊ฐ์ ๋๊ฒ /25(128๊ฐ) ์ฃผ์๋ค.
์ด๋ฐ์์ผ๋ก ์๋ธ๋ท์ ๋๋ ๊ตฌ์ฑํ๋ฉด ๋๋ค. ๊ทธ๋ ๊ฒ ์ด๋ ต์ง ์๋ค.
์ ๋ฆฌํ์๋ฉด, ๋ค์๊ณผ ๊ฐ์ด ๊ตฌ์ฑ์ด ๋์ด์ง๋ค.
- VPC : 10.0.0.0/16
- public Subnet : 10.0.1.0/24, 10.0.2.0/24,
- private Subnet : 10.0.3.0/25, 10.0.4.0/25
Subnet ์ค์ ๊ตฌ์ฑํ๊ธฐ
์์ ๊ทธ๋ฆผ์ฒ๋ผ ๋๋ก AZ 2๊ฐ ์๋ธ๋ท์ public 2๊ฐ, private 2๊ฐ ๊ตฌ์ฑํด๋ณผ ๊ณํ์ด๋ค.
ap-northeast-2a (AZ) | ap-northeast-2c (AZ) | |
Public subnet | 10.0.1.0/24 | 10.0.2.0/24 |
Private subnet | 10.0.3.0/25 | 10.0.4.0/25 |
์๋ธ๋ท์ ์ฑ๊ณต์ ์ผ๋ก ์์ฑํ๋ค๋ฉด, ์๋ธ๋ท ๋ชฉ๋ก ํ์ด์ง๋ก ์ด๋๋๋ค.
์ด๋ ๊ฒ ์๋ธ๋ท 4๊ฐ๋ฅผ ๊ตฌ์ฑ์ ์๋ฃํ๋ค.
public ์๋ธ๋ท๊ณผ private ์๋ธ๋ท์ ๊ฐ๊ธฐ ๋ค๋ฅธ AZ์ ์ค์ ํด๋ ๋ ๊น?
๊ฒฐ๋ก ์ ์ผ๋ก๋ ๋ฌธ์ ๊ฐ ์๋ค. ๋ค๋ง ๊ฐ์ AZ์ ์ค์ ํ๋ ์ด์ ๋ ๊ฐ๊ธฐ ๋๋์ด ๋ค๋ฅธ AZ์ ์ค์ ํ ๊ฒฝ์ฐ ๋ฐ์ดํฐ์ผํฐ ๋ผ๋ฆฌ์ ํต์ ์ด ์ถ๊ฐ์ ์ผ๋ก ๋ฐ์ํ๊ธฐ ๋๋ฌธ์ ํธ๋ํฝ ์๋๊ฐ ๋๋ ค์ง์ ์๊ธฐ ๋๋ฌธ์ด๋ค.
์๋ธ๋ท์ ํ๋ฒ ๋ง๋ค๋ฉด ์ต์ ์์ ์ด ๋ถ๊ฐ๋ฅํ๋ค.
๊ทธ๋์ ์ค์ ์ ๋ฐ๊ฟ์ผ ํ ์ํฉ์ด ์๊ธฐ๋ฉด ์ง์ฐ๊ณ ์๋ก ๋ง๋ค์ด์ผ ํ๋ค.
ํผ๋ธ๋ฆญ ์๋ธ๋ท์ public IP ์๋ ํ ๋น ์ค์
ํ์, EC2 ์ธ์คํด์ค๋ฅผ ์์ฑํ ๋ ํ๋ ์์ ์ด๋ผ ์ฌ๊ธฐ์ ํด๋ ๋๊ณ ์ํด๋ ๋์ง๋ง ๋ฏธ๋ฆฌ ์ค์ ํด์ ํ์คํ ์๋ธ๋ท์ ๊ตฌ๋ถ ์ง๋๊ฒ๋ ๋์์ง ์๋ค.
์ด ์๋ธ๋ท์ ๋ค์ด๊ฐ ๋ชจ๋ IP๋ ์๋์ผ๋ก ํผ๋ธ๋ฆญ ์ฃผ์๋ก ํ์ฑํ ํ๋ ์ต์ ์ด๋ค. ์ด๊ฑธ ์ค์ ํ์ง ์์ผ๋ฉด ์ธํฐ๋ท๊ณผ ํต์ ์ ๋ชปํ๋ค.
ํผ๋ธ๋ฆญ ์๋ธ๋ท์ ์ธ๋ถ ์ธํฐ๋ท๊ณผ ํต์ ํ๋ผ๊ณ ๋ง๋ ์๋ธ๋ท์ด๊ธฐ ๋๋ฌธ์, ์์ ๋ง๋ 2๊ฐ์ ํผ๋ธ๋ฆญ ์๋ธ๋ท์ ์ฃผ์ ์๋ ํ ๋น ํ์ฑํ๋ฅผ ์ฒดํฌ ํ๋ค.
Subnet์ EC2 ์ธ์คํด์ค ๋ฃ๊ธฐ
EC2 ์ธ์คํด์ค๋ฅผ ์์ฑํ๊ณ ์ ์ ํ ์ค์ ์ ์งํํด์ค๋ค.
๊ทธ๋ฌ๋ค [๋จ๊ณ 3: ์ธ์คํด์ค ์ธ๋ถ ์ ๋ณด ๊ตฌ์ฑ ๋จ๊ณ]์ ์ค๋ฉด VPC์ ์๋ธ๋ท์ ์ง์ ํด ์ค์ ์๊ฒ ๋๋ค.
1. Public ์๋ธ๋ท ์ธ์คํด์ค ์์ฑ
๋คํธ์ํฌ์ ์๋ธ๋ท์ ์์์ ์์ฑํ VPC์ ํผ๋ธ๋ฆญ ์๋ธ๋ท์ ์ ํํ๋ค.
ํผ๋ธ๋ฆญ IP ์๋ํ ๋น์ ํ์ฑํ๋ฅผ ์ ํํ๋ค (๊ทธ๋์ผ EC2 ์ธ์คํด์ค๋ฅผ ๋ง๋ค์์ ๋ ํผ๋ธ๋ฆญIP๋ฅผ ์๋์ผ๋ก ํ ๋น๋ฐ๋๋ค)
๋ง์ผ ๋ฐ๋ก ์์์ ์๋ธ๋ท์ ํผ๋ธ๋ฆญ IP ์๋ ํ ๋น ์ค์ ์ ์ฒดํฌํ์ผ๋ฉด, ์ฌ์ง์ฒ๋ผ ๊ธฐ๋ณธ์ผ๋ก (ํ์ฑํ)๊ฐ ๋์ด์์ ๊ฒ์ด๋ค.
2. Private ์๋ธ๋ท ์ธ์คํด์ค ์์ฑ
ํ์ฌ ํ๋ฉด์์ ํ๊บผ๋ฒ์ public, private ์๋ธ๋ท์ ์์ฑํ ์๋ ์๊ณ , ์ธ์คํด์ค๋ฅผ ๋ง๋ค๊ณ ๋๋ค ๋ ๋ง๋๋ ์์ผ๋ก ํ๋ํ๋ ๋ฑ๋ก์ ํด์ผ ํ๋ค.
์ธ์คํด์ค๋ฅผ ๋ ์์ฑํ๊ณ ์์ ๋ง๋ private subnet์ ๋ฑ๋กํด์ฃผ๋ฉด ๋๋ค.
ํผ๋ธ๋ฆฌ๊ณผ ํ๋ผ์ด๋น ์ธ์คํด์ค๋ฅผ ์์ฑ ์๋ฃํ๊ฒ ๋๋ฉด ๋ค์๊ณผ ๊ฐ์ด ๋ ๊ฒ์ด๋ค. (๋ค๋ฅธ ๊ฐ์ฉ์์ญ์ ์๋ธ๋ท์ ์ธ์คํด์ค ์ฐ๊ฒฐ์ ๋์ค์ ํ ์์ ์ด๋ ์ฐ์ 2๊ฐ๋ง ์์ฑํด ๋์)
๋ผ์ฐํ ํ ์ด๋ธ (Routing Table)
๊ฐ๊ฐ์ Subnet์ ์๋ก ๋ค๋ฅธ ๋คํธ์ํฌ ์์ญ์ ๊ฐ์ง๊ณ ์๋ค. ๋ฐ๋ผ์, ํ Subnet์ด ๋ค๋ฅธ Subnet์ผ๋ก ๊ฐ๊ธฐ ์ํด์๋ 'Routing'์ด ํ์ํ๊ฒ ๋๋ค.
๋ผ์ฐํ ํ ์ด๋ธ์ VPC ์์์ ๋ฐ์ํ ๋คํธ์ํฌ ์์ฒญ์ ์ฒ๋ฆฌํ๊ธฐ ์ํด ์ด๋๋ก ํธ๋ํฝ์ ์ ์กํด์ผ ํ๋์ง ์๋ ค์ฃผ๋ ํ์งํ ์ญํ ์ ์ํํ๋ค.
๊ฐ ์๋ธ๋ท๋ค์ ์ด๋ฌํ ๋คํธ์ํฌ ํธ๋ํฝ ์ ๋ฌ ๊ท์น์ ํด๋นํ๋ ๋ผ์ฐํ ํ ์ด๋ธ์ ๊ฐ์ง๊ณ ์์ผ๋ฉฐ, ์์ฒญ์ด ๋ฐ์ํ๋ฉด ์ด ๋ผ์ฐํธ ํ ์ด๋ธ์ ์ฌ์ฉํด์ ๋ชฉ์ ์ง๋ฅผ ์ฐพ๊ฒ ๋๋ ๊ฒ์ด๋ค.
[์ ๋ผ์ฐํ ํ ์ด๋ธ์ ๋ป]
ํธ๋ํฝ์ด ๋ฐ์ํ๋ฉด,
CIDR 10.0.0.0/16 (10.0.0.1 ~ 10.0.255.255) ์์ดํผ๋ค์ local๋ก ๋ณด๋ด๋ฌ๋ผ
๋ค๋ฅธ ๋ชจ๋ ๋์ญ๋ค(0.0.0.0/0)๋ ์ธํฐ๋ท ๊ฒ์ดํธ์จ์ด(igw-092d..)๋ฅผ ํตํด ๋ฐ๊นฅ์ผ๋ก ๋ณด๋ด๋ฌ๋ผ
VPC ๋ด๋ถ(๋ชจ๋ Sunbet)์ ๋ํด์๋ ๋ํดํธ๋ก Routing์ด ์๋์ผ๋ก ์์ฑ๋์ด์ ธ ์๋ค.
์ฆ ๋ณ๋์ ์ค์ ์์ด ํ Subnet์์ ๋ค๋ฅธ Subnet์ผ๋ก ํต์ ์ด ๊ฐ๋ฅํ๋ค๋ ๋ง์ด๋ค.
์ ๊ทธ๋ฆผ์์ ๋ณด๋ฏ์ด Subnet ๋ด์ ๋ชจ๋ Resource๋ ์์ ์ด ์์๋ Subnet์ด ์๋ ๋ค๋ฅธ ๊ณณ์ผ๋ก ํฅํ๊ณ ์ ํ ๋ VPC Router๋ฅผ ๊ฑฐ์น๊ฒ ๋๋ค.
์๋ ๊ทธ๋ฆผ์์๋ Subnet 10.0.3.0/25์ Routing table์ ๋ณด์ฌ์ฃผ๊ณ ์๋ค.
VPC ๋์ญ์ธ 10.0.0.0/16์ ๋ํด Local Rouing์ด ์ง์ ๋์ด ์์์ ์ ์ ์๋ค.
๋๋จธ์ง 3๊ฐ Subnet๋ ํด๋น ๋ผ์ฐํ ํ ์ด๋ธ์ ๋ณด์ ํ๊ณ ์๋ค.
์ด๋ ๊ฒ ๊ฐ ์๋ธ๋ท์ ๋ผ์ฐํ ํ ์ด๋ธ์ด ์์์ผ๋ก์, VPC ๋ด Subnet์ ํ ๋น๋ Resource๋ผ๋ฉด ์ด๋ Subnet์ด๋ ๋ค๋ฅธ Subnet์ Resource์ ์์ ๋กญ๊ฒ ํต์ ํ ์ ์๊ฒ ๋๋ค.
๋ํ ๋ผ์ฐํ ํ ์ด๋ธ์ ๋ด๋ถ์์๋ง ํต์ ํ๋ Local Routing ๋ฟ๋ง ์๋๋ผ ์ธ๋ถ ์ธํฐ๋ท๋ง์ผ๋ก ๋๊ฐ ์ ์๋ Routing์ ๊ฐ์ง ์ ์๋ค. ์ด๋ฅผ ์ธํฐ๋ท ๊ฒ์ดํธ์จ์ด (Internet Gateway)๋ผ๊ณ ํ๋ค.
์ธํฐ๋ท ๊ฒ์ดํธ์จ์ด (Internet Gateway)
VPC๋ ๊ธฐ๋ณธ์ ์ผ๋ก ๊ฒฉ๋ฆฌ๋ ๋คํธ์ํฌ ํ๊ฒฝ์ด๋ค. ๋ฐ๋ผ์ VPC์์ ์์ฑ๋ ๋ฆฌ์์ค๋ค์ ๊ธฐ๋ณธ์ ์ผ๋ก ์ธํฐ๋ท์ ์ฌ์ฉํ ์ ์๋ค.
์ด๋ฌํ ํ๊ฒฝ์์, ์ธํฐ๋ท ๊ฒ์ดํธ์จ์ด๋ VPC์ ์ธ์คํด์ค์ ์ธํฐ๋ท๊ฐ์ ํต์ ์ ํ ์ ์๊ฒ ํด์ค๋ค.
์ธํฐ๋ท ๊ฒ์ดํธ์จ์ด๋ VPC์ ๋ฆฌ์์ค์ ์ธํฐ๋ท ๊ฐ์ ํต์ ์ ํ์ฑํํ๊ธฐ ์ํด VPC์ ์ฐ๊ฒฐํ๋ ๊ด๋ฌธ์ด๋ผ๊ณ ์ดํดํ๋ฉด ๋๋ค.
์ฆ, VPC ๋ฆฌ์์ค๊ฐ ์ธํฐ๋ท์ผ๋ก ๋๊ฐ๊ธฐ์ํ ํต๋ก์ด๋ค.
์ธํฐ๋ท์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ด์ผํ๋ค๋ฉด ๋น์ฐํ ์ธํฐ๋ท ๊ฒ์ดํธ์จ์ด๋ก ํธ๋ํฝ์ ์ ๋ฌํด์ผ ํ๋ค.
์์์ ์์์ ์๋ธ๋ท์ private 2๊ฐ, public 2๊ฐ๋ฅผ ๋ง๋ค์ด ์คฌ์๋ค.
๊ทธ๋ฐ๋ฐ ์ด๋ฆ๋ง ์ ๋ ๊ฒ ํ๊ฑฐ๊ณ ์ค์ ๋ก๋ private ์๋ธ๋ท 4๊ฐ๋ฅผ ๋ง๋ ๊ฒ์ด๋ค.
์๋ธ๋ท์ ์ง์ง ํผ๋ธ๋ฆญ์ฉ์ผ๋ก ๋ฐ๊พธ๊ธฐ ์ํด์ ์ธํฐ๋ท ๊ฒ์ดํธ์จ์ด๋ฅผ ๋ผ์ฐํ ํ ์ด๋ธ์ ์ค์ ํ๊ณ ๋ฑ๋กํด์ค์ผ ํ๊ธฐ ๋๋ฌธ์ด๋ค.
์ด๋ฐ์์ผ๋ก ์๋ธ๋ท์ด ์ธํฐ๋ท ๊ฒ์ดํธ์จ์ด๋ก ํฅํ๋ ๋ผ์ฐํ ์ด ์๋ ๊ฒฝ์ฐ ํผ๋ธ๋ฆญ ์๋ธ๋ท์ด๋ผ๊ณ ๋ถ๋ฅด๊ฒ ๋๋ ๊ฒ์ด๋ค.
๋ฐ๋๋ก ์ด๋ค ์๋ธ๋ท์ด ์ธํฐ๋ท ์ฐ๊ฒฐ์ ํ ํ์๊ฐ ์๋ค๋ฉด ์ด ์๋ธ๋ท์ ํ๋ผ์ด๋น ์๋ธ๋ท์ด๋ผ๊ณ ํ๋ค.
์ ๊ทธ๋ฆผ์ Custom route table์ igw-id(์ธํฐ๋ท ๊ฒ์ดํธ์จ์ด)๋ฅผ ์ถ๊ฐํ๊ณ Subnet 1(10.0.0.0/24)์ ์ฐ๊ฒฐ ์ํด์ผ๋ก์, ์ด VPC์ ์๋ธ๋ท1์ ํผ๋ธ๋ฆญ ์๋ธ๋ท์ด ๋ ๊ฒ์ ํํํ ๊ฒ์ด๋ค.
route table ์ ํ ์๋ฏธ๋ฅผ ์์๋ณด์
Destination์ 10.0.0.0/16์ local ํ๊ฒ์ผ๋ก ๊ฐ๋ผ๊ณ ์๋ดํ๊ณ ์๋ค.
์ด ๋ง์ ๋ง์ผ 10.0.0.6์ ์ธ์คํด์ค๋ก ์ค๋ฉด ๋ก์ปฌ์์ ์ฐพ์ผ๋ผ๋ ๋ง์ด๋ค. ๊ทธ๋ฆฌ๊ณ ์๋์๋ 10.0.0.0/16 ๋์ญ ์ด์ธ์ ๋ชจ๋ ์ธํฐ๋ท ํธ๋ํฝ(0.0.0.0/0) ์ ์ธํฐ๋ท ๊ฒ์ดํธ์จ์ด(igw)๋ก ๊ฐ๋ผ๊ณ ๋งคํ ๋์ด ์๋ค.
VPC์์ Resource(EC2 ๋ฑ)๊ฐ ์ธ๋ถ ์ธํฐ๋ท๊ณผ ํต์ ํ๊ณ ์ ํ ๊ฒฝ์ฐ ๊ฐ์ถ์ด์ผ ํ ์กฐ๊ฑด์ด ์๋๋ฐ ๋ค์๊ณผ ๊ฐ๋ค.
- Internet ํต์ ํ๊ณ ์ ํ๋ Resource๊ฐ ๊ณต์ธ IP๋ฅผ ๋ณด์ ํ ๊ฒ
- Resource๊ฐ ์์๋ Subnet์ Routing Table์ '0.0.0.0/0' ๋ชฉ์ ์ง๋ก ๊ฐ๋ Routing 'Internet Gateway'์ด ์์ ๊ฒ
- Network ACL๊ณผ Security Group ๊ท์น์์ ํ์ฉํ ๊ฒ (๋ค์์ ๋ค๋ฃธ)
์ธํฐ๋ท ๊ฒ์ดํธ์จ์ด ๋ง๋ค๊ธฐ
vpc์ ์ธํฐ๋ท ๊ฒ์ดํธ์จ์ด ์ฐ๊ฒฐํ๊ธฐ
ํผ๋ธ๋ฆญ์ฉ ๋ผ์ฐํ ํ ์ด๋ธ ๋ง๋ค๊ธฐ
๊ฐ ์๋ธ๋ท์ ๋ผ์ฐํ ํ ์ด๋ธ์ ์์ ํ์ฌ, ํผ๋ธ๋ฆฟ ์๋ธ๋ท์ ์ธ๋ถ์ ํต์ ํ ์ ์๊ฒ, ํ๋ผ์ด๋น ์๋ธ๋ท์ ์ธ๋ถ์์๋ ํต์ ํ ์ ์๊ณ ๋ด๋ถ์์๋ง ๊ฐ๋ฅํ๊ฒ ๋ผ์ฐํ ์ค์ ์ ํ๋ค.
์ด๋ ๊ฒ ์ค์ ํ๋ฉด,
๊ธฐ๋ณธ(์)์ผ๋ก ์์ฑ๋ ์๋ธ๋ท๋ค์ ๊ธฐ๋ณธ์ ์ผ๋ก private-table์ ์ฌ์ฉํด์ ์ธํฐ๋ท์ ์ ๊ทผ ๋ชปํ๋ ๋ณด์์ฑ์ ํ๋ณดํ๊ณ ,
์ธ๋ถ์ ์ฐ๊ฒฐ์ด ํ์ํ ์๋ธ๋ท๋ค๋ง ๋ฐ๋ก public-table์ ์ถ๊ฐ๋ก ๋ง๋ค์ด์ค์ ๋ฃ์ด์ฃผ๋ฉด ๋๋ค.
ํผ๋ธ๋ฆญ ๋ผ์ฐํ ํ ์ด๋ธ์ ์๋ธ๋ท ๋ฑ๋กํ๊ธฐ
์ด์ ๋ผ์ฐํ ํ ์ด๋ธ(public-table)์ ํผ๋ธ๋ฆญ ์๋ธ๋ท์ ๋ฑ๋กํ๊ธฐ ์ํด์ ํธ์ง์ ๋๋ฅธ๋ค.
์ด๋์ด๋ ์๋ธ๋ท์ ์ธ๋ถ ์ธํฐ๋ท๊ณผ ์ฐ๊ฒฐ์ํฌ์ง public routing table์ ๋ฑ๋ก์ ํ๋ค.
๋ผ์ฐํ ํ ์ด๋ธ์ ์ธํฐ๋ท ๊ฒ์ดํธ์จ์ด ์ฐ๊ฒฐํ๊ธฐ
๊ทธ๋ฆฌ๊ณ ์ด์ public ๋ผ์ฐํ ํ ์ด๋ธ์ ์ธํฐ๋ท ๊ฒ์ดํธ์จ์ด๋ง ์ฐ๊ฒฐ์ ํด์ฃผ๋ฉด ํผ๋ธ๋ฆญ ์๋ธ๋ท ๋ฑ๋ก์ด ์๋ฃ ๋๋ค.
๋ผ์ฐํ ํ ์ด๋ธ ์ฐ๊ฒฐ ์ค์ ์ ๋ง์ท์ผ๋ฉด ์ด์ ์ผ ์ ๋ง๋ก public ์๋ธ๋ท๊ณผ private ์๋ธ๋ท์ ์์ฑ ์ํจ ๊ฒ์ด๋ค.
์ฌ์ง์์ ๋ณด๋ฏ์ด ์๋ธ๋ท์ ๋ช ์์ ์ผ๋ก ์ธํฐ๋ท ๊ฒ์ดํธ์จ์ด๋ฅผ ์ฐ๊ฒฐํ ๋ผ์ฐํ ํ ์ด๋ธ์ ๋ฑ๋กํจ์ผ๋ก์ ์ธ๋ถ์ ์ฐ๊ฒฐ์ด ๋๊ฒ ๋์ด, ์ธํฐ๋ท ๊ฒ์ดํธ์จ์ด๋ก ํฅํ๋ ๋ผ์ฐํ ์ด ์๋ ๊ฒฝ์ฐ ํผ๋ธ๋ฆญ ์๋ธ๋ท ์ชฝ์ผ๋ก ๋ผ์ฐํ ํ ์ด๋ธ์ ์ ํ์๋๋๋ก ๊ฐ๋ ๊ฒ์ด๋ค.
์ง๊ธ๊น์ง์ ๊ตฌ์ถ ๊ณผ์ ์ ๊ทธ๋ฆผ์ผ๋ก ํํํ๋ฉด ๋ค์๊ณผ ๊ฐ๊ฒ ๋๋ค.
์ ๊ทธ๋ฆผ์์ Public Subnet 2๊ฐ๋ Local Routing๊ณผ ํจ๊ป Internet Gateway์ ์ฐ๊ฒฐ๋์ด ์์ผ๋ฏ๋ก ๋ด๋ถ์ Internet ํต์ ์ด ๊ฐ๋ฅํ๋ฉฐ Private Subnet์ Local Routing๋ง์ ๊ฐ๊ณ ์์ผ๋ฏ๋ก ๋ด๋ถ ํต์ ๋ง ๊ฐ๋ฅํ๋ค.
- ๊ณต์ธ ์ธํฐ๋ท๊ณผ ํต์ ๊ฐ๋ฅํ Subnet์ Public Subnet
- ๊ณต์ธ ์ธํฐ๋ท์ด ์ฐจ๋จ๋ ์ฌ์ค IP๋ง ํ ๋น๋ Subnet์ Private Subnet
- Private Subnet์ IGW๋ก ์ฐ๊ฒฐ๋์ด ์์ง ์์
- ์ธํฐ๋ท ๊ฒ์ดํธ์จ์ด๋ VPC ๋ด๋ถ๊ฐ ์๋ VPC์ ์ธ๋ถ์ ํต์ ์ ๊ด์ฌํจ
# ์ฐธ๊ณ ์๋ฃ
https://www.youtube.com/@AWSClassroom
https://kimjingo.tistory.com/172
https://aws-hyoh.tistory.com/entry/VPC-%EC%89%BD%EA%B2%8C-%EC%9D%B4%ED%95%B4%ED%95%98%EA%B8%B0-1