์ด ํ์ด์ง์์๋ ์๋ต ์ ์ฑ ๊ณผ ์๋ต ์ ์ฑ ๊ท์น์ ๊ด๋ฆฌํ๋ ๋ฐฉ๋ฒ์ ๋ํ ์ ๋ณด๋ฅผ ์ ๊ณตํฉ๋๋ค.
Cloud DNS ๋น๊ณต๊ฐ ์์ญ์ ์ฌ์ฉํ๋ฉด ์๋ต ์ ์ฑ ๊ท์น์ ๋ฐ๋ผ ๋ฆฌ์กธ๋ฒ ๋์์ ์์ ํ ์ ์๋ ์๋ต ์ ์ฑ ์ ๋ง๋ค ์ ์์ต๋๋ค. ํ์ง๋ง ๋คํธ์ํฌ๋น ์๋ต ์ ์ฑ ์ ํ๋๋ง ์ฐ๊ฒฐํ ์ ์์ต๋๋ค.
๋จ์ผ ์๋ต ์ ์ฑ ๋ด์์ ๋ค์ ์ค ํ๋๋ฅผ ์คํํ ์ ์๋ ์ฌ๋ฌ ๊ท์น์ ๋ง๋ค ์ ์์ต๋๋ค.
- ํน์ ๋ฆฌ์์ค ๋ ์ฝ๋๋ฅผ ์ ๊ณตํ์ฌ ์ ํํ ์ฟผ๋ฆฌ ์ด๋ฆ(์์ผ๋ ์นด๋ ํฌํจ)์ ๋ํ ๊ฒฐ๊ณผ ๋ณ๊ฒฝํ๊ธฐ
- ์๋ต ์ ์ฑ ์ ์ฐํํ๊ณ ์ผ์นํ์ง ์๋ ์ด๋ฆ์ ์ ์ธํ๋ passthru ๋์ ํธ๋ฆฌ๊ฑฐํ๊ธฐ. ์๋ฅผ ๋ค์ด ์์ผ๋ ์นด๋ ์๋ต์ ๊ฒฝ์ฐ ๋น๊ณต๊ฐ DNS ์ฟผ๋ฆฌ ์ผ์น๊ฐ ์์ผ๋ ์นด๋๋ฅผ ๋ฐ์ํ์ง ์์ ๊ฒ์ฒ๋ผ ๊ณ์ ์ผ์น์ํฌ ์ ์์ต๋๋ค.
VPC ์๋น์ค ์ ์ด๋ฅผ ์ฌ์ฉํ์ฌ ๊ณ ๊ฐ์ด ๋น๊ณต๊ฐ VPC ๋คํธ์ํฌ์์ API ์ก์ธ์ค๋ฅผ ์ ์ดํ ์ ์๋ ๋ฐฉ๋ฒ์ ๋ํ ์์ธํ ๋ด์ฉ์ Google API ๋ฐ ์๋น์ค๋ก ๋น๊ณต๊ฐ ์ฐ๊ฒฐ ์ค์ ์ ์ฐธ์กฐํ์ธ์.
์๋ต ์ ์ฑ ๊ด๋ฆฌ
์๋ต ์ ์ฑ ๋ง๋ค๊ธฐ
์๋ต ์ ์ฑ ์ ๋ง๋ค๋ ค๋ฉด ๋ค์ ๋จ๊ณ๋ฅผ ์ํํฉ๋๋ค.
์ฝ์
Google Cloud ์ฝ์์์ Cloud DNS ์์ญ ํ์ด์ง๋ก ์ด๋ํฉ๋๋ค.
์๋ต ์ ์ฑ ์์ญ ํญ์ ํด๋ฆญํฉ๋๋ค.
์๋ต ์ ์ฑ ๋ง๋ค๊ธฐ๋ฅผ ํด๋ฆญํฉ๋๋ค.
๋ง๋ค๋ ค๋ ์๋ต ์ ์ฑ ์ ์ด๋ฆ์ ์ ๋ ฅํฉ๋๋ค(์:
myresponsepolicy
).์๋ต ์ ์ฑ ์ ์ค๋ช ์ ์ ๋ ฅํฉ๋๋ค(์:
My new response policy
).๋คํธ์ํฌ ๋๋กญ๋ค์ด์์ ์๋ต ์ ์ฑ ๊ณผ ์ฐ๊ฒฐํ ๋คํธ์ํฌ๋ฅผ ํ๋ ์ด์ ์ ํํฉ๋๋ค.
๋ง๋ค๊ธฐ๋ฅผ ํด๋ฆญํฉ๋๋ค.
์์ฑํ ๊ฐ ์๋ต ์ ์ฑ ์์ญ์ ์๋ต ์ ์ฑ ๊ท์น์ ๋ง๋ค ์ ์์ต๋๋ค. ์์ธํ ์๋ด๋ ์๋ต ์ ์ฑ ๊ท์น ๋ง๋ค๊ธฐ๋ฅผ ์ฐธ์กฐํ์ธ์.
gcloud
gcloud dns response-policies create
๋ช
๋ น์ด๋ฅผ ์คํํฉ๋๋ค.
gcloud dns response-policies create RESPONSE_POLICY_NAME \ --networks=NETWORK \ [--description=DESCRIPTION]
๋ค์์ ๋ฐ๊ฟ๋๋ค.
RESPONSE_POLICY_NAME
: ๋ง๋ค๋ ค๋ ์๋ต ์ ์ฑ ์ ์ด๋ฆ์ด๋ ID(์:myresponsepolicy
)NETWORK
: ์๋ต ์ ์ฑ ๊ณผ ์ฐ๊ฒฐํ ์ผํ๋ก ๊ตฌ๋ถ๋ ๋คํธ์ํฌ ์ด๋ฆ ๋ชฉ๋ก(์:network1, network2
)DESCRIPTION
: ์๋ต ์ ์ฑ ์ค๋ช (์:My new response policy
)
API
responsePolicies.create
๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌ POST
์์ฒญ์ ์ ์กํฉ๋๋ค.
POST https://dns.googleapis.com/dns/v1/projects/PROJECT_ID/responsePolicies
PROJECT_ID
๋ฅผ ์๋ต ์ ์ฑ
์ ๋ง๋ค ํ๋ก์ ํธ์ ์ด๋ฆ์ด๋ ID๋ก ๋ฐ๊ฟ๋๋ค.
์๋ต ์ ์ฑ ๋ณด๊ธฐ
ํน์ ํ๋ก์ ํธ์ ๋ชจ๋ ์๋ต ์ ์ฑ ๋ชฉ๋ก์ ๋ณด๊ฑฐ๋ ํน์ ์๋ต ์ ์ฑ ์ ์ค๋ช ์ ๋ณด๋ ค๋ฉด ๋ค์ ๋จ๊ณ๋ฅผ ์ํํฉ๋๋ค.
์ฝ์
Google Cloud ์ฝ์์์ Cloud DNS ์์ญ ํ์ด์ง๋ก ์ด๋ํฉ๋๋ค.
์๋ต ์ ์ฑ ์์ญ ํญ์ ํด๋ฆญํฉ๋๋ค.
์๋ต ์ ์ฑ ๋ชฉ๋ก ํ์ด์ง์ ๋ด๊ฐ ๋ง๋ ์๋ต ์ ์ฑ ์ด ๋์ด๋ฉ๋๋ค.
gcloud
ํ๋ก์ ํธ์ ๋ชจ๋ ์๋ต ์ ์ฑ ๋ชฉ๋ก์ ํ์ธํ๋ ค๋ฉด
gcloud dns response-policies list
๋ช ๋ น์ด๋ฅผ ์คํํฉ๋๋ค.gcloud dns response-policies list
--limit
ํ๋๊ทธ๋ฅผ ์ฌ์ฉํ์ฌ ์๋ต ์ ์ฑ ์๋ฅผ ์ ํํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด ์๋ต ์ ์ฑ ์ฒ์ 10๊ฐ์ ๋ชฉ๋ก์ ํ์ธํ๋ ค๋ฉด ๋ค์ ๋ช ๋ น์ด๋ฅผ ์คํํฉ๋๋ค.gcloud dns response-policies list \ --limit=10
์๋ต ์ ์ฑ ์ ์์ธํ ์ค๋ช ์ ํ์ธํ๋ ค๋ฉด
gcloud dns response-policies describe
๋ช ๋ น์ด๋ฅผ ์คํํฉ๋๋ค.gcloud dns response-policies describe RESPONSE_POLICY_NAME
RESPONSE_POLICY_NAME
์ ์ค๋ช ์ ๋ณด๋ ค๋ ์๋ต ์ ์ฑ ์ ์ด๋ฆ์ด๋ ID๋ก ๋ฐ๊ฟ๋๋ค.
API
์๋ต ์ ์ฑ
์ ์์ธํ ์ค๋ช
์ ํ์ธํ๋ ค๋ฉด responsePolicies.get
๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌ GET
์์ฒญ์ ๋ณด๋
๋๋ค.
GET https://dns.googleapis.com/dns/v1/projects/PROJECT_ID/responsePolicies/RESPONSE_POLICY_NAME
๋ค์์ ๋ฐ๊ฟ๋๋ค.
PROJECT_ID
: ์๋ต ์ ์ฑ ์ ๋ง๋ ํ๋ก์ ํธ์ IDRESPONSE_POLICY_NAME
: ์ค๋ช ์ ํ์ธํ๋ ค๋ ์๋ต ์ ์ฑ ์ ์ด๋ฆ์ด๋ ID(์:myresponsepolicy
)
์๋ต ์ ์ฑ ์ ๋ฐ์ดํธ
์๋ต ์ ์ฑ ์ ์ ๋ฐ์ดํธํ๋ ค๋ฉด ๋ค์ ๋จ๊ณ๋ฅผ ์ํํฉ๋๋ค.
์ฝ์
Google Cloud ์ฝ์์์ Cloud DNS ์์ญ ํ์ด์ง๋ก ์ด๋ํฉ๋๋ค.
์์ ํ๋ ค๋ ์๋ต ์ ์ฑ ์ ํด๋ฆญํฉ๋๋ค. ์๋ต ์ ์ฑ ์ด๋ฆ ํ์์ more_vert๋๋ณด๊ธฐ๋ฅผ ํด๋ฆญํ ์๋ ์์ต๋๋ค.
์๋ต ์ ์ฑ ์์ ์ ํด๋ฆญํฉ๋๋ค.
ํ์ ์ ๋ฐ์ดํธ๋ฅผ ์ํํฉ๋๋ค.
์ ์ฅ์ ํด๋ฆญํฉ๋๋ค.
gcloud
gcloud dns response-policies update
๋ช
๋ น์ด๋ฅผ ์คํํฉ๋๋ค.
gcloud dns response-policies update RESPONSE_POLICY_NAME
RESPONSE_POLICY_NAME
์ ์
๋ฐ์ดํธํ ์๋ต ์ ์ฑ
์ ์ด๋ฆ์ด๋ ID(์: myresponsepolicy
)๋ก ๋ฐ๊ฟ๋๋ค.
์
๋ฐ์ดํธ๋ ํ๋์ create
๋ช
๋ น์ด์ ๋์ผํ ๋ฌธ๋ฒ์ ์ฌ์ฉํฉ๋๋ค.
API
์๋ต ์ ์ฑ ์ ๋ถ๋ถ ์ ๋ฐ์ดํธ๋ฅผ ์ ์ฉํ๋ ค๋ฉด
responsePolicies.patch
๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌPATCH
์์ฒญ์ ์ ์กํฉ๋๋ค.PATCH https://dns.googleapis.com/dns/v1/projects/PROJECT_ID/responsePolicies/RESPONSE_POLICY_NAME
๋ค์์ ๋ฐ๊ฟ๋๋ค.
PROJECT_ID
: ์๋ต ์ ์ฑ ์ ๋ง๋ ํ๋ก์ ํธ์ IDRESPONSE_POLICY_NAME
: ์ ๋ฐ์ดํธํ ์๋ต ์ ์ฑ ์ ์ด๋ฆ์ด๋ ID(์:myresponsepolicy
)
์๋ต ์ ์ฑ ์ ์ ๋ฐ์ดํธํ๋ ค๋ฉด
responsePolicies.update
๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌUPDATE
์์ฒญ์ ์ ์กํฉ๋๋ค.UPDATE https://dns.googleapis.com/dns/v1/projects/PROJECT_ID/responsePolicies/RESPONSE_POLICY_NAME
๋ค์์ ๋ฐ๊ฟ๋๋ค.
PROJECT_ID
: ์๋ต ์ ์ฑ ์ ๋ง๋ ํ๋ก์ ํธ์ IDRESPONSE_POLICY_NAME
: ์ ๋ฐ์ดํธํ ์๋ต ์ ์ฑ ์ ์ด๋ฆ์ด๋ ID(์:myresponsepolicy
)
์๋ต ์ ์ฑ ์ญ์
์๋ต ์ ์ฑ ์ ์ญ์ ํ๋ ค๋ฉด ๋ค์ ๋จ๊ณ๋ฅผ ์ํํฉ๋๋ค.
์ฝ์
Google Cloud ์ฝ์์์ Cloud DNS ์์ญ ํ์ด์ง๋ก ์ด๋ํฉ๋๋ค.
์๋ต ์ ์ฑ ์ด๋ฆ ํ์์ more_vert๋๋ณด๊ธฐ๋ฅผ ํด๋ฆญํฉ๋๋ค.
์ญ์ ๋ฅผ ํด๋ฆญํฉ๋๋ค.
gcloud
gcloud dns response-policies delete
๋ช
๋ น์ด๋ฅผ ์คํํฉ๋๋ค.
gcloud dns response-policies delete RESPONSE_POLICY_NAME
RESPONSE_POLICY_NAME
์ ์ญ์ ํ ์๋ต ์ ์ฑ
์ ์ด๋ฆ์ด๋ ID๋ก ๋ฐ๊ฟ๋๋ค.
API
responsePolicies.delete
๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌ DELETE
์์ฒญ์ ์ ์กํฉ๋๋ค.
DELETE https://dns.googleapis.com/dns/v1/projects/PROJECT_ID/responsePolicies/RESPONSE_POLICY_NAME
๋ค์์ ๋ฐ๊ฟ๋๋ค.
PROJECT_ID
: ์๋ต ์ ์ฑ ์ ๋ง๋ ํ๋ก์ ํธ์ IDRESPONSE_POLICY_NAME
: ์ญ์ ํ ์๋ต ์ ์ฑ ์ ์ด๋ฆ์ด๋ ID(์:myresponsepolicy
)
์๋ต ์ ์ฑ ๊ท์น ๊ด๋ฆฌ
์ฌ์ดํธ์ DNS ์๋ต ์ ์ฑ ์ DNS ๋ฆฌ์กธ๋ฒ๊ฐ ์กฐํ ์ค์ ํ์ธํ๋ ๊ท์น์ผ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค. ์๋ต ์ ์ฑ ์ ๊ท์น์ด ์์ ๋๋ ์ฟผ๋ฆฌ์ ์ํฅ์ ๋ฏธ์น๋ ๊ฒฝ์ฐ์ ์ฒ๋ฆฌ๋ฉ๋๋ค. ๊ทธ๋ฌ์ง ์์ผ๋ฉด ์กฐํ๊ฐ ์ ์์ ์ผ๋ก ์งํ๋ฉ๋๋ค.
์๋ต ์ ์ฑ ๊ท์น ๋ง๋ค๊ธฐ
์๋ต ์ ์ฑ ๊ท์น์ ๋ง๋ค๋ ค๋ฉด ๋ค์ ๋จ๊ณ๋ฅผ ์ํํฉ๋๋ค.
์ฝ์
Google Cloud ์ฝ์์์ Cloud DNS ์์ญ ํ์ด์ง๋ก ์ด๋ํฉ๋๋ค.
์๋ต ์ ์ฑ ์์ญ ํญ์ ํด๋ฆญํฉ๋๋ค.
์๋ต ์ ์ฑ ์์ญ ๋ชฉ๋ก์์ ๊ท์น์ ์ญ์ ํ๋ ค๋ ์๋ต ์ ์ฑ ์์ญ์ ํด๋ฆญํฉ๋๋ค.
์๋ต ์ ์ฑ ๊ท์น ๋ง๋ค๊ธฐ๋ฅผ ํด๋ฆญํฉ๋๋ค.
๋ง๋ค๋ ค๋ ์๋ต ์ ์ฑ ๊ท์น์ ์ด๋ฆ์ ์ ๋ ฅํฉ๋๋ค(์:
myresponsepolicyrule
).์ ํ๊ธฐ ๋๋กญ๋ค์ด์์ ์ด ๊ท์น์ ์ ์ฉํ ์ ํ๊ธฐ ์ ํ์ ์ ํํฉ๋๋ค.
www.googleapis.com
๊ณผ ๊ฐ์ด ๊ท์น์ ์ ์ฉํ DNS ์ด๋ฆ(์์ผ๋ ์นด๋ ๋๋ ์ถ์ถ)์ ์ ๋ ฅํฉ๋๋ค.์๋ต ์ ์ฑ ๊ท์น์ ๋ํ ์์ ์ ์ ํํฉ๋๋ค. ์๋ฅผ ๋ค์ด ์๋ต ์ ์ฑ ์ ๋์์ ๋ณ๊ฒฝํ๋ ค๋ฉด ๋์์ ์ ํํฉ๋๋ค. ๊ทธ๋ ์ง ์์ผ๋ฉด ๋ก์ปฌ ๋ฐ์ดํฐ๋ฅผ ์ ํํฉ๋๋ค.
๋์์ ์ ํํ ๊ฒฝ์ฐ ๋๋กญ๋ค์ด์์ ๊ท์น ๋์์ ์ ํํฉ๋๋ค.
๋ก์ปฌ ๋ฐ์ดํฐ๋ฅผ ์ ํํ ๊ฒฝ์ฐ ์ ๋ฆฌ์์ค ๋ ์ฝ๋ ์งํฉ์ ์ถ๊ฐํด์ผ ํฉ๋๋ค. ์ ๋ฆฌ์์ค ๋ ์ฝ๋ ์งํฉ์ ์ถ๊ฐํ๋ ๋ฐฉ๋ฒ์ ๋ฆฌ์์ค ๋ ์ฝ๋ ์งํฉ ๋ง๋ค๊ธฐ๋ฅผ ์ฐธ์กฐํ์ธ์.
๋ง๋ค๊ธฐ๋ฅผ ํด๋ฆญํฉ๋๋ค.
gcloud
์ ํํ ์ฟผ๋ฆฌ ์ด๋ฆ์ ๋์์ ๋ณ๊ฒฝํ๋ ค๋ฉด
gcloud dns response-policies rules create
๋ช ๋ น์ด๋ฅผ ์คํํ๊ณ--type
ํ๋๊ทธ๋ฅผ ์ง์ ํฉ๋๋ค.gcloud dns response-policies rules create RESPONSE_POLICY_RULE_NAME \ --response-policy=RESPONSE_POLICY_NAME \ --dns-name=DNS_NAME \ --local-data=name="DNS_NAME.",type="RRTYPE",ttl=TTL,rrdatas="RRDATA"
๋ค์์ ๋ฐ๊ฟ๋๋ค.
RESPONSE_POLICY_RULE_NAME
: ๋ง๋ค๋ ค๋ ์๋ต ์ ์ฑ ๊ท์น์ ์ด๋ฆ(์:myresponsepolicyrule
)RESPONSE_POLICY_NAME
: ์๋ต ์ ์ฑ ์ด๋ฆ(์:myresponsepolicy
)DNS_NAME
: DNS ๋๋ ๋๋ฉ์ธ ์ด๋ฆ(์:www.googleapis.com
)TTL
: ์๋ต ์ ์ฑ ์๋ช (์:21600
)RRTYPE
: ๋ฆฌ์์ค ๋ ์ฝ๋ ์ ํ(์:A
)RRDATA
: ๋ฆฌ์์ค ๋ ์ฝ๋ ๋ฐ์ดํฐ(์:1.2.3.4
) ์ฌ๋ฌ ํญ๋ชฉ์|
๋ก ๊ตฌ๋ถํฉ๋๋ค(์:1.2.3.4|5.6.7.8
).
์ฐํ ๊ท์น์ ๋ง๋ค๋ ค๋ฉด
gcloud dns response-policies rules create
๋ช ๋ น์ด๋ฅผ ์คํํ๊ณ--behavior
ํ๋๊ทธ๋ฅผbypassResponsePolicy
๋ก ์ค์ ํฉ๋๋ค.gcloud dns response-policies rules create RESPONSE_POLICY_RULE_NAME \ --response-policy=RESPONSE_POLICY_NAME \ --dns-name=DNS_NAME \ --behavior=bypassResponsePolicy
๋ค์์ ๋ฐ๊ฟ๋๋ค.
RESPONSE_POLICY_RULE_NAME
: ๋ง๋ค๋ ค๋ ์๋ต ์ ์ฑ ๊ท์น์ ์ด๋ฆ(์:myresponsepolicyrule
)RESPONSE_POLICY_NAME
: ์๋ต ์ ์ฑ ์ด๋ฆ(์:myresponsepolicy
)DNS_NAME
: DNS ๋๋ ๋๋ฉ์ธ ์ด๋ฆ(์:www.googleapis.com
)
API
์ ์๋ต ์ ์ฑ ๊ท์น์ ๋ง๋ค๋ ค๋ฉด
responsePolicyRules.create
๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌPOST
์์ฒญ์ ๋ณด๋ ๋๋ค.POST https://dns.googleapis.com/dns/v1/projects/PROJECT_ID/responsePolicies/RESPONSE_POLICY_NAME/rules
๋ค์์ ๋ฐ๊ฟ๋๋ค.
PROJECT_ID
: ์๋ต ์ ์ฑ ์ ๋ง๋ ํ๋ก์ ํธ์ IDRESPONSE_POLICY_NAME
: ๊ท์น์ ๋ง๋ค ์๋ต ์ ์ฑ ์ ์ด๋ฆ์ด๋ ID(์:myresponsepolicy
)
์๋ต ์ ์ฑ ๊ท์น ๋ณด๊ธฐ
ํน์ ์๋ต ์ ์ฑ ์ ๋ชจ๋ ์๋ต ์ ์ฑ ๊ท์น ๋ชฉ๋ก์ ๋ณด๊ฑฐ๋ ํน์ ์๋ต ์ ์ฑ ๊ท์น์ ์ค๋ช ์ ๋ณด๋ ค๋ฉด ๋ค์ ๋จ๊ณ๋ฅผ ๋ฐ๋ฅด์ธ์.
์ฝ์
Google Cloud ์ฝ์์์ Cloud DNS ์์ญ ํ์ด์ง๋ก ์ด๋ํฉ๋๋ค.
์๋ต ์ ์ฑ ์์ญ ํญ์์ ์ฐ๊ฒฐ๋ ๊ท์น์ ํ์ธํ ์๋ต ์ ์ฑ ์ด๋ฆ์ ํด๋ฆญํฉ๋๋ค. ์๋ต ์ ์ฑ ์ธ๋ถ์ ๋ณด ํ์ด์ง์ ์๋ต ์ ์ฑ ๊ณผ ์ฐ๊ฒฐ๋ ๊ท์น์ด ๋์ด๋ฉ๋๋ค.
ํน์ ์๋ต ์ ์ฑ ๊ท์น์ ์ธ๋ถ์ ๋ณด๋ฅผ ๋ณด๋ ค๋ฉด ๊ท์น ์ด๋ฆ์ ํด๋ฆญํฉ๋๋ค. ์๋ต ์ ์ฑ ๊ท์น ์ด๋ฆ ํ์์ more_vert๋๋ณด๊ธฐ๋ฅผ ํด๋ฆญํ ์๋ ์์ต๋๋ค.
gcloud
์๋ต ์ ์ฑ ๋ด์์ Cloud DNS ์๋ต ์ ์ฑ ๊ท์น ๋ชฉ๋ก์ ๋ณด๋ ค๋ฉด
gcloud dns response-policies rules list
๋ช ๋ น์ด๋ฅผ ์คํํฉ๋๋ค.gcloud dns response-policies rules list RESPONSE_POLICY_NAME
RESPONSE_POLICY_NAME
์ ์๋ต ์ ์ฑ ์ด๋ฆ(์:myresponsepolicy
)์ผ๋ก ๋ฐ๊ฟ๋๋ค.ํน์ ์๋ต ์ ์ฑ ๊ท์น์ ๋ํ ์ธ๋ถ์ ๋ณด๋ฅผ ๋ณด๋ ค๋ฉด
gcloud dns response-policies rules describe
๋ช ๋ น์ด๋ฅผ ์คํํฉ๋๋ค.gcloud dns response-policies rules describe RESPONSE_POLICY_RULE_NAME \ --response-policy=RESPONSE_POLICY_NAME
๋ค์์ ๋ฐ๊ฟ๋๋ค.
RESPONSE_POLICY_RULE_NAME
: ๋ง๋ค๋ ค๋ ์๋ต ์ ์ฑ ๊ท์น์ ์ด๋ฆ(์:myresponsepolicyrule
)RESPONSE_POLICY_NAME
: ์๋ต ์ ์ฑ ์ด๋ฆ(์:myresponsepolicy
)
API
์๋ต ์ ์ฑ
์์ ๊ท์น์ ์์ธํ ์ค๋ช
์ ํ์ธํ๋ ค๋ฉด responsePolicyRules.get
๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌ GET
์์ฒญ์ ์ ์กํฉ๋๋ค.
GET https://dns.googleapis.com/dns/v1/projects/PROJECT_ID/responsePolicies/RESPONSE_POLICY_NAME/rules/RESPONSE_POLICY_RULE
๋ค์์ ๋ฐ๊ฟ๋๋ค.
PROJECT_ID
: ์๋ต ์ ์ฑ ์ ๋ง๋ ํ๋ก์ ํธ์ IDRESPONSE_POLICY_NAME
: ๊ท์น์ ๋ง๋ค ์๋ต ์ ์ฑ ์ ์ด๋ฆ์ด๋ ID(์:myresponsepolicy
)RESPONSE_POLICY_RULE
: ์ธ๋ถ์ ๋ณด๋ฅผ ํ์ธํ ์๋ต ์ ์ฑ ๊ท์น
์๋ต ์ ์ฑ ๊ท์น ์ ๋ฐ์ดํธ
์๋ต ์ ์ฑ ๊ท์น์ ์์ ํ๊ฑฐ๋ ์ ๋ฐ์ดํธํ๋ ค๋ฉด ๋ค์ ๋จ๊ณ๋ฅผ ๋ฐ๋ฅด์ธ์.
์ฝ์
Google Cloud ์ฝ์์์ Cloud DNS ์์ญ ํ์ด์ง๋ก ์ด๋ํฉ๋๋ค.
๊ท์น์ ์์ ํ ์๋ต ์ ์ฑ ์ด๋ฆ์ ํด๋ฆญํฉ๋๋ค.
์์ ํ ์๋ต ์ ์ฑ ๊ท์น์ ์ด๋ฆ์ ํด๋ฆญํฉ๋๋ค.
์๋ต ์ ์ฑ ๊ท์น ์ธ๋ถ์ ๋ณด ํ์ด์ง์์ ์์ ํ ๊ท์น ์ด๋ฆ์ ํด๋ฆญํฉ๋๋ค.
ํ์ ์ ๋ฐ์ดํธ๋ฅผ ์ํํฉ๋๋ค.
์ ์ฅ์ ํด๋ฆญํฉ๋๋ค.
gcloud
gcloud dns response-policies rules update
๋ช
๋ น์ด๋ฅผ ์คํํฉ๋๋ค.
gcloud dns response-policies rules update RESPONSE_POLICY_RULE_NAME \ --response-policy=RESPONSE_POLICY_NAME
๋ค์์ ๋ฐ๊ฟ๋๋ค.
RESPONSE_POLICY_RULE_NAME
: ๋ง๋ค๋ ค๋ ์๋ต ์ ์ฑ ๊ท์น์ ์ด๋ฆ(์:myresponsepolicyrule
)RESPONSE_POLICY_NAME
: ์๋ต ์ ์ฑ ์ด๋ฆ(์:myresponsepolicy
)์ ๋ฐ์ดํธ๋ ํ๋์
create
๋ช ๋ น์ด์ ๋์ผํ ๋ฌธ๋ฒ์ ์ฌ์ฉํฉ๋๋ค.
API
์๋ต ์ ์ฑ ๊ท์น์ ๋ถ๋ถ ์ ๋ฐ์ดํธ๋ฅผ ์ ์ฉํ๋ ค๋ฉด
responsePolicyRules.patch
๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌPATCH
์์ฒญ์ ์ ์กํฉ๋๋ค.PATCH https://dns.googleapis.com/dns/v1/projects/PROJECT_ID/responsePolicies/RESPONSE_POLICY_NAME/rules/RESPONSE_POLICY_RULE
๋ค์์ ๋ฐ๊ฟ๋๋ค.
PROJECT_ID
: ์๋ต ์ ์ฑ ์ ๋ง๋ ํ๋ก์ ํธ์ IDRESPONSE_POLICY_NAME
: ๊ท์น์ ์ ๋ฐ์ดํธํ ์๋ต ์ ์ฑ ์ ์ด๋ฆ์ด๋ ID(์:myresponsepolicy
)RESPONSE_POLICY_RULE
: ์ ๋ฐ์ดํธํ ์๋ต ์ ์ฑ ๊ท์น
์๋ต ์ ์ฑ ๊ท์น์ ์ ๋ฐ์ดํธํ๋ ค๋ฉด
responsePolicyRules.update
๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌUPDATE
์์ฒญ์ ์ ์กํฉ๋๋ค.UPDATE https://dns.googleapis.com/dns/v1/projects/PROJECT_ID/responsePolicies/RESPONSE_POLICY_NAME/rules/RESPONSE_POLICY_RULE
๋ค์์ ๋ฐ๊ฟ๋๋ค.
PROJECT_ID
: ์๋ต ์ ์ฑ ์ ๋ง๋ ํ๋ก์ ํธ์ IDRESPONSE_POLICY_NAME
: ๊ท์น์ ์ ๋ฐ์ดํธํ ์๋ต ์ ์ฑ ์ ์ด๋ฆ์ด๋ ID(์:myresponsepolicy
)RESPONSE_POLICY_RULE
: ์ ๋ฐ์ดํธํ ์๋ต ์ ์ฑ ๊ท์น
์๋ต ์ ์ฑ ๊ท์น ์ญ์
์๋ต ์ ์ฑ ๊ท์น์ ์ญ์ ํ๋ ค๋ฉด ๋ค์ ๋จ๊ณ๋ฅผ ์ํํฉ๋๋ค.
์ฝ์
Google Cloud ์ฝ์์์ Cloud DNS ์์ญ ํ์ด์ง๋ก ์ด๋ํฉ๋๋ค.
๊ท์น์ ์์ ํ ์๋ต ์ ์ฑ ์ด๋ฆ์ ํด๋ฆญํฉ๋๋ค.
์ญ์ ํ ์๋ต ์ ์ฑ ๊ท์น์ ์ด๋ฆ์ ํด๋ฆญํฉ๋๋ค.
์๋ต ์ ์ฑ ๊ท์น ์ธ๋ถ์ ๋ณด ํ์ด์ง์์ ์๋ต ์ ์ฑ ๊ท์น ์ด๋ฆ์ ํ์์ more_vert๋๋ณด๊ธฐ๋ฅผ ํด๋ฆญํฉ๋๋ค.
์ญ์ ๋ฅผ ํด๋ฆญํฉ๋๋ค. ์ญ์ ํ ๊ท์น์ ํด๋ฆญํด๋ ๋ฉ๋๋ค. ์๋ต ์ ์ฑ ๊ท์น ์ธ๋ถ์ ๋ณด ํ์ด์ง์์ ์๋ต ์ ์ฑ ๊ท์น ์ญ์ ๋ฅผ ํด๋ฆญํฉ๋๋ค.
gcloud
Cloud DNS ์๋ต ์ ์ฑ ๊ท์น์ ์ญ์ ํ๋ ค๋ฉด
gcloud dns response-policies rules delete
๋ช ๋ น์ด๋ฅผ ์คํํฉ๋๋ค.gcloud dns response-policies rules delete RESPONSE_POLICY_RULE_NAME \ --response-policy=RESPONSE_POLICY_NAME
๋ค์์ ๋ฐ๊ฟ๋๋ค.
RESPONSE_POLICY_RULE_NAME
: ๋ง๋ค๋ ค๋ ์๋ต ์ ์ฑ ๊ท์น์ ์ด๋ฆ(์:myresponsepolicyrule
)RESPONSE_POLICY_NAME
: ์๋ต ์ ์ฑ ์ด๋ฆ(์:myresponsepolicy
)
API
์๋ต ์ ์ฑ ๊ท์น์ ์ญ์ ํ๋ ค๋ฉด
responsePolicyRules.delete
๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌDELETE
์์ฒญ์ ์ ์กํฉ๋๋ค.DELETE https://dns.googleapis.com/dns/v1/projects/PROJECT_ID/responsePolicies/RESPONSE_POLICY_NAME/rules/RESPONSE_POLICY_RULE
๋ค์์ ๋ฐ๊ฟ๋๋ค.
PROJECT_ID
: ์๋ต ์ ์ฑ ์ ๋ง๋ ํ๋ก์ ํธ์ IDRESPONSE_POLICY_NAME
: ๊ท์น์ ์ญ์ ํ ์๋ต ์ ์ฑ ์ ์ด๋ฆ์ด๋ ID(์:myresponsepolicy
)RESPONSE_POLICY_RULE
: ์ญ์ ํ ์๋ต ์ ์ฑ ๊ท์น
์ฌ์ฉ ์ฌ๋ก
์ด ์น์ ์์๋ ์๋ต ์ ์ฑ ๊ท์น์ ๊ตฌ์ฑํ๋ ์ฌ์ฉ ์ฌ๋ก ์์๋ฅผ ์ ๊ณตํฉ๋๋ค.
ํน์ ์ด๋ฆ์ ์ ํ๋ VIP ์ฃผ์๋ก ์ ๋ฌ
๊ฐ ์์ญ์ ๋ก์ปฌ CNAME ๋ฐ์ดํฐ๊ฐ ์๋ ์๋ต ์ ์ฑ ์ ๊ตฌ์ฑํ์ฌ Google API ์์ฒญ์ ์ ํ๋ Google API๋ก ๋ณํํ ์ ์์ต๋๋ค. ์ง์ ๋์ง ์์ ์ด๋ฆ์ ์ผ๋ฐ DNS๋ฅผ ํตํด ๊ณ์ ํ์ธ๋ฉ๋๋ค.
์๋ฅผ ๋ค์ด ์์ญ์ ๋ก์ปฌ CNAME ๋ฐ์ดํฐ๊ฐ ์๋ pubsub.googleapis.com
์ ์๋ต ์ ์ฑ
์ ๋ง๋ค์ด Google API ์์ฒญ์ restricted.googleapis.com
์ผ๋ก ๋ณํํ ์ ์์ต๋๋ค. ๊ทธ๋๊น์ง๋ ์ง์ ๋์ง ์์ www.googleapis.com
์ด ๊ณ์ ์ผ๋ฐ DNS๋ฅผ ์ฌ์ฉํ์ฌ ํ์ธ๋ฉ๋๋ค.
๋ค์ ๊ตฌ์ฑ ์์์์๋ ์ ์ฑ ์ ๋ง๋ค๊ณ ํน์ VPC ๋คํธ์ํฌ์ ์ ์ฉํฉ๋๋ค.
gcloud
์๋ต ์ ์ฑ ์ ๋ง๋ค๋ ค๋ฉด
gcloud dns response-policies create
๋ช ๋ น์ด๋ฅผ ์คํํฉ๋๋ค.gcloud dns response-policies create RESPONSE_POLICY_NAME \ --networks=NETWORK \ --description=DESCRIPTION
๋ค์์ ๋ฐ๊ฟ๋๋ค.
RESPONSE_POLICY_NAME
: ๋ง๋ค๋ ค๋ ์๋ต ์ ์ฑ ์ ์ด๋ฆ์ด๋ ID(์:myresponsepolicy
)NETWORK
: ์๋ต ์ ์ฑ ๊ณผ ์ฐ๊ฒฐํ ์ผํ๋ก ๊ตฌ๋ถ๋ ๋คํธ์ํฌ ์ด๋ฆ ๋ชฉ๋ก(์:network1,network2
)DESCRIPTION
: ์๋ต ์ ์ฑ ์ค๋ช (์:My new response policy
)
restricted.googleapis.com
์ IPv4 ์ฃผ์ ๋ฒ์๋ง ์ฌ์ฉํ๋ ๊ฒฝ์ฐ IPv4 ์ฃผ์ ๋ฒ์์ ๋ ์ฝ๋ ์ธํธ๊ฐ ํฌํจ๋ ์ ์ฑ ์ ๊ท์น์ ์ถ๊ฐํฉ๋๋ค.gcloud dns response-policies rules create
๋ช ๋ น์ด๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.gcloud dns response-policies rules create RESPONSE_POLICY_RULE_NAME \ --response-policy=RESPONSE_POLICY_NAME \ --dns-name=DNS_NAME. \ --local-data=name="DNS_NAME.",type="A",ttl=300,rrdatas="199.36.153.4|199.36.153.5|199.36.153.6|199.36.153.7"
๋ค์์ ๋ฐ๊ฟ๋๋ค.
RESPONSE_POLICY_RULE_NAME
: ๋ง๋ค๋ ค๋ ์๋ต ์ ์ฑ ๊ท์น์ ์ด๋ฆ(์:myresponsepolicyrule
)RESPONSE_POLICY_NAME
: ์๋ต ์ ์ฑ ์ด๋ฆ(์:myresponsepolicy
)DNS_NAME
: ๊ท์น์ ๋ง๋ค DNS ์ด๋ฆ(์:pubsub.googleapis.com.
(ํํ ์ ์ฐธ์กฐ))
restricted.googleapis.com
์ IPv4 ๋ฐ IPv6 ์ฃผ์ ๋ฒ์๋ฅผ ๋ชจ๋ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ IPv4 ๋ฐ IPv6 ์ฃผ์ ๋ฒ์์ ๋ ์ฝ๋ ์ธํธ๊ฐ ๋ชจ๋ ํฌํจ๋ ์ ์ฑ ์ ๊ท์น์ ์ถ๊ฐํฉ๋๋ค.gcloud dns response-policies rules create RESPONSE_POLICY_RULE_NAME \ --response-policy=RESPONSE_POLICY_NAME \ --dns-name=DNS_NAME. \ --local-data=name="DNS_NAME.",type="A",ttl=300,rrdatas="199.36.153.4|199.36.153.5|199.36.153.6|199.36.153.7" \ --local-data=name="DNS_NAME.",type="AAAA",ttl=300,rrdatas="2600:2d00:0002:1000::"
API
URL๋ก ์๋ต ์ ์ฑ ์ ๋ง๋ญ๋๋ค.
{ kind: "dns#responsePolicy", response_policy_name: RESPONSE_POLICY_NAME, description: RESPONSE_POLICY_DESCRIPTION, networks: [ { network_url: URL_TO_NETWORK; } ] }
๋ค์์ ๋ฐ๊ฟ๋๋ค.
RESPONSE_POLICY_NAME
: ์๋ต ์ ์ฑ ์ด๋ฆRESPONSE_POLICY_DESCRIPTION
: ์๋ต ์ ์ฑ ์ค๋ชURL_TO_NETWORK
: ์๋ต ์ ์ฑ ์ ๋ง๋๋ URL
restricted.googleapis.com
์ IPv4 ์ฃผ์ ๋ฒ์๋ง ์ฌ์ฉํ๋ ๊ฒฝ์ฐ IPv4 ์ฃผ์ ๋ฒ์์ ๋ ์ฝ๋ ์ธํธ๊ฐ ํฌํจ๋ ์ ์ฑ ์ ๊ท์น์ ์ถ๊ฐํฉ๋๋ค.{ kind: "dns#responsePolicyRules", rule_name: RULE_NAME, dns_name: DNS_NAME, local_data: [ { name: "DNS_NAME.", type: "A", ttl: 300, rrdata: ["199.36.153.4", "199.36.153.5", "199.36.153.6", "199.36.153.7"] } ] }
๋ค์์ ๋ฐ๊ฟ๋๋ค.
RULE_NAME
: ๋ง๋ค ๊ท์น์ ์ด๋ฆ(์:pubsub
)DNS_NAME
: ๊ท์น์ ๋ง๋ค DNS ์ด๋ฆ(์:pubsub.googleapis.com.
(ํํ ์ ์ฐธ์กฐ))
restricted.googleapis.com
์ IPv4 ๋ฐ IPv6 ์ฃผ์ ๋ฒ์๋ฅผ ๋ชจ๋ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ IPv4 ๋ฐ IPv6 ์ฃผ์ ๋ฒ์์ ๋ ์ฝ๋ ์ธํธ๊ฐ ๋ชจ๋ ํฌํจ๋ ์ ์ฑ ์ ๊ท์น์ ์ถ๊ฐํฉ๋๋ค.{ kind: "dns#responsePolicyRules", rule_name: RULE_NAME, dns_name: DNS_NAME, local_data: [ { name: "DNS_NAME.", type: "A", ttl: 300, rrdata: [""199.36.153.4", "199.36.153.5", "199.36.153.6", "199.36.153.7""] } ], local_data: [ { name: "DNS_NAME.", type: "AAAA", ttl: 300, rrdata: ["2600:2d00:0002:1000::"] } ] }
๋ค์์ ๋ฐ๊ฟ๋๋ค.
RULE_NAME
: ๋ง๋ค ๊ท์น์ ์ด๋ฆ(์:pubsub
)DNS_NAME
: ๊ท์น์ ๋ง๋ค DNS ์ด๋ฆ(์:pubsub.googleapis.com.
(ํํ ์ ์ฐธ์กฐ))
์ ํ๋ VIP ์ฃผ์๋ฅผ ์ ์ธํ ๋ชจ๋ ์ด๋ฆ ์ ๋ฌ
์ ์ฒด ๋๋ฉ์ธ ๋๋ ๋ํ IP ์ฃผ์ ๋ธ๋ก์ ๋์์ผ๋ก ํ ์ ์ฑ ๊ท์น์์ ์ผ๋ถ DNS ์๋ต์ ์ ์ธํ๋ ๊ท์น์ ์ค์ ํ ์ ์์ต๋๋ค. ์ด ๊ฐ๋ ์ ํจ์ค์ค๋ฃจ ๋์์ด๋ผ๊ณ ํฉ๋๋ค. ํจ์ค์ค๋ฃจ ๋์์ ์ฌ์ฉํ๋ฉด ์๋น์ค ์ ์ด๋ฅผ ์ง์ํ์ง ์๋ ์ด๋ฆ์ด ์์ผ๋ ์นด๋ ์ด๋ฆ ๋ค์ ํ์๋๋๋ก ํ์ฉํ ์ ์์ต๋๋ค.
*.googleapis.com
์์์์ ์์ผ๋ ์นด๋ ์ด๋ฆ ๋ค์ www.googleapis.com
์ด ํ์๋๋๋ก ํ์ฉํ ์ ์์ต๋๋ค. www
์ ๋ํ ์ผ์น๊ฒ์์ด ์์ผ๋ ์นด๋ *
๋ณด๋ค ์ฐ์ ์ ์ฉ๋ฉ๋๋ค.
๋ค์ ๊ตฌ์ฑ ์์์์๋ ํน์ ์ด๋ฆ์ ์ ์ฑ
์ ๋ง๋ค๊ณ ํน์ VPC ๋คํธ์ํฌ์ ์ ์ฉํฉ๋๋ค. ์ด ๊ท์น์ ์ฌ์ฉํ๋ฉด www.googleapis.com
์ด ์์ผ๋ ์นด๋ *.googleapis.com
์ ์ฐํํ ์ ์์ต๋๋ค.
gcloud
์๋ต ์ ์ฑ ์ ๋ง๋ค๋ ค๋ฉด
gcloud dns response-policies create
๋ช ๋ น์ด๋ฅผ ์คํํฉ๋๋ค.gcloud dns response-policies create RESPONSE_POLICY_NAME \ --networks=NETWORK \ --description=DESCRIPTION
๋ค์์ ๋ฐ๊ฟ๋๋ค.
RESPONSE_POLICY_NAME
: ๋ง๋ค๋ ค๋ ์๋ต ์ ์ฑ ์ ์ด๋ฆ์ด๋ ID(์:myresponsepolicy
)NETWORK
: ์๋ต ์ ์ฑ ๊ณผ ์ฐ๊ฒฐํ ์ผํ๋ก ๊ตฌ๋ถ๋ ๋คํธ์ํฌ ์ด๋ฆ ๋ชฉ๋ก(์:network1,network2
)DESCRIPTION
: ์๋ต ์ ์ฑ ์ค๋ช (์:My new response policy
)
์ ์ฑ ์ ์ฐํ ๊ท์น์ ์ถ๊ฐํ๋ ค๋ฉด
gcloud dns response-policies rules create
๋ช ๋ น์ด๋ฅผ ์คํํ๊ณ--behavior
ํ๋๊ทธ๋ฅผbypassResponsePolicy
๋ก ์ค์ ํฉ๋๋ค.gcloud dns response-policies rules create RESPONSE_POLICY_RULE_NAME \ --response-policy=RESPONSE_POLICY_NAME \ --dns-name=DNS_NAME \ --behavior=bypassResponsePolicy
๋ค์์ ๋ฐ๊ฟ๋๋ค.
RESPONSE_POLICY_RULE_NAME
: ๋ง๋ค๋ ค๋ ์๋ต ์ ์ฑ ๊ท์น์ ์ด๋ฆ(์:myresponsepolicyrule
)RESPONSE_POLICY_NAME
: ์๋ต ์ ์ฑ ์ด๋ฆ(์:myresponsepolicy
)DNS_NAME
: DNS ๋๋ ๋๋ฉ์ธ ์ด๋ฆ(์:www.googleapis.com
)
API
์๋ต ์ ์ฑ ์ ๋ง๋ญ๋๋ค.
{ kind: "dns#responsePolicy", response_policy_name: RESPONSE_POLICY_NAME, description: RESPONSE_POLICY_DESCRIPTION, networks: [ { network_url: URL_TO_NETWORK; } ] }
๋ค์์ ๋ฐ๊ฟ๋๋ค.
RESPONSE_POLICY_NAME
: ์๋ต ์ ์ฑ ์ด๋ฆ(์:my-response-policy
)RESPONSE_POLICY_DESCRIPTION
: ์๋ต ์ ์ฑ ์ค๋ช (์:my response policy
)URL_TO_NETWORK
: ์๋ต ์ ์ฑ ์ ๋ง๋๋ URL
์ ์ฑ ์ ๊ท์น์ ์ถ๊ฐํฉ๋๋ค.
{ kind: "dns#responsePolicyRules", rule_name: RULE_NAME, dns_name: DNS_NAME, local_data: [ { name: "*.googleapis.com.", type: "A", ttl: 300, rrdata: ["restricted.googleapis.com."] } ] } { kind: "dns#responsePolicyRules", rule_name: "www-passthru", dns_name: "www.googleapis.com.", behavior: BYPASS_RESPONSE_POLICY }
๋ค์์ ๋ฐ๊ฟ๋๋ค.
RULE_NAME
: ๋ง๋ค ๊ท์น์ ์ด๋ฆ(์:googleapis
)DNS_NAME
: ๊ท์น์ ๋ง๋ค ์์ผ๋ ์นด๋ DNS ์ด๋ฆ(์:*.googleapis.com.
(ํํ ์ ์ฐธ์กฐ))
๋ค์ ๋จ๊ณ
- ๊ด๋ฆฌํ ์์ญ์ ์ฌ์ฉํ๋ ค๋ฉด ์์ญ ๋ง๋ค๊ธฐ, ์์ , ์ญ์ ์ฐธ์กฐํ๊ธฐ
- Cloud DNS๋ฅผ ์ฌ์ฉํ ๋ ๋ฐ์ํ ์ ์๋ ์ผ๋ฐ์ ์ธ ๋ฌธ์ ์ ๋ํ ํด๊ฒฐ์ฑ ์ ์ฐพ์ผ๋ ค๋ฉด ๋ฌธ์ ํด๊ฒฐ ์ฐธ์กฐํ๊ธฐ
- Cloud DNS ๊ฐ์๋ Cloud DNS ๊ฐ์ ์ฐธ์กฐํ๊ธฐ