- Create an A or AAAA record for your domain or subdomain that lets the Google name servers know to expect a dynamic IP
- Generate a username and password your host or server uses to communicate the new IP address to the Google name servers
- Detects IP address changes
- Uses the generated username and password
- Communicates the new address to the Google name servers
Important: Dynamic DNS works with IPv4 and IPv6 addresses, but not at the same time.
Set up Dynamic DNS
- On your computer, sign in to Google Domains.
- Select the name of your domain.
- At the top left, click Menu
DNS. “Google Domains (Active)” should be selected.
- Tip: If “Custom (Active)” is selected, you already have custom name servers and can't use Google Domains’ Dynamic DNS service.
- Click Show advanced settings.
- Click Manage dynamic DNS
Create new record.
- To assign a Dynamic IP, enter the name of the subdomain or root domain.
- Click Save.
Other options to manage Dynamic DNS:
- To view the record values: Click the triangle next to the record.
- To view the username and password created for this record: Click View Credentials.
- To configure your gateway or client software to contact the Google name servers: Use the username and password created for the record.
- To delete the record: Scroll to “Resource records,” click the triangle next to “Dynamic DNS,” then Delete.
- Provider or DNS or Service: The name of your DNS Provider.
- Username or credential: The generated username in the Dynamic DNS record.
- Password or credential: The generated password in the Dynamic DNS record.
After you create the record and configure your client software, test the record. Enter the subdomain and domain into a web browser, or appropriate client, and make sure they connect to the correct resource.
Examples
DDclient now has support for Google Domains.
DDclient with Google Domains Support |
ddclient.conf entries:
|
General client configuration examples:
DDclient without Google Domains support |
INADYN |
Sample ddclient.conf entries:
|
Add the following to your inadyn.conf
|
https://domains.google.com/nic/update
https://username:password@domains.google.com/nic/update?hostname=subdomain.yourdomain.com&myip=1.2.3.4
Important: You must also set a user agent in your request. During a test with the URL directly above, web browsers generally add a user agent for you. The final HTTP query sent to our servers should be similar to this:
Example HTTP query:
POST /nic/update?hostname=subdomain.yourdomain.com&myip=1.2.3.4 HTTP/1.1
Host: domains.google.com
Authorization: Basic base64-encoded-auth-string User-Agent: Chrome/41.0 your_email@yourdomain.com
Request Parameters:
Parameter | Required or Optional | Description |
username:password |
Required | The generated username and password associated with the host that is to be updated. |
hostname |
Required | The hostname to be updated. |
myip |
Optional for IPv4. Required if you have an IPv6 address. |
The IP address to which the host is set. If not supplied, we use the IP of the agent that sent the request.
Important: If your agent uses an IPv6 address, |
offline |
Optional | Sets the current host to offline status. If an update request is performed on an offline host, the host is removed from the offline state. Allowed values are:
|
After the request is processed, one of the following responses is returned.
Response | Status | Description |
good {user’s IP address} |
Success | The update was successful. You should not attempt another update until your IP address changes. |
nochg {user’s IP address} |
Success | The supplied IP address is already set for this host. You should not attempt another update until your IP address changes. |
nohost |
Error | The hostname doesn't exist, or doesn't have Dynamic DNS enabled. |
badauth |
Error | The username/password combination isn't valid for the specified host. |
notfqdn |
Error | The supplied hostname isn't a valid fully-qualified domain name. |
badagent |
Error | Your Dynamic DNS client makes bad requests. Ensure the user agent is set in the request. |
abuse |
Error | Dynamic DNS access for the hostname has been blocked due to failure to interpret previous responses correctly. |
911 |
Error | An error happened on our end. Wait 5 minutes and retry. |
conflict A |
Error | A custom A or AAAA resource record conflicts with the update. Delete the indicated resource record within the DNS settings page and try the update again. |