๐ก AWS ์๋น์ค๋ฅผ ์ด์ฉํ๋ฉด์ ๊ฐ์ ์ปดํจํ ํ๊ฒฝ์ ์ด์ฉํ๋ ค๋ฉด VPC ์์ฑ์ด ํ์์ธ๋ฐ, ์ ์ VPC๊ฐ ๋ฌด์์ธ์ง๋ ์ ๋ชจ๋ฅด๋ ๊ฒ ๊ฐ์ ๊ตฌ๊ธ๋ง๊ณผ ์ฝ๋ฉํ ์ ํด๋ผ์ฐ๋ ์ง๋ฌด ๋ถํธ์บ ํ๋ฅผ ํตํด ๊ฐ๋ ์ ์ ๋ฆฌํ๊ณ ์ค์ตํด๋ดค์ต๋๋ค.
๊ฐ์ฅ ๋ง์ด ๋์์ ๋ ๊ธ์ ์ด๋ธ๋ก๊ทธ ์ด๋ฉฐ, ์ฌ๋ฌ ์๋ฃ๋ฅผ ๋ณด๋ฉฐ ์ดํดํ ๋ด์ฉ์ ์ ๋ฆฌํ์ต๋๋ค.
โ ๊ต๋ณด์ ๋ณดํต์ ๊ธฐ์ ๋ธ๋ก๊ทธ
์ง์ญํ๋ฉด ๊ฐ์ ์ฌ์ค ํด๋ผ์ฐ๋๋ก ๋
ผ๋ฆฌ์ ์ผ๋ก ๊ฒฉ๋ฆฌ๋ ๊ฐ์ ๋คํธ์ํฌ ๊ณต๊ฐ์ ๊ตฌ์ถํด์ค๋๋ค.
์ง์ ๋น์ ํ์๋ฉด๊ณผ โ๋ฐฉโ๊ณผ ๋น์ทํ ์ญํ ์ธ ๊ฒ ๊ฐ์ต๋๋ค. ๋
ผ๋ฆฌ์ ์ผ๋ก ์ฌ๊ธฐ๋ ์๋ฐฉ, ์ฌ๊ธฐ๋ ์ฃผ๋ฐฉ์ ์๋ฏธ๋ก ์ญํ ์ ๋ถ์ฌํ๋ ๊ฒ์ฒ๋ผ ๊ตฌํ์ ๋๋ ์ ๋คํธ์ํฌ์ ๊ตฌ์ญ์ ์ง์ ํด์ฃผ๊ณ , ๋์ผํ ์ฑ๊ฒฉ์ด๋ ์ญํ ์ EC2์ธ์คํด์ค๋ค์ ๋ฌถ์ด์ ๊ทธ ๋ง์ ๋คํธ์ํฌ ์ค์ ์ ์ ์ฉํด์ค ์ ์์ต๋๋ค. ๊ทธ ๋ฐฉ์ ์ธํ
๋ฆฌ์ด๋ฅผ ๊พธ๋ฉฐ์ฃผ๋ ๊ฒ์ฒ๋ผ์ ์๋ฏธ์ ์ผ๋ก๋ ์กฐ๊ธ ์ฐจ์ด๊ฐ ์์ง๋ง, ๊ตฌ์ญ์ ๋๋๋ ๊ฒ์ผ๋ก ์๊ฐํ๋ฉด ๋ ๊ฒ ๊ฐ์ต๋๋ค.
๊ตฌ์ญ์ ๋๋ด๊ธฐ ๋๋ฌธ์ ๊ฐ VPC๋ ๋ ๋ฆฝ๋ ๋คํธ์ํฌ์ฒ๋ผ ์๋ํ๊ฒ ๋ฉ๋๋ค.
VPC์ ๊ตฌ์ถ์ ์์ด์ VPC์ IP์ฃผ์์ ๋ฒ์๋ฅผ RFC1918์ ๊ทผ๊ฑฐํ ์ฌ์คIP๋์ญ์ ๋ง์ถ์ด ๊ตฌ์ถ์ ํด์ผํ๋๋ฐ์, ์ฌ๊ธฐ์ ํด๋นํ๋ 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)
๋์ผํ VPC ๋คํธ์ํฌ ์์์ ๊ฐ ์ธ์คํด์ค๋ ๋ค๋ฅธ IP์ฃผ์๋ฅผ ์์ ๋ชฉ๋ก์ ๋์ญ ๋ด์์ ์ฌ์ฉํด์ผ ํฉ๋๋ค. ํ ๋ฒ ์ค์ ํ IP๋์ญ์ ์์ ์ด ๋ถ๊ฐ๋ฅํ๋, ์ ๊ณ ๋ คํด์ ์ค์ ํด์ผํฉ๋๋ค.
VPC๋ฅผ CIDR๋ธ๋ก์ ๊ฐ์ง๋ ๋จ์๋ก ๋๋์ด์ ๋ ๋ง์ ๋คํธ์ํฌ ๋ง์ ๋ง๋ค ์ ์์ต๋๋ค.
๋ค์ ๋งํด์, ์์ ์ค์ ํ VPC์ IP๋์ญ์ ๋ฌผ๋ฆฌ์ ์ผ๋ก ์ชผ๊ฐ์ฃผ๋ ์์
์
๋๋ค.
๐ก CIDR(Classless Inter-Domain Routing)์ด๋? - ์ฐธ๊ณ ๋งํฌ
ํด๋์ค๊ฐ ์๋ ๋๋ฉ์ธ ๊ฐ ๋ผ์ฐํ ๊ธฐ๋ฒ์ ๋ป์ผ๋ก ๋คํธ์ํฌ์ ๊ตฌ๋ถ์ Class๋ก ํ์ง ์๋๋ค๋ ์๋ฏธ. Class์ฒด๊ณ ๋ณด๋ค IP ์ฃผ์๋ฅผ ์ฌ๋ฌ ๋คํธ์ํฌ ์์ญ์ผ๋ก ์ ์ฐํ๊ฒ ๋๋ ์ ์๋ค๋ ๊ฒ์ด ์ฅ์ . ๋ ๊น์ด ์๊ณ ์ถ๋ค๋ฉด ์ ๋งํฌ๋ฅผ ์ฐธ๊ณ ํด ์ฃผ์ธ์.
VPC๋ฅผ ํ๋์ ๋ฐฉ์ผ๋ก ์๊ฐํ๋ค๋ฉด, Subnet์ ๊ทธ ๋ฐฉ์์ ๊ฐ์์ ์๋ฆฌ๋ฅผ ๊ตฌ๋ถ์ง๋ ํํฐ์ ์ด๋ผ๊ณ ์๊ฐํ๋ฉด ๋ ๊ฒ ๊ฐ์ต๋๋ค. ์ธํฐ๋ท๊ณผ ์ฐ๊ฒฐ๋์ด ์๋ค๋ฉด Public Subnet ๊ทธ๋ ์ง ์๋ค๋ฉด Private Subnet์ด๋ผ๊ณ ํ ์ ์์ต๋๋ค.
VPC์ IP ๋์ญ์ ์ชผ๊ฐ์ ๊ณต๊ฐ์ ๋ถ๋ฆฌํฉ๋๋ค.
ex) VPC์ IP๋์ญ์ด 10.0.0.0/16 ์ด๋ผ๋ฉด,
Public subnet A : 10.0.1.0/24
Public subnet B : 10.0.2.0/24
Private subnet A : 10.0.3.0/24
Private subnet B : 10.0.4.0/24
์ด๋ ๊ฒ ๊ตฌ์ฑํ์ฌ Subnet์ ์ด์คํํ์ฌ ์๋น์ค์ ์์ ์ฑ์ ๋์ด๋ ๊ตฌ์ฑ์ ๋ฉํฐ AZ๋ผ๊ณ ํฉ๋๋ค.
๐ก ๋ฉํฐ AZ(Multi Available Zone)๋?
ํ๋ ์ด์์ ๋ฌผ๋ฆฌ์ ์ผ๋ก ๋ถ๋ฆฌ๋ ๊ฐ์ฉ์์ญ์ ๋์ผ ๋ฆฌ์์ค๋ฅผ ๋์์ ๋ฐฐ์นํ์ฌ ์ฅ์ ๋ฐ์ ์์๋ ์๋น์ค๋ฅผ ๋ฌธ์ ์์ด ๊ณต๊ธํ๋ฉฐ, ์ถ๊ฐ ๋น์ฉ์ด ๋ฐ์ํ์ง ์๋๋ค.
Router๋ ํ VPC ๋ด์ ์์นํ๋ฉฐ Routing Table์ ๋ชฉ์ ์ง๊ฐ ์ ํ ๋ชฉ๋กํ๋ผ๊ณ ์๊ฐํ๋ฉด ๋ฉ๋๋ค.
์๋ฅผ ๋ค์ด, ํ subnet์ ์ธ์คํด์ค๊ฐ ๋ค๋ฅธ subnet์ ์ธ์คํด์ค์ ํต์ ํ๊ณ ์ ํ๋ค๋ฉด ์ด ๋ผ์ฐํฐ๋ฅผ ๊ฑฐ์ณ์ ์ ํํ๋ฅผ ๋ณด๊ณ ๋ชฉ์ ์ง์ ๋ง๊ฒ ์ด๋ํด์ผ ํฉ๋๋ค. ํ์ ์ธ์คํด์ค๊ฐ ํต์ ํ ๋ชฉ์ ์ง๊ฐ ๋ผ์ฐํฐ๋ฅผ ํตํ์ฌ VPC๋ด IP๋์ญ์ ์๋ค๋ฉด ๋ผ์ฐํฐ์ ์ฐ๊ฒฐ๋ ์ธํฐ๋ท ๊ฒ์ดํธ์จ์ด๋ก ๋ณด๋ด๊ฒ ๋ฉ๋๋ค. ์ด๋ฌํ ๋ฐฉ์์ผ๋ก VPC๋ด์ ์ธ์คํด์ค๋ค์ด ์ค์ ๋ก ์ฐ๋ฆฌ๊ฐ ์ฌ์ฉํ๋ ์ธํฐ๋ท ๋ง๊ณผ ํต์ ํ ์ ์๊ฒ ๋ฉ๋๋ค.
์์์์ธํฐ๋ท๊ณผ ์ฐ๊ฒฐ์ด ๋๋ฉด Public, ์๋๋ฉด Private์ด๋ผ๊ณ ํ์์ต๋๋ค. ๋ค๋ง Privateํ ๊ฒฝ์ฐ์ ๋ผ๋ ๋ด๋ถ ์น์๋ฒ๋ก ํ์ฉํ๊ณ ์๊ฑฐ๋, ์ด์์ฒด์ ์ ์ ๋ฐ์ดํธ๊ฐ ํ์ํ ๋ฑ๋ฑ์ ๊ฒฝ์ฐ์ ์ธ๋ถ์ ์ ์์ ํ์ฉํ์ฌ ์ ๋ฐ์ดํธ Resource๋ฅผ ๊ฐ์ ธ์ค๋ ์์ ์ด ํ์ํฉ๋๋ค.
์ ๋ฆฌํ๋ฉด Private์ ์ธ๋ฐ์ด๋ ์ฆ, ์ธ๋ถ์์ ์ธ์คํด์ค์ ์ ๊ทผํ๋ ๊ฒ์ ์ฐจ๋จํ์ง๋ง, ์์๋ฐ์ด๋ ์ฆ, ์์์ ๋ฐ์ผ๋ก ๋๊ฐ๋ ๊ฒ์ ํ์ฉํ๋ ๊ฒ ์ธ๋ฐ์, ๊ทธ๋ฌํ ๊ณผ์ ์์ ์ฌ์ฉํ๋ ๊ฒ์ด NAT Gateway์ ๋๋ค.
AWS์์ NAT Gateway์๋น์ค๋ฅผ ์ด์ฉํ๋ ๊ฒ์ ๋น์ฉ์ด ๋ฐ์ํ๋ฏ๋ก, ํ๋์ ์ธ์คํด์ค๋ฅผ Basion Host(NAT instance)๋ก ๊ตฌ์ฑํ์ฌ ๋์ฒดํ ์ ์์ต๋๋ค.
Basion Host๋ ๋ถ๋์ดํ๊ฒ ๊ด๋ฆฌ์๊ฐ private subnet์ ์ ๊ทผ์ด ํ์ํ ๊ฒฝ์ฐ, ์ ๊ทผํ ์ ์๋๋ก ์ค๊ฐํ๋ ์ญํ ์ ์ํํฉ๋๋ค.