AWS NAT gateway - low-hill/Knowledge GitHub Wiki
NAT๋?
NAT(Network Address Translation)๋ ๋คํธ์ํฌ ์ฃผ์ ๋ณํ ๊ธฐ์ ๋ก, ๋ด๋ถ ๋คํธ์ํฌ์ ์ฌ์ค IP ์ฃผ์๋ฅผ ๊ณต์ธ IP ์ฃผ์๋ก ๋ณํํ์ฌ ์ธํฐ๋ท ํต์ ์ ๊ฐ๋ฅํ๊ฒ ํ๋ ์ค์ํ ๋ฉ์ปค๋์ฆ์ ๋๋ค.
- ์ฌ์ค IP ์ฃผ์๋ฅผ ๊ณต์ธ IP ์ฃผ์๋ก ๋ณํํ๋ ๊ธฐ๋ณธ์ ์ธ ๊ธฐ์
- 1:1 ๋งคํ ๋ฐฉ์์ผ๋ก ๋์
NAT์ ์ฃผ์ ํน์ง๊ณผ ์ฅ์
- IP ์ฃผ์ ์ ์ฝ: ์ ํ๋ ๊ณต์ธ IP ์ฃผ์๋ฅผ ์ฌ๋ฌ ๋ด๋ถ ํธ์คํธ๊ฐ ๊ณต์ ํ ์ ์๊ฒ ํฉ๋๋ค.
- ๋ณด์ ๊ฐํ: ๋ด๋ถ ๋คํธ์ํฌ ๊ตฌ์กฐ๋ฅผ ์ธ๋ถ์์ ์ง์ ๋ณผ ์ ์๊ฒ ํ์ฌ ๋ณด์์ ํฅ์์ํต๋๋ค.
- ์ ์ฐํ ๋คํธ์ํฌ ๊ตฌ์ฑ: ๋ด๋ถ ๋คํธ์ํฌ ๊ตฌ์กฐ ๋ณ๊ฒฝ ์ ์ธ๋ถ ์ฐ๊ฒฐ์ ์ํฅ์ ์ฃผ์ง ์์ต๋๋ค.
- ์ฃผ์ ์ถฉ๋ ํด๊ฒฐ: ์๋ก ๋ค๋ฅธ ๋คํธ์ํฌ์์ ๊ฐ์ ์ฌ์ค IP ์ฃผ์๋ฅผ ์ฌ์ฉํ ์ ์๊ฒ ํฉ๋๋ค.
NAT๋ ์ฃผ๋ก ๋ผ์ฐํฐ๋ ๋ฐฉํ๋ฒฝ์์ ๊ตฌํ๋๋ฉฐ, ํจํท์ด ๋ด๋ถ์์ ์ธ๋ถ๋ก ๋๊ฐ ๋ ์ฌ์ค IP๋ฅผ ๊ณต์ธ IP๋ก ๋ณํํ๊ณ , ์ธ๋ถ์์ ๋ด๋ถ๋ก ๋ค์ด์ฌ ๋ ๋ค์ ๊ณต์ธ IP๋ฅผ ์ฌ์ค IP๋ก ๋ณํํฉ๋๋ค. ์ด ๊ณผ์ ์์ NAT ๋ณํ ํ ์ด๋ธ์ ์ฌ์ฉํ์ฌ ์ ํํ ์ฃผ์ ๋งคํ์ ๊ด๋ฆฌํฉ๋๋ค.
NAT์ ์๋ ์๋ฆฌ
NAT๋ ์๋ ๊ณผ์ ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค: a) ์์ฒญ ๋จ๊ณ:
- ๋ด๋ถ ํธ์คํธ(PrivateIP)๊ฐ ์ธํฐ๋ท์ผ๋ก ์์ฒญ์ ๋ณด๋ ๋๋ค.
- ์ด ์์ฒญ์ NAT ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ ๋ผ์ฐํฐ๋ฅผ ํต๊ณผํฉ๋๋ค.
- NAT ๋ผ์ฐํฐ๋ PrivateIP๋ฅผ PublicIP๋ก ๋ณํํฉ๋๋ค.
- ๋ณํ๋ ์ฃผ์๋ก ์ธํฐ๋ท์ ์์ฒญ์ ์ ์กํฉ๋๋ค. b) ์๋ต ๋จ๊ณ:
- ์ธํฐ๋ท์ผ๋ก๋ถํฐ ์๋ต์ด NAT ๋ผ์ฐํฐ์ ๋์ฐฉํฉ๋๋ค.
- NAT ๋ผ์ฐํฐ๋ NAT ๋ณํ ํ ์ด๋ธ์ ์ฐธ์กฐํฉ๋๋ค.
- ํ ์ด๋ธ ์ ๋ณด๋ฅผ ๋ฐํ์ผ๋ก PublicIP๋ฅผ ์๋์ PrivateIP๋ก ๋ค์ ๋ณํํฉ๋๋ค.
- ๋ณํ๋ ์ฃผ์๋ก ๋ด๋ถ ํธ์คํธ์ ์๋ต์ ์ ๋ฌํฉ๋๋ค.
NAT ๋ณํ ํ ์ด๋ธ
NAT ๋ณํ ํ ์ด๋ธ์ ์ด ๊ณผ์ ์ ํต์ฌ์ ๋๋ค. ์๋๋ NAT ๋ณํ ํ ์ด๋ธ์ ์์ ์ ๋๋ค:
Private IP | Public IP |
---|---|
192.168.1.10 | 203.0.113.1 |
192.168.1.20 | 203.0.113.2 |
192.168.1.30 | 203.0.113.3 |
์ด ํ ์ด๋ธ์ ๋ค์ ์ ๋ณด๋ฅผ ํฌํจํฉ๋๋ค:
- Private IP: ๋ด๋ถ ๋คํธ์ํฌ์ ํธ์คํธ IP
- Public IP: NAT ๋ผ์ฐํฐ์ ์ธ๋ถ IP
NAT ๋ผ์ฐํฐ๋ ์ด ํ ์ด๋ธ์ ์ด์ฉํด incoming/outgoing ํจํท์ ์ฃผ์๋ฅผ ์ ํํ ๋ณํํฉ๋๋ค. ๊ฒฐ๋ก ์ ์ผ๋ก, NAT๋ ์ ํ๋ PublicIP๋ฅผ ํจ์จ์ ์ผ๋ก ์ฌ์ฉํ๋ฉด์๋ ๋ด๋ถ ๋คํธ์ํฌ์ ๋ณด์์ ์ ์งํ๋ ์ค์ํ ๊ธฐ์ ์ ๋๋ค. ์ด๋ฅผ ํตํด ๋๊ท๋ชจ ๋คํธ์ํฌ์์๋ ์์ ํ๊ณ ํจ์จ์ ์ธ ์ธํฐ๋ท ํต์ ์ด ๊ฐ๋ฅํด์ง๋๋ค.
NAPT๋?
NAPT(Network Address Port Translation)๋ ํ๋ ๋คํธ์ํฌ์์ ๋๋ฆฌ ์ฌ์ฉ๋๋ ์ค์ํ ๊ธฐ์ ๋ก, ์ฌ๋ฌ host๊ฐ ๊ณ ์ ํ PrivateIP๋ฅผ ํ ๋น๋ฐ๊ณ ํ๋์ ๊ณต์ฉ IP ์ฃผ์๋ฅผ ๊ณต์ ํ๋ฉด์ ์ธํฐ๋ท๊ณผ ํต์ ํ ์ ์์ต๋๋ค.
- NAT์ ํ์ฅ ๋ฒ์ ์ผ๋ก, IP ์ฃผ์์ ํฌํธ ๋ฒํธ๋ฅผ ํจ๊ป ๋ณํ
- ์ฌ๋ฌ ์ฌ์ค IP ์ฃผ์๊ฐ ํ๋์ ๊ณต์ธ IP ์ฃผ์๋ฅผ ๊ณต์ ๊ฐ๋ฅ
NAPT์ ์๋ ์๋ฆฌ
NAPT์ ์๋ ๊ณผ์ ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค: a) ์์ฒญ ๋จ๊ณ:
- ๋ด๋ถ ํธ์คํธ(PrivateIP)๊ฐ ํน์ ํฌํธ๋ฅผ ํตํด ์ธํฐ๋ท์ผ๋ก ์์ฒญ์ ๋ณด๋ ๋๋ค.
- ์ด ์์ฒญ์ NAPT ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ ๋ผ์ฐํฐ๋ฅผ ํต๊ณผํฉ๋๋ค.
- NAPT ๋ผ์ฐํฐ๋ PrivateIP์ ํฌํธ๋ฅผ PublicIP์ ์๋ก์ด ํฌํธ๋ก ๋ณํํฉ๋๋ค.
- ๋ณํ๋ ์ฃผ์์ ํฌํธ๋ก ์ธํฐ๋ท์ ์์ฒญ์ ์ ์กํฉ๋๋ค. b) ์๋ต ๋จ๊ณ:
- ์ธํฐ๋ท์ผ๋ก๋ถํฐ ์๋ต์ด NAPT ๋ผ์ฐํฐ์ ๋์ฐฉํฉ๋๋ค.
- NAPT ๋ผ์ฐํฐ๋ NAPT ๋ณํ ํ ์ด๋ธ์ ์ฐธ์กฐํฉ๋๋ค.
- ํ ์ด๋ธ ์ ๋ณด๋ฅผ ๋ฐํ์ผ๋ก PublicIP์ ํฌํธ๋ฅผ ์๋์ PrivateIP์ ํฌํธ๋ก ๋ค์ ๋ณํํฉ๋๋ค.
- ๋ณํ๋ ์ฃผ์์ ํฌํธ๋ก ๋ด๋ถ ํธ์คํธ์ ์๋ต์ ์ ๋ฌํฉ๋๋ค.
NAPT ๋ณํ ํ ์ด๋ธ
์ฌ์ค IP | ์ฌ์ค ํฌํธ | ๊ณต์ฉ IP | ๊ณต์ฉ ํฌํธ |
---|---|---|---|
192.168.1.10 | 3000 | 203.0.113.1 | 20000 |
192.168.1.20 | 4000 | 203.0.113.1 | 20001 |
192.168.1.30 | 5000 | 203.0.113.1 | 20002 |
์ ํ ์ด๋ธ์ ๋ค์ ์ ๋ณด๋ฅผ ํฌํจํฉ๋๋ค:
- Private IP: ๋ด๋ถ ๋คํธ์ํฌ์ ํธ์คํธ IP
- Private Port: ๋ด๋ถ ํธ์คํธ์ ํฌํธ ๋ฒํธ
- Public IP: NAT ๋ผ์ฐํฐ์ ์ธ๋ถ IP
- Public Port: NAT ๋ผ์ฐํฐ๊ฐ ํ ๋นํ ์ธ๋ถ ํฌํธ
AWS์ NAT gateway๋?
AWS NAT ๊ฒ์ดํธ์จ์ด๋ Amazon Web Services์์ ์ ๊ณตํ๋ ๊ด๋ฆฌํ ๋คํธ์ํฌ ์ฃผ์ ๋ณํ(NAT) ์๋น์ค์
๋๋ค.
์ฃผ์ ๊ธฐ๋ฅ:
- ํ๋ผ์ด๋น ์๋ธ๋ท ๋ด ์ธ์คํด์ค์ ์ธ๋ถ ์ฐ๊ฒฐ ์ง์
- ์ธ๋ถ์์ ํ๋ผ์ด๋น ์๋ธ๋ท์ผ๋ก์ ์ง์ ์ ๊ทผ ์ฐจ๋จ
์๋ ๋ฐฉ์: - ํ๋ผ์ด๋น ์๋ธ๋ท -> NAT ๊ฒ์ดํธ์จ์ด -> ์ธํฐ๋ท ๊ฒ์ดํธ์จ์ด -> ์ธ๋ถ ๋คํธ์ํฌ
- ์ธ๋ถ ๋คํธ์ํฌ -> NAT ๊ฒ์ดํธ์จ์ด (์ ๊ทผ ์ฐจ๋จ) ์ฅ์ :
- ๋ณด์ ๊ฐํ: ์ธ๋ถ๋ก๋ถํฐ์ ์ง์ ์ ์ธ ์ ๊ทผ ๋ฐฉ์ง
- ๊ด๋ฆฌ ์ฉ์ด์ฑ: AWS์์ ๊ด๋ฆฌํ๋ ์๋น์ค๋ก ์ ์ง๋ณด์ ๊ฐํธ
- ํ์ฅ์ฑ: ํธ๋ํฝ ์ฆ๊ฐ์ ๋ฐ๋ผ ์๋์ผ๋ก ํ์ฅ
AWS NAT Gateway ์ค์
ํ๋ผ์ด๋น ์๋ธ๋ท์ ์ธ์คํด์ค๋ค์ด NAT Gateway๋ฅผ ํตํด ์ธํฐ๋ท์ ์ ๊ทผํ ์ ์๋๋ก AWS NAT Gateway ์ค์ ๊ณผ์ ์ ๊ธฐ์ ํฉ๋๋ค:
- ํผ๋ธ๋ฆญ ์๋ธ๋ท ์ ํ:
- ์ ํํ VPC ๋ด์ ํผ๋ธ๋ฆญ ์๋ธ๋ท์ ์ง์ ํฉ๋๋ค.
- ์ด ์๋ธ๋ท์ ์ธํฐ๋ท ๊ฒ์ดํธ์จ์ด์ ์ฐ๊ฒฐ๋์ด ์์ด์ผ ํฉ๋๋ค.
- ํ๋ธ๋ฆญ ์๋ธ๋ท ๋ด NAT Gateway ์์ฑ:
- AWS ์ฝ์์ VPC ์น์ ์์ 'NAT Gateways'๋ฅผ ์ ํํฉ๋๋ค.
- '์ NAT Gateway ์์ฑ' ๋ฒํผ์ ํด๋ฆญํฉ๋๋ค.
- ์ ํํ ํผ๋ธ๋ฆญ ์๋ธ๋ท์ ์ง์ ํฉ๋๋ค.
- ์๋ก์ด ํ๋ ฅ์ IP ์ฃผ์๋ฅผ ํ ๋นํ๊ฑฐ๋ ๊ธฐ์กด ์ฃผ์๋ฅผ ์ ํํฉ๋๋ค.
- ๋ผ์ฐํ ํ ์ด๋ธ ์ค์ :
- ํ๋ผ์ด๋น ์๋ธ๋ท์ ๋ผ์ฐํ ํ ์ด๋ธ์ ์ฝ๋๋ค.
- ์ ๋ผ์ฐํ
๊ท์น์ ์ถ๊ฐํฉ๋๋ค:
- ๋ชฉ์ ์ง: 0.0.0.0/0 (๋ชจ๋ ์ธํฐ๋ท ํธ๋ํฝ)
- ๋์: ๋ฐฉ๊ธ ์์ฑํ NAT Gateway์ ID
- ๋ณ๊ฒฝ ์ฌํญ ์ ์ฅ:
- ๋ผ์ฐํ ํ ์ด๋ธ์ ๋ณ๊ฒฝ ์ฌํญ์ ์ ์ฅํฉ๋๋ค.
Reference