์ด ํ์ด์ง์์๋ ๋์ ๋ผ์ฐํ ์ ์ฌ์ฉํ์ฌ ๊ฒฝ๊ณ ๊ฒ์ดํธ์จ์ด ํ๋กํ ์ฝ(BGP)์ ์ฌ์ฉํ๋ ํฐ๋ 1๊ฐ์ ๊ธฐ๋ณธ VPN ๊ฒ์ดํธ์จ์ด๋ฅผ ๋ง๋๋ ๋ฐฉ๋ฒ์ ์ค๋ช ํฉ๋๋ค.
๋์ ๋ผ์ฐํ ์ ์ฌ์ฉํ ๋๋ ๋ก์ปฌ ๋๋ ์๊ฒฉ ํธ๋ํฝ ์ ํ๊ธฐ๋ฅผ ์ง์ ํ์ง ์์ผ๋ฉฐ, ๋์ Cloud Router๋ฅผ ์ฌ์ฉํ์ธ์. ๊ฒฝ๋ก ์ ๋ณด๋ ๋์ ์ผ๋ก ๊ตํ๋ฉ๋๋ค.
Cloud VPN์ ๋ํ ์์ธํ ๋ด์ฉ์ ๋ค์ ๋ฆฌ์์ค๋ฅผ ์ฐธ์กฐํ์ธ์.
Cloud VPN ์ค์ ์ ์ ๊ณ ๋ คํด์ผ ํ ๊ถ์ฅ์ฌํญ์ ๊ถ์ฅ์ฌํญ์ ์ฐธ์กฐํ์ธ์.
Cloud VPN์ ๋ํ ์์ธ ์ค๋ช ์ Cloud VPN ๊ฐ์๋ฅผ ์ฐธ์กฐํ์ธ์.
์ด ํ์ด์ง์์ ์ฌ์ฉ๋๋ ์ฉ์ด์ ์ ์๋ ์ฃผ์ ์ฉ์ด๋ฅผ ์ฐธ์กฐํ์ธ์.
์๊ตฌ์ฌํญ
์ผ๋ฐ ๊ฐ์ด๋๋ผ์ธ
- Google Cloud์์ ๋์ ๋ผ์ฐํ ์ด ์๋ํ๋ ๋ฐฉ๋ฒ์ ๋ํ ์ ๋ณด๋ฅผ ๊ฒํ ํฉ๋๋ค.
- ํผ์ด VPN ๊ฒ์ดํธ์จ์ด๊ฐ BGP๋ฅผ ์ง์ํ๋์ง ํ์ธํฉ๋๋ค.
- ๊ธฐ๋ณธ VPN ํ ํด๋ก์ง ์ํ์ ํ์ธํฉ๋๋ค.
Compute Engine VM์ ํ์ฌ VPN ์ํํธ์จ์ด ์ค์น
๋์ ๋ผ์ฐํ ์ผ๋ก ๊ธฐ๋ณธ VPN ํฐ๋์ ๋ง๋ค ๋๋ ํผ์ด VPN ๊ฒ์ดํธ์จ์ด ์ธํฐํ์ด์ค์ ์ง์ ํ๋ IP ์ฃผ์๋ฅผ Compute Engine VM์ ํ ๋นํด์ผ ํฉ๋๋ค.
๋ฐ๋ผ์ ๊ธฐ๋ณธ VPN ํฐ๋์ ๋ง๋ค๋ ค๋ฉด ๋จผ์ Compute Engine VM์ ํ์ฌ VPN ์ํํธ์จ์ด๋ฅผ ์ค์นํด์ผ ํฉ๋๋ค. ๊ธฐ๋ณธ VPN ํฐ๋์ ๊ตฌ์ฑํ ๋๋ Compute Engine VM์ ์ธ๋ถ IP ์ฃผ์๋ฅผ ํผ์ด VPN ๊ฒ์ดํธ์จ์ด ์ธํฐํ์ด์ค๋ก ์ง์ ํฉ๋๋ค.
๋ํ Google์ด ์์ ํ ๋ฆฌ์ ๋ณ ์ธ๋ถ IPv4 ์ฃผ์ ํ์์ ํผ์ด VPN ๊ฒ์ดํธ์จ์ด ์ธํฐํ์ด์ค์ IP ์ฃผ์๋ฅผ ํ ๋นํด์ผ ํฉ๋๋ค. IP ์ฃผ์๋ ์์ฒด IP ์ฃผ์ ์ฌ์ฉ(BYOIP) ๋ฒ์์ ํฌํจ๋ ์ ์์ต๋๋ค.
Cloud Router ๋ง๋ค๊ธฐ
๊ธฐ๋ณธ VPN์ ๋์ ๋ผ์ฐํ ์ ์ฌ์ฉํ๋ ํฐ๋์ ๋ง๋ค๋ ค๋ฉด Cloud Router๋ฅผ ์ฌ์ฉํด์ผ ํฉ๋๋ค. ์ Cloud Router๋ฅผ ๋ง๋ค๊ฑฐ๋ ๊ธฐ์กด Cloud VPN ํฐ๋ ๋๋ VLAN ์ฐ๊ฒฐ์ ๊ธฐ์กด Cloud Router๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค. ๊ทธ๋ฌ๋ ์ฒจ๋ถ์ ํน์ ASN ์๊ตฌ์ฌํญ์ผ๋ก ์ธํด ์ฌ์ฉํ๋ Cloud Router๊ฐ Partner Interconnect ์ฐ๊ฒฐ๊ณผ ์ฐ๊ด๋ VLAN ์ฐ๊ฒฐ์ ๋ํ BGP ์ธ์ ์ ์ด๋ฏธ ๊ด๋ฆฌํ๊ณ ์์ง ์์์ผ ํฉ๋๋ค.
์์ํ๊ธฐ ์ ์
Cloud VPN์ ๋ณด๋ค ์ฝ๊ฒ ๊ตฌ์ฑํ ์ ์๋๋ก Google Cloud ์์ ๋ค์ ํญ๋ชฉ์ ์ค์ ํฉ๋๋ค.
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Verify that billing is enabled for your Google Cloud project.
-
Install the Google Cloud CLI.
-
์ธ๋ถ ID ๊ณต๊ธ์ ์ฒด (IdP)๋ฅผ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ ๋จผ์ ์ ํด ID๋ก gcloud CLI์ ๋ก๊ทธ์ธํด์ผ ํฉ๋๋ค.
-
gcloud CLI๋ฅผ ์ด๊ธฐํํ๋ ค๋ฉด, ๋ค์ ๋ช ๋ น์ด๋ฅผ ์คํํฉ๋๋ค.
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Verify that billing is enabled for your Google Cloud project.
-
Install the Google Cloud CLI.
-
์ธ๋ถ ID ๊ณต๊ธ์ ์ฒด (IdP)๋ฅผ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ ๋จผ์ ์ ํด ID๋ก gcloud CLI์ ๋ก๊ทธ์ธํด์ผ ํฉ๋๋ค.
-
gcloud CLI๋ฅผ ์ด๊ธฐํํ๋ ค๋ฉด, ๋ค์ ๋ช ๋ น์ด๋ฅผ ์คํํฉ๋๋ค.
gcloud init
-
Google Cloud CLI๋ฅผ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ ๋ค์ ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ์ฌ ํ๋ก์ ํธ ID๋ฅผ ์ค์ ํฉ๋๋ค. ์ด ํ์ด์ง์
gcloud
๊ด๋ จ ์๋ด์์๋ ๋ช ๋ น์ด๋ฅผ ์คํํ๊ธฐ ์ ์ ํ๋ก์ ํธ ID๋ฅผ ์ค์ ํ๋ค๊ณ ๊ฐ์ ํฉ๋๋ค.gcloud config set project PROJECT_ID
-
๋ํ ๋ค์ ๋ช ๋ น์ด๋ฅผ ์คํํ์ฌ ์ด๋ฏธ ์ค์ ๋ ํ๋ก์ ํธ ID๋ฅผ ํ์ธํ ์ ์์ต๋๋ค.
gcloud config list --format='text(core.project)'
- ์ปค์คํ ๋ชจ๋ VPC ๋คํธ์ํฌ๋ฅผ ๋ง๋ค๋ ค๋ฉด(๊ถ์ฅ) ์ปค์คํ ๋ชจ๋ VPC ๋คํธ์ํฌ ๋ง๋ค๊ธฐ๋ฅผ ์ฐธ์กฐํ์ธ์.
- ์๋ธ๋ท์ ๋ง๋ค๋ ค๋ฉด ์๋ธ๋ท ์์ ์ ์ฐธ์กฐํ์ธ์.
- Google Cloud ์ฝ์์์ VPN ํ์ด์ง๋ก ์ด๋ํฉ๋๋ค.
VPN ํ์ด์ง๋ก ์ด๋- ๊ฒ์ดํธ์จ์ด๋ฅผ ์ฒ์ ๋ง๋๋ ๊ฒฝ์ฐ VPN ์ฐ๊ฒฐ ๋ง๋ค๊ธฐ ๋ฒํผ์ ์ ํํฉ๋๋ค.
- VPN ์ค์ ๋ง๋ฒ์ฌ๋ฅผ ์ ํํฉ๋๋ค.
- ๊ธฐ๋ณธ VPN ๋ผ๋์ค ๋ฒํผ์ ์ ํํฉ๋๋ค.
- ๊ณ์์ ํด๋ฆญํฉ๋๋ค.
- VPN ์ฐ๊ฒฐ ๋ง๋ค๊ธฐ ํ์ด์ง์์ ๋ค์ ๊ฒ์ดํธ์จ์ด ์ค์ ์ ์ง์ ํฉ๋๋ค.
- ์ด๋ฆ - VPN ๊ฒ์ดํธ์จ์ด์ ์ด๋ฆ์ ๋๋ค. ์ด๋ฆ์ ๋์ค์ ๋ณ๊ฒฝํ ์ ์์ต๋๋ค.
- ์ค๋ช - ์ํ ๊ฒฝ์ฐ ์ค๋ช ์ ์ถ๊ฐํฉ๋๋ค.
- ๋คํธ์ํฌ - VPN ๊ฒ์ดํธ์จ์ด์ ํฐ๋์ ๋ง๋ค ๊ธฐ์กด VPC ๋คํธ์ํฌ๋ฅผ ์ง์ ํฉ๋๋ค.
- ๋ฆฌ์ - Cloud VPN ๊ฒ์ดํธ์จ์ด ๋ฐ ํฐ๋์ ๋ฆฌ์ ๋ณ ๊ฐ์ฒด์ ๋๋ค. ๊ฒ์ดํธ์จ์ด๊ฐ ์์นํ Google Cloud๋ฆฌ์ ์ ์ ํํฉ๋๋ค. ๋ค๋ฅธ ๋ฆฌ์ ์ ์๋ ์ธ์คํด์ค ๋ฐ ๋ค๋ฅธ ๋ฆฌ์์ค๋ ๊ฒฝ๋ก ์์์ ๋ฐ๋ผ ์ด๊ทธ๋ ์ค ํธ๋ํฝ์ ํฐ๋์ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์ต์์ ์ฑ๋ฅ์ ์ํ๋ค๋ฉด ๊ด๋ จ Google Cloud ๋ฆฌ์์ค์ ๋์ผํ ๋ฆฌ์ ์์ ๊ฒ์ดํธ์จ์ด์ ํฐ๋์ ์ฐพ์ผ์ธ์.
- IP ์ฃผ์ - ๋ฆฌ์ ๋ณ ์ธ๋ถ IP ์ฃผ์๋ฅผ ๋ง๋ค๊ฑฐ๋ ๊ธฐ์กด ์ฃผ์๋ฅผ ์ ํํฉ๋๋ค.
์ ํฐ๋ ํญ๋ชฉ์ ๋ํด ํฐ๋ ์น์ ์์ ๋ค์์ ์ง์ ํฉ๋๋ค.
- ์ด๋ฆ - VPN ํฐ๋์ ์ด๋ฆ์ ๋๋ค. ์ด๋ฆ์ ๋์ค์ ๋ณ๊ฒฝํ ์ ์์ต๋๋ค.
- ์ค๋ช - ์ ํ์ ์ผ๋ก ์ค๋ช ์ ์ ๋ ฅํฉ๋๋ค.
- ์๊ฒฉ ํผ์ด IP ์ฃผ์ โ ํผ์ด VPN ๊ฒ์ดํธ์จ์ด์ ์ธ๋ถ IP ์ฃผ์๋ฅผ ์ง์ ํฉ๋๋ค.
IKE ๋ฒ์ - ํผ์ด VPN ๊ฒ์ดํธ์จ์ด์์ ์ง์ํ๋ ์ ์ ํ IKE ๋ฒ์ ์ ์ ํํฉ๋๋ค. ํผ์ด ๊ธฐ๊ธฐ์์ ์ง์๋๋ ๊ฒฝ์ฐ IKEv2๊ฐ ๊ถ์ฅ๋ฉ๋๋ค.
๊ณต์ ๋น๋ฐ๋ฒํธ - ์ธ์ฆ์ ์ํด ์ฌ์ฉ๋๋ ์ฌ์ ๊ณต์ ํค๋ฅผ ์ ๊ณตํฉ๋๋ค. Cloud VPN ํฐ๋์ ๊ณต์ ๋น๋ฐ๋ฒํธ๋ ํผ์ด VPN ๊ฒ์ดํธ์จ์ด์์ ์๋ ํฐ๋์ ๊ตฌ์ฑํ ๋ ์ฌ์ฉํ ๊ณต์ ๋น๋ฐ๋ฒํธ์ ์ผ์นํด์ผ ํฉ๋๋ค. ์ด ์ง์นจ์ ๋ฐ๋ผ ์ํธ์ ์ผ๋ก ๊ฐ๋ ฅํ ๊ณต์ ๋น๋ฐ๋ฒํธ๋ฅผ ์์ฑํ ์ ์์ต๋๋ค.
๋ผ์ฐํ ์ต์ - ๋์ (BGP)์ ์ ํํฉ๋๋ค. ๋์ ๋ผ์ฐํ ๋ง ์ฌ์ฉํ์ฌ Google Cloud VM ์ธ์คํด์ค ๋ด์์ ์คํ๋๋ ์๋ ํํฐ VPN ๊ฒ์ดํธ์จ์ด ์ํํธ์จ์ด์ ์ฐ๊ฒฐํ ์ ์์ต๋๋ค.
Cloud Router - ์์ง Cloud Router๋ฅผ ๋ง๋ค์ง ์์ ๊ฒฝ์ฐ ์๋์ ์ค๋ช ๋๋ก ์ต์ ์ ์ง์ ํ์ฌ ์ Cloud Router๋ฅผ ๋ง๋ญ๋๋ค. ๋๋ Cloud Router๊ฐ Partner Interconnect์ ์ฐ๊ฒฐ๋ Interconnect ์ฐ๊ฒฐ์ ๋ํ BGP ์ธ์ ์ ๊ด๋ฆฌํ์ง ์๋ ๊ฒฝ์ฐ ๊ธฐ์กด Cloud Router๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค. ๊ธฐ์กด Cloud Router๋ฅผ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ ์ BGP ์ธ์ ์ด ์์ฑ๋์ง๋ง Google ASN์ด ๋์ผํฉ๋๋ค. ์ Cloud Router๋ฅผ ๋ง๋ค๋ ค๋ฉด ๋ค์ ์ธ๋ถ์ ๋ณด๋ฅผ ์ง์ ํฉ๋๋ค.
- ์ด๋ฆ โ Cloud Router ์ด๋ฆ์ ๋๋ค. ์ด๋ฆ์ ๋์ค์ ๋ณ๊ฒฝํ ์ ์์ต๋๋ค.
- ์ค๋ช - ์ ํ์ ์ผ๋ก ์ค๋ช ์ ์ ๋ ฅํฉ๋๋ค.
- Google ASN โ ๋น๊ณต๊ฐ ASN์ ์ ํํฉ๋๋ค(
64512
~65534
,4200000000
~4294967294
). ์ด Google ASN์ Cloud Router์์ ๊ด๋ฆฌ๋๋ ๋ชจ๋ BGP ์ธ์ ์ ์ฌ์ฉ๋ฉ๋๋ค. ASN์ ๋์ค์ ๋ณ๊ฒฝํ ์ ์์ต๋๋ค. - ์ ์ฅ ํ ๊ณ์์ ํด๋ฆญํฉ๋๋ค.
BGP ์ธ์ - ์ฐํ ์์ด์ฝ์ ํด๋ฆญํ ํ ๋ค์ ์ธ๋ถ์ ๋ณด๋ฅผ ์ง์ ํฉ๋๋ค. ์๋ฃ๋์์ผ๋ฉด ์ ์ฅ ํ ๊ณ์์ ํด๋ฆญํฉ๋๋ค.
- ์ด๋ฆ - BGP ์ธ์ ์ ์ด๋ฆ์ ๋๋ค. ๋์ค์ ๋ณ๊ฒฝํ ์ ์์ต๋๋ค.
- ํผ์ด ASN โ ํผ์ด VPN ๊ฒ์ดํธ์จ์ด์์ ์ฌ์ฉํ๋ ๊ณต๊ฐ ๋๋ ๋น๊ณต๊ฐ(
64512
~65534
,4200000000
~4294967294
) ASN์ ๋๋ค. - ๊ณต์ง๋ ๊ฒฝ๋ก ์ฐ์ ์์ - (์ ํ์ฌํญ) 'Google Cloud์ ์ฐ๊ฒฐ' ๊ฒฝ๋ก๋ฅผ ๊ณต์งํ ๋ Cloud Router๊ฐ ์ฌ์ฉํ๋ ๊ธฐ๋ณธ ์ฐ์ ์์์ ๋๋ค. ์์ธํ ๋ด์ฉ์ ๊ณต์ง๋ ํ๋ฆฌํฝ์ค ๋ฐ ์ฐ์ ์์๋ฅผ ์ฐธ์กฐํ์ธ์. ํผ์ด VPN ๊ฒ์ดํธ์จ์ด๋ ์ด๋ฅผ MED VPN ๊ฐ์ผ๋ก ๊ฐ์ ธ์ต๋๋ค.
- Cloud Router BGP IP ๋ฐ BGP ํผ์ด IP - 2๊ฐ์ BGP ์ธํฐํ์ด์ค IP ์ฃผ์๋
169.254.0.0/16
๋ธ๋ก์ ๊ณตํต/30
CIDR์ ์ํ๋ ๋งํฌ-๋ก์ปฌ IP ์ฃผ์์ฌ์ผ ํฉ๋๋ค. ๊ฐ BGP IP๋ ๊ฒฝ๋ก ์ ๋ณด ๊ตํ์ ์ํด ์ฌ์ฉ๋๋ ํด๋น ๋งํฌ-๋ก์ปฌ IP๋ฅผ ์ ์ํฉ๋๋ค. ์๋ฅผ ๋ค์ด169.254.1.1
๋ฐ169.254.1.2
๋ ๊ณตํต/30
๋ธ๋ก์ ์ํฉ๋๋ค.
๋์ผํ ๊ฒ์ดํธ์จ์ด์ ํฐ๋์ ๋ ๋ง๋ค์ด์ผ ํ ๊ฒฝ์ฐ ํฐ๋ ์ถ๊ฐ๋ฅผ ํด๋ฆญํ๊ณ ์ด์ ๋จ๊ณ๋ฅผ ๋ฐ๋ณตํฉ๋๋ค. ํฐ๋์ ๋์ค์ ๋ ์ถ๊ฐํ ์ ์์ต๋๋ค.
๋ง๋ค๊ธฐ๋ฅผ ํด๋ฆญํฉ๋๋ค.
PROJECT_ID
๋ฅผ ํ๋ก์ ํธ ID๋ก ๋ฐ๊ฟ๋๋ค.NETWORK
๋ฅผ Google Cloud ๋คํธ์ํฌ ์ด๋ฆ์ผ๋ก ๋ฐ๊ฟ๋๋ค.REGION
์ Google Cloud๋ฆฌ์ ์ผ๋ก ๋ฐ๊ฟ๋๋ค. ์ด ๋ฆฌ์ ์ ๊ฒ์ดํธ์จ์ด ๋ฐ ํฐ๋์ ๋ง๋ค๊ธฐ ์ํด ํ์ํฉ๋๋ค.- (์ ํ์ฌํญ)
--target-vpn-gateway-region
์ ๊ธฐ๋ณธ VPN ๊ฒ์ดํธ์จ์ด๊ฐ ์๋ํ ๋ฆฌ์ ์ ๋๋ค. ๊ฐ์--region
๊ณผ ๊ฐ์์ผ ํฉ๋๋ค. ์ง์ ํ์ง ์์ผ๋ฉด ์ด ์ต์ ์ด ์๋์ผ๋ก ์ค์ ๋ฉ๋๋ค. ์ด ์ต์ ์ ์ด ๋ช ๋ น์ด ํธ์ถ์ ๊ธฐ๋ณธ compute/region ์์ฑ ๊ฐ์ ์ฌ์ ์ํฉ๋๋ค. GW_NAME
์ ๊ฒ์ดํธ์จ์ด ์ด๋ฆ์ผ๋ก ๋ฐ๊ฟ๋๋ค.GW_IP_NAME
์ ๊ฒ์ดํธ์จ์ด์์ ์ฌ์ฉ๋๋ ์ธ๋ถ IP ์ด๋ฆ์ผ๋ก ๋ฐ๊ฟ๋๋ค.Cloud VPN ๊ฒ์ดํธ์จ์ด์ ๋ํ ๋ฆฌ์์ค๋ฅผ ๋ง๋ญ๋๋ค.
๋์ VPN ๊ฒ์ดํธ์จ์ด ๊ฐ์ฒด๋ฅผ ๋ง๋ญ๋๋ค.
gcloud compute target-vpn-gateways create GW_NAME \ --network NETWORK \ --region REGION \ --project PROJECT_ID
๋ฆฌ์ ์ธ๋ถ(์ ์ ) IP ์ฃผ์๋ฅผ ์์ฝํฉ๋๋ค.
gcloud compute addresses create GW_IP_NAME \ --region REGION \ --project PROJECT_ID
ํผ์ด VPN ๊ฒ์ดํธ์จ์ด๋ฅผ ๊ตฌ์ฑํ ๋ ์ฌ์ฉํ ์ ์๋๋ก IP ์ฃผ์๋ฅผ ์ ์ด ๋ก๋๋ค.
gcloud compute addresses describe GW_IP_NAME \ --region REGION \ --project PROJECT_ID \ --format='flattened(address)'
3๊ฐ์ ์ ๋ฌ ๊ท์น์ ๋ง๋ญ๋๋ค. ์ด๋ฌํ ๊ท์น์ Google Cloud ๊ฐ ESP(IPSec), UDP 500, UDP 4500 ํธ๋ํฝ์ ๊ฒ์ดํธ์จ์ด๋ก ์ ์กํ๋๋ก ์ง์ํฉ๋๋ค.
gcloud compute forwarding-rules create fr-GW_NAME-esp \ --load-balancing-scheme=EXTERNAL \ --ip-protocol ESP \ --address GW_IP_NAME \ --target-vpn-gateway GW_NAME \ --region REGION \ --project PROJECT_ID
gcloud compute forwarding-rules create fr-GW_NAME-udp500 \ --load-balancing-scheme=EXTERNAL \ --ip-protocol UDP \ --ports 500 \ --address GW_IP_NAME \ --target-vpn-gateway GW_NAME \ --region REGION \ --project PROJECT_ID
gcloud compute forwarding-rules create fr-GW_NAME-udp4500 \ --load-balancing-scheme=EXTERNAL \ --ip-protocol UDP \ --ports 4500 \ --address GW_IP_NAME \ --target-vpn-gateway GW_NAME \ --region REGION \ --project PROJECT_ID
์์ง ์๋ฃ ์ ์ด๋ผ๋ฉด ๋ค์ ๋ช ๋ น์ด๋ฅผ ์๋ฃํ์ฌ Cloud Router๋ฅผ ๋ง๋ญ๋๋ค. ์๋์ ์ค๋ช ๋๋ก ์ต์ ์ ๋ฐ๊ฟ๋๋ค. ๋๋ Cloud Router๊ฐ Partner Interconnect์ ์ฐ๊ฒฐ๋ Interconnect ์ฐ๊ฒฐ์ ๋ํ BGP ์ธ์ ์ ๊ด๋ฆฌํ์ง ์๋ ํ ๊ธฐ์กด Cloud Router๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค.
ROUTER_NAME
์ Cloud Router ์ด๋ฆ์ผ๋ก ๋ฐ๊ฟ๋๋ค.GOOGLE_ASN
์ ๋น๊ณต๊ฐ ASN(64512
~65534
,4200000000
~4294967294
)์ผ๋ก ๋ฐ๊ฟ๋๋ค. Google ASN์ ๋์ผํ Cloud Router์ ์๋ ๋ชจ๋ BGP ์ธ์ ์ ์ฌ์ฉ๋๋ฉฐ, ๋์ค์ ๋ณ๊ฒฝํ ์ ์์ต๋๋ค.
gcloud compute routers create ROUTER_NAME \ --asn GOOGLE_ASN \ --network NETWORK \ --region REGION \ --project PROJECT_ID
๋ค์ ์ธ๋ถ์ ๋ณด์ ๋ฐ๋ผ Cloud VPN ํฐ๋์ ๋ง๋ญ๋๋ค.
TUNNEL_NAME
์ ํฐ๋ ์ด๋ฆ์ผ๋ก ๋ฐ๊ฟ๋๋ค.ON_PREM_IP
๋ฅผ ํผ์ด VPN ๊ฒ์ดํธ์จ์ด์ ์ธ๋ถ IP ์ฃผ์๋ก ๋ฐ๊ฟ๋๋ค.IKE_VERS
๋ฅผ IKEv1์ ๊ฒฝ์ฐ1
, IKEv2์ ๊ฒฝ์ฐ2
๋ก ๋ฐ๊ฟ๋๋ค.SHARED_SECRET
์ ๊ณต์ ๋น๋ฐ๋ฒํธ๋ก ๋ฐ๊ฟ๋๋ค. Cloud VPN ํฐ๋์ ๊ณต์ ๋น๋ฐ๋ฒํธ๋ ํผ์ด VPN ๊ฒ์ดํธ์จ์ด์์ ์๋ ํฐ๋์ ๊ตฌ์ฑํ ๋ ์ฌ์ฉํ ๊ณต์ ๋น๋ฐ๋ฒํธ์ ์ผ์นํด์ผ ํฉ๋๋ค. ์ด ์ง์นจ์ ๋ฐ๋ผ ์ํธ์ ์ผ๋ก ๊ฐ๋ ฅํ ๊ณต์ ๋น๋ฐ๋ฒํธ๋ฅผ ์์ฑํ ์ ์์ต๋๋ค.ROUTER_NAME
์ Cloud VPN ํฐ๋์ ๋ํ ๊ฒฝ๋ก๋ฅผ ๊ด๋ฆฌํ๊ธฐ ์ํด ์ฌ์ฉํ๋ ค๋ Cloud Router์ ์ด๋ฆ์ผ๋ก ๋ฐ๊ฟ๋๋ค. Cloud Router๋ ํฐ๋์ ๋ง๋ค๊ธฐ ์ ์ ์กด์ฌํด์ผ ํฉ๋๋ค.gcloud compute vpn-tunnels create TUNNEL_NAME \ --peer-address ON_PREM_IP \ --ike-version IKE_VERS \ --shared-secret SHARED_SECRET \ --router ROUTER_NAME \ --target-vpn-gateway GW_NAME \ --region REGION \ --project PROJECT_ID
์ธํฐํ์ด์ค ๋ฐ BGP ํผ์ด๋ฅผ ๋ง๋ค์ด์ Cloud Router์ ๋ํ BGP ์ธ์ ์ ๊ตฌ์ฑํฉ๋๋ค. ๋ค์ ๋ฐฉ๋ฒ ์ค ํ๋๋ฅผ ์ ํํฉ๋๋ค.
Google Cloud ์์ ๋งํฌ-๋ก์ปฌ BGP IP ์ฃผ์๋ฅผ ์๋์ผ๋ก ์ ํํ๋๋ก ํ๋ ค๋ฉด ๋ค์ ๋จ๊ณ๋ฅผ ๋ฐ๋ฅด์ธ์.
Cloud Router์ ์ ์ธํฐํ์ด์ค๋ฅผ ์ถ๊ฐํฉ๋๋ค.
INTERFACE_NAME
์ ๋ฐ๊ฟ์ ์ธํฐํ์ด์ค ์ด๋ฆ์ ์ ๊ณตํฉ๋๋ค.gcloud compute routers add-interface ROUTER_NAME \ --interface-name INTERFACE_NAME \ --vpn-tunnel TUNNEL_NAME \ --region REGION \ --project PROJECT_ID
์ธํฐํ์ด์ค์ BGP ํผ์ด๋ฅผ ์ถ๊ฐํฉ๋๋ค.
PEER_NAME
์ ํผ์ด ์ด๋ฆ์ผ๋ก ๋ฐ๊พธ๊ณPEER_ASN
์ ํผ์ด VPN ๊ฒ์ดํธ์จ์ด์ ๊ตฌ์ฑ๋ ASN์ผ๋ก ๋ฐ๊ฟ๋๋ค.gcloud compute routers add-bgp-peer ROUTER_NAME \ --peer-name PEER_NAME \ --peer-asn PEER_ASN \ --interface INTERFACE_NAME \ --region REGION \ --project PROJECT_ID
ํผ์ด์ ๋ํด ์ปค์คํ ํ์ต๋ ๊ฒฝ๋ก๋ฅผ ์ ์ํ๋ ค๋ฉด
--set-custom-learned-route-ranges
ํ๋๊ทธ๋ฅผ ์ถ๊ฐํฉ๋๋ค. ๋ํ ๊ฒฝ๋ก์ ๋ํด--custom-learned-route-priority
ํ๋๊ทธ๋ฅผ ์ฌ์ฉํด์0
์์65535
์ฌ์ด(ํฌํจ)์ ์ฐ์ ์์ ๊ฐ์ ์ค์ ํ ์ ์์ต๋๋ค. ๊ฐ BGP ์ธ์ ์๋ ์ธ์ ์ ๋ํด ๊ตฌ์ฑํ ๋ชจ๋ ์ปค์คํ ํ์ต๋ ๊ฒฝ๋ก์ ์ ์ฉ๋๋ ํ๋์ ์ฐ์ ์์ ๊ฐ์ด ํฌํจ๋ ์ ์์ต๋๋ค. ์ด ๊ธฐ๋ฅ์ ๋ํ ์์ธํ ๋ด์ฉ์ ์ปค์คํ ํ์ต๋ ๊ฒฝ๋ก๋ฅผ ์ฐธ์กฐํ์ธ์.gcloud compute routers add-bgp-peer ROUTER_NAME \ --peer-name=PEER_NAME_0 \ --peer-asn=PEER_ASN \ --interface=ROUTER_INTERFACE_NAME_0 \ --region=REGION \ --set-custom-learned-route-ranges=IP_ADDRESS_RANGES \ --custom-learned-route-priority=PRIORITY
Cloud Router๊ฐ ์ ํํ BGP IP ์ฃผ์๋ฅผ ๋์ดํฉ๋๋ค. ์ ์ธํฐํ์ด์ค๋ฅผ ๊ธฐ์กด Cloud Router์ ์ถ๊ฐํ ๊ฒฝ์ฐ ์ ์ธํฐํ์ด์ค์ BGP IP ์ฃผ์๊ฐ ๊ฐ์ฅ ๋์ ์์ธ ๋ฒํธ๋ก ๋์ด๋์ด์ผ ํฉ๋๋ค. ํผ์ด IP ์ฃผ์๋ ํผ์ด VPN ๊ฒ์ดํธ์จ์ด๋ฅผ ์ค์ ํ๋ ๋ฐ ์ฌ์ฉํด์ผ ํ๋ BGP IP์ ๋๋ค.
gcloud compute routers get-status ROUTER_NAME \ --region REGION \ --project PROJECT_ID \ --format='flattened(result.bgpPeerStatus[].ipAddress, \ result.bgpPeerStatus[].peerIpAddress)'
๋จ์ผ Cloud VPN ํฐ๋(์์ธ
0
)์ ๊ด๋ฆฌํ๋ Cloud Router์ ๋ํ ์์ ์ถ๋ ฅ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. ์ฌ๊ธฐ์GOOGLE_BGP_IP
๋ Cloud Router ์ธํฐํ์ด์ค์ BGP IP๋ฅผ ๋ํ๋ด๋ฉฐ,ON_PREM_BGP_IP
๋ ํด๋น ํผ์ด์ BGP IP๋ฅผ ๋ํ๋ ๋๋ค.result.bgpPeerStatus[0].ipAddress: GOOGLE_BGP_IP result.bgpPeerStatus[0].peerIpAddress: ON_PREM_BGP_IP
Google Cloud BGP ์ธํฐํ์ด์ค ๋ฐ ํผ์ด์ ์ฐ๊ฒฐ๋ BGP IP ์ฃผ์๋ฅผ ์๋์ผ๋ก ํ ๋นํ๋ ค๋ฉด ๋ค์ ์๋ด๋ฅผ ๋ฐ๋ฅด์ธ์.
/30
๋ธ๋ก์ ๋งํฌ-๋ก์ปฌ BGP IP ์ฃผ์ ์์169.254.0.0/16
๋ฒ์ ์ค์์ ๊ฒฐ์ ํฉ๋๋ค. ๋ค์ ๋ช ๋ น์ด์์GOOGLE_BGP_IP
๋ฅผ ๋ฐ๊ฟ์ ์ด๋ฌํ BGP IP ์ฃผ์ ์ค ํ๋๋ฅผ Cloud Router์ ํ ๋นํฉ๋๋ค. ๋ค๋ฅธ BGP IP ์ฃผ์๋ ํผ์ด VPN ๊ฒ์ดํธ์จ์ด์ ์ฌ์ฉ๋ฉ๋๋ค. ์ด ์ฃผ์๋ฅผ ์ฌ์ฉํ๋๋ก ๊ธฐ๊ธฐ๋ฅผ ๊ตฌ์ฑํ๊ณ ์๋์ ๋ง์ง๋ง ๋ช ๋ น์ด์์ON_PREM_BGP_IP
๋ฅผ ๋ฐ๊ฟ์ผ ํฉ๋๋ค.Cloud Router์ ์ ์ธํฐํ์ด์ค๋ฅผ ์ถ๊ฐํฉ๋๋ค.
INTERFACE_NAME
์ ๋ฐ๊ฟ์ ์ธํฐํ์ด์ค ์ด๋ฆ์ ์ง์ ํฉ๋๋ค.gcloud compute routers add-interface ROUTER_NAME \ --interface-name INTERFACE_NAME \ --vpn-tunnel TUNNEL_NAME \ --ip-address GOOGLE_BGP_IP \ --mask-length 30 \ --region REGION \ --project PROJECT_ID
์ธํฐํ์ด์ค์ BGP ํผ์ด๋ฅผ ์ถ๊ฐํฉ๋๋ค.
PEER_NAME
์ ํผ์ด ์ด๋ฆ์ผ๋ก ๋ฐ๊พธ๊ณPEER_ASN
์ ํผ์ด VPN ๊ฒ์ดํธ์จ์ด์ ๊ตฌ์ฑ๋ ASN์ผ๋ก ๋ฐ๊ฟ๋๋ค.gcloud compute routers add-bgp-peer ROUTER_NAME \ --peer-name PEER_NAME \ --peer-asn PEER_ASN \ --interface INTERFACE_NAME \ --peer-ip-address ON_PREM_BGP_IP \ --region REGION \ --project PROJECT_ID
ํผ์ด์ ๋ํด ์ปค์คํ ํ์ต๋ ๊ฒฝ๋ก๋ฅผ ์ ์ํ๋ ค๋ฉด
--set-custom-learned-route-ranges
ํ๋๊ทธ๋ฅผ ์ถ๊ฐํฉ๋๋ค. ๋ํ ๊ฒฝ๋ก์ ๋ํด--custom-learned-route-priority
ํ๋๊ทธ๋ฅผ ์ฌ์ฉํด์0
์์65535
์ฌ์ด(ํฌํจ)์ ์ฐ์ ์์ ๊ฐ์ ์ค์ ํ ์ ์์ต๋๋ค. ๊ฐ BGP ์ธ์ ์๋ ์ธ์ ์ ๋ํด ๊ตฌ์ฑํ ๋ชจ๋ ์ปค์คํ ํ์ต๋ ๊ฒฝ๋ก์ ์ ์ฉ๋๋ ํ๋์ ์ฐ์ ์์ ๊ฐ์ด ํฌํจ๋ ์ ์์ต๋๋ค. ์ด ๊ธฐ๋ฅ์ ๋ํ ์์ธํ ๋ด์ฉ์ ์ปค์คํ ํ์ต๋ ๊ฒฝ๋ก๋ฅผ ์ฐธ์กฐํ์ธ์.gcloud compute routers add-bgp-peer ROUTER_NAME \ --peer-name=PEER_NAME_0 \ --peer-asn=PEER_ASN \ --interface=ROUTER_INTERFACE_NAME_0 \ --region=REGION \ --set-custom-learned-route-ranges=IP_ADDRESS_RANGES \ --custom-learned-route-priority=PRIORITY
- Google Cloud VM ์ธ์คํด์ค์์ ์๋ ํํฐ VPN ์ํํธ์จ์ด๋ก ํผ์ด VPN ๊ฒ์ดํธ์จ์ด ๊ตฌ์ฑ์ ์๋ฃํฉ๋๋ค. ์ฌ๊ธฐ์์ ํด๋น ํฐ๋์ ๊ตฌ์ฑํฉ๋๋ค. ๊ธฐ๋ณธ VPN์ ๋์ ๋ผ์ฐํ
๋ง ์ฌ์ฉํ์ฌ Google Cloud๋ด์์ ์คํ๋๋ ์๋ ํํฐ VPN ์ํํธ์จ์ด์ ์ฐ๊ฒฐํ ์ ์์ต๋๋ค.
- ํน์ VPN ๊ธฐ๊ธฐ์ ํด๋นํ๋ ๊ตฌ์ฑ ์ง์นจ์ ํ์ฌ VPN ์ฌ์ฉ์ ์ฐธ์กฐํ์ธ์.
- ์ผ๋ฐ ๊ตฌ์ฑ ๋งค๊ฐ๋ณ์๋ ํผ์ด VPN ๊ฒ์ดํธ์จ์ด ๊ตฌ์ฑ์ ์ฐธ์กฐํ์ธ์.
- Google Cloud ๋ฐ ํผ์ด ๋คํธ์ํฌ์์ ํ์์ ๋ฐ๋ผ ๋ฐฉํ๋ฒฝ ๊ท์น์ ๊ตฌ์ฑํฉ๋๋ค.
- VPN ํฐ๋ ๋ฐ ์ ๋ฌ ๊ท์น์ ์ํ๋ฅผ ํ์ธํฉ๋๋ค.
- ํผ์ด VPN ๊ฒ์ดํธ์จ์ด์ ํ์ฉ๋๋ IP ์ฃผ์๋ฅผ ์ ์ดํ๋ ค๋ฉด ํผ์ด VPN ๊ฒ์ดํธ์จ์ด์ IP ์ฃผ์ ์ ํ ์ฐธ์กฐํ๊ธฐ
- ๊ณ ๊ฐ์ฉ์ฑ ๋ฐ ๋์ ์ฒ๋ฆฌ๋ ์๋๋ฆฌ์ค ๋๋ ๋ค์ค ์๋ธ๋ท ์๋๋ฆฌ์ค๋ฅผ ์ฌ์ฉํ๋ ค๋ฉด ๊ณ ๊ธ ๊ตฌ์ฑ ์ฐธ์กฐํ๊ธฐ
- Cloud VPN์ ์ฌ์ฉํ ๋ ๋ฐ์ํ ์ ์๋ ์ผ๋ฐ์ ์ธ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ค๋ฉด ๋ฌธ์ ํด๊ฒฐ ์ฐธ์กฐํ๊ธฐ
์ปค์คํ VPC ๋คํธ์ํฌ ๋ฐ ์๋ธ๋ท ๋ง๋ค๊ธฐ
๊ธฐ๋ณธ VPN ๊ฒ์ดํธ์จ์ด ๋ฐ ํฐ๋์ ๋ง๋ค๊ธฐ ์ ์ ๊ธฐ๋ณธ VPN ๊ฒ์ดํธ์จ์ด๊ฐ ์๋ ๋ฆฌ์ ์ ํ๋์ Virtual Private Cloud(VPC) ๋คํธ์ํฌ์ ํ๋ ์ด์์ ์๋ธ๋ท์ ๋ง๋ญ๋๋ค.
๊ฒ์ดํธ์จ์ด ๋ฐ ํฐ๋ ๋ง๋ค๊ธฐ
์ฝ์
๊ฒ์ดํธ์จ์ด ๊ตฌ์ฑ
ํฐ๋ ๊ตฌ์ฑ
gcloud
๋ค์ ๋ช ๋ น์ด์์ ๋ค์ ํญ๋ชฉ์ ๋ฐ๊ฟ๋๋ค.
๋ค์ ๋ช ๋ น์ด ์ํ์ค๋ฅผ ์์ฑํ์ฌ Google Cloud๊ฒ์ดํธ์จ์ด๋ฅผ ๋ง๋ญ๋๋ค.
๊ตฌ์ฑ ์๋ฃํ๊ธฐ
์ Cloud VPN ๊ฒ์ดํธ์จ์ด ๋ฐ ๊ด๋ จ VPN ํฐ๋์ ์ฌ์ฉํ๋ ค๋ฉด ๋จผ์ ๋ค์ ๋จ๊ณ๋ฅผ ์๋ฃํ์ธ์.