Cloud/GCP

GCP 의 PSC 사용시 On-Premise DNS 설정방안

달빛궁전- 2025. 10. 10. 14:46
On-premise와 GCP간 VPN, Interconnect를 통해 연결하여 Public 통신이 아닌 Private 통신으로 GCP 자원을 사용합니다.IP로 호출하는 방안도 있겠지만, 도메인으로 사용하는 것이 보통입니다.
근래 Vertex AI Gemini API를 사용하면서, DNS에 대한 문의가 자주 오기도 하여 On-premise DNS에서 사용가능한 방안을 정리하였습니다.

 

 
DNS 설정 방법은 여러가지가 존재합니다.
 
1. *.googleapis.com 에 대해 모두 GCP DNS로 조건부 전달자로 사용
→ 다만 이경우 On-premise에서 사용하는 모든 googleapi 서비스가 Private 통신으로 전달되기에 금융권이나 Public으로 googleapi 서비스를 안하는 환경에서 사용합니다.
2. Endpoint host 파일변조 (테스트용도로 적합)
PC, Server등 Endpoint 에 host 파일에 직접 수정

3. On-premise DNS에서  p.googleapis.com 에 대해서는 GCP Cloud DNS로 조건부 전달자로 사용
PSC를 사용하게 되면, p.googleapis.com DNS name을 사용할 수 있습니다.
docs : https://cloud.google.com/vpc/docs/configure-private-service-connect-apis#configure-p-dns 
아래와 같이 자동으로 구성되게 됩니다.
SERVICE-ENDPOINT.p.googleapis.com
예시로 endpoint명을 prd로 작성하였다면
storage-prd.p.googleapis.com
aiplatform-prd.p.googleapis.com
이런식으로 사용할 수 있습니다.

아래와 같은 환경이 존재한다고 가정하겠습니다. 
On-premise Network : 10.10.10.0/24
GCP Network (VPC-Subnet) : 192.168.50.0/24
PSC IP : 1.1.1.1

PSC생성

Cloud DNS 확인
p.googleapis.com 생성됨

GCP VPC내에서는 자동으로 적용되나, On-premise측에서 p.googleapis.com 질의시에는 DNS 응답을 주는 서버가 필요하게 됩니다.

Cloud DNS 정책 세부정보으로 수신 쿼리 전달 (DNS IP) 설정
DNS 서버에 대해 응답해주는 “192.168.50.3” DNS Server IP가 설정됨

테스트 진행

 

On-premise IP : 10.10.10.100
DNS Server IP를 “192.168.50.3” 으로 설정
compute-end.p.googleapis.com 에 대해 PSC IP 인 “1.1.1.1” 회신완료