- Resource: Policy
- Network
- AlternativeNameServerConfig
- TargetNameServer
- ForwardingPath
- Dns64Config
- Scope
- Methods
Resource: Policy
A policy is a collection of DNS rules applied to one or more Virtual Private Cloud resources.
| JSON representation | 
|---|
| { "id" : string , "name" : string , "enableInboundForwarding" : boolean , "description" : string , "networks" : [ { object ( | 
| Fields | |
|---|---|
| id |   Unique identifier for the resource; defined by the server (output only). | 
| name |   User-assigned name for this policy. | 
| enableInboundForwarding |   Allows networks bound to this policy to receive DNS queries sent by VMs or applications over VPN connections. When enabled, a virtual IP address is allocated from each of the subnetworks that are bound to this policy. | 
| description |   A mutable string of at most 1024 characters associated with this resource for the user's convenience. Has no effect on the policy's function. | 
| networks[] |   policies.list of network names specifying networks to which this policy is applied. | 
| alternativeNameServerConfig |   Sets an alternative name server for the associated networks. When specified, all DNS queries are forwarded to a name server that you choose. Names such as .internal are not available when an alternative name server is specified. | 
| enableLogging |   Controls whether logging is enabled for the networks bound to this policy. Defaults to no logging if not set. | 
| dns64Config |   Configurations related to DNS64 for this policy. | 
| kind |   | 
Network
| JSON representation | 
|---|
| { "networkUrl" : string , "kind" : string } | 
| Fields | |
|---|---|
| networkUrl |   The fully qualified URL of the VPC network to bind to. This should be formatted like https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network } | 
| kind |   | 
AlternativeNameServerConfig
| JSON representation | 
|---|
|  { 
 "targetNameServers" 
 : 
 [ 
 { 
 object (  | 
| Fields | |
|---|---|
| targetNameServers[] |   Sets an alternative name server for the associated networks. When specified, all DNS queries are forwarded to a name server that you choose. Names such as .internal are not available when an alternative name server is specified. | 
| kind |   | 
TargetNameServer
| JSON representation | 
|---|
|  { 
 "ipv4Address" 
 : 
 string 
 , 
 "forwardingPath" 
 : 
 enum (  | 
| Fields | |
|---|---|
| ipv4Address |   IPv4 address to forward queries to. | 
| forwardingPath |   Forwarding path for this TargetNameServer. If unset or set to DEFAULT, Cloud DNS makes forwarding decisions based on address ranges; that is, RFC1918 addresses go to the VPC network, non-RFC1918 addresses go to the internet. When set to PRIVATE, Cloud DNS always sends queries through the VPC network for this target. | 
| ipv6Address |   IPv6 address to forward to. Does not accept both fields (ipv4 & ipv6) being populated. Public preview as of November 2022. | 
| kind |   | 
ForwardingPath
| Enums | |
|---|---|
| default | Cloud DNS makes forwarding decision based on IP address ranges; that is, RFC1918 addresses forward to the target through the VPC and non-RFC1918 addresses forward to the target through the internet | 
| private | Cloud DNS always forwards to this target through the VPC. | 
Dns64Config
DNS64 policies
| JSON representation | 
|---|
|  { 
 "scope" 
 : 
 { 
 object (  | 
| Fields | |
|---|---|
| scope |   The scope to which DNS64 config will be applied to. | 
| kind |   | 
Scope
| JSON representation | 
|---|
| { "allQueries" : boolean , "kind" : string } | 
| Fields | |
|---|---|
| allQueries |   Controls whether DNS64 is enabled globally for all networks bound to the policy. | 
| kind |   | 
| Methods | |
|---|---|
|   | Creates a new policy. | 
|   | Deletes a previously created policy. | 
|   | Fetches the representation of an existing policy. | 
|   | Enumerates all policies associated with a project. | 
|   | Applies a partial update to an existing policy. | 
|   | Updates an existing policy. | 

