域名系统 (DNS) 会将网站的用户可读域名(例如 google.com)转换为机器可读 IP 地址(例如 172.217.3.206)。为了帮助您的网域防范缓存中毒攻击和 DNS 欺骗等威胁,您可以设置 DNS 安全扩展 (DNSSEC)。
为您的网域启用 DNSSEC
重要提示:
- 部分顶级域名 (TLD) 接受 DNS 公钥 (DNSKEY) 记录,但不接受委派签名者 (DS) 记录。
- 如果您的域名最初是通过 Google Domains 购买的,那么系统可能已经为您设置了 DNSSEC。
- 如果您的网域有别名记录,则您无法启用 DNSSEC。详细了解别名记录。
如要为您的网域设置 DNSSEC,您必须将特定资源记录添加到您的 DNS 或签名区域,然后为您的网域发布这些记录。如果您的 DNSSEC 是 Google Domains 自动为您设置的,那么我们会替您完成这两个步骤。对 DNSSEC 的设置最多可能需要 24 小时才能在整个互联网中更新,之后 DNSSEC 才会生效。
- 登录 Google Domains。
- 选择您的域名。
- 依次选择左上角的菜单图标 DNS。
- 选择默认域名服务器或自定义域名服务器。
- 滚动到“DNSSEC”卡片或方框。
- 对于默认域名服务器:点击启用。如果 DNSSEC 已开启,则系统会显示“已启用 DNSSEC”。
- 对于自定义域名服务器:点击管理 DS 记录,然后输入您的 DNS 提供商提供的信息。
- 在自定义域名服务器的 DNSSEC 或 DNSKEY 部分,输入您的第三方 DNS 提供商提供的值。
- 如需同时添加多个记录,请点击创建新记录。
- 点击保存。
提示:
- 如果您不想等待系统发布 DNSKEY 记录,您可以在“DNSSEC”下展开 DNSSEC 卡片,然后点击立即发布记录。
- 启用 DNSSEC 后,Google Domains 会自动为您的 DNS 区域签名,并在 2 小时内发布您的委派签名者 (DS) 记录。
如果您使用自定义域名服务器,则必须由您的第三方 DNS 提供商协助您来为您网域的 DNS 区域签名。对于每个 DNSKEY,请从 DNS 提供商处获取以下值:
- 密钥标记:用于指代现有 DNSKEY 记录的数值。
- 算法:用于在 DNSKEY 记录中创建安全密钥的加密算法。此密钥通常与 RSA/SHA1 等哈希函数搭配使用。
- 摘要类型:用于为 DNSKEY 记录创建摘要的算法。也称为摘要算法、摘要哈希或摘要哈希函数。
- 摘要:DNSKEY 记录的哈希值,用于唯一地标识该记录,而不会暴露相应密钥的值。根据摘要类型,摘要长度可以是以下各项之一:
- SHA1:40 位十六进制数字
- SHA256:64 位十六进制数字
- SHA384:96 位十六进制数字
如果您使用的是自定义域名服务器,请与您的第三方 DNS 提供商联系,以便登录您网域的 DNS 区域。对于每个 DNSKEY,请从 DNS 提供商处获取以下值:
- 标志:这是让 DNS 和解析器了解如何解读 DNSKEY 记录的信息。默认情况下,此值设为 256 或 257。
- 协议:表示所用 DNSSEC 的版本。此值始终设为 3。
- 算法:表示用于公钥/私钥对的加密算法的类型。
- 公钥:DNS 解析器用于验证 DNS 记录未被篡改的密钥。
为您的网域停用 DNSSEC
- 登录 Google Domains。
- 选择您的域名。
- 依次选择“菜单”图标 DNS。
- 滚动到“DNSSEC”卡片或方框。
- 对于默认域名服务器:选择停用。
- 对于自定义域名服务器:点击每条记录旁边的“删除”图标 。
- 选择保存。
提示:
- 对于自定义域名服务器,如要从区域中移除与 DNSSEC 相关的资源记录,您可以与您的 DNS 提供商联系来协助您完成此操作。
- 停用 DNSSEC 后,Google Domains 会立即取消发布您的网域的 DS 记录。上述更改在整个互联网中生效后,您的域名将不再受到 DNSSEC 保护。此过程可能长达 48 小时。为了成功停用 DNSSEC,Google Domains 可能会对您的 DNS 区域取消签名。
使用动态 DNS
重要提示:动态 DNS 可以接受 IPv4 和 IPv6 地址,但不可同时使用。
使用动态 DNS,您可以将域名或子域名定向到特定网关后具有动态分配 IP 地址的资源。如要使用动态 DNS,您必须使用 Google Domains 的默认域名服务器。
如果您通过 Google Domains 设置动态 DNS,则可以:
- 为您的域名或子域名创建 A 或 AAAA 记录,以便让 Google 域名服务器接收动态 IP。
- 生成用户名和密码,供主机或服务器用来将新的 IP 地址传输给 Google 域名服务器。
设置动态 DNS 后,您必须在主机、服务器或网关上设置可执行以下操作的客户端程序:
- 检测 IP 地址变更
- 使用生成的用户名和密码
- 将新地址传输给 Google 域名服务器
设置动态 DNS
- 在计算机上登录 Google Domains。
- 选择您的域名。
- 依次点击“菜单”图标 DNS。
- 选择 Google Domains 默认域名服务器(正在使用)。
- 如果“自定义域名服务器(正在使用)”处于选中状态,则表示您已经有自定义域名服务器,因此无法使用 Google Domains 的动态 DNS 服务。
- 点击显示高级设置。
- 依次点击管理动态 DNS 新建记录。
- 要分配动态 IP,请输入子域名或根域名。
- 点击保存。
以下是一些可用来管理动态 DNS 的其他选项:
- 查看记录值:点击记录旁边的三角形。
- 查看为记录创建的用户名和密码:点击查看凭据。
- 配置网关或客户端软件,以与 Google 域名服务器通信:请使用为相应记录创建的用户名和密码。
- 如要删除记录,请执行以下操作:
- 前往“资源记录”。
- 点击“动态 DNS”旁边的三角形。
- 选择删除。
在您的网关、主机或服务器上设置客户端程序
目前市面上有多款常见的动态 DNS 客户端,例如 DDclient 和 INADYN。大多数路由器都可以检测 IP 变更并通过内置软件将其传输给域名服务器。
通过以下设置来配置动态 DNS 客户端:
- 提供商、DNS 或服务:您的 DNS 提供商的名称
- 用户名或凭据:动态 DNS 记录中生成的用户名
- 密码或凭据:动态 DNS 记录中生成的密码
创建记录并配置客户端软件后,请测试该记录。在浏览器或适当的客户端中输入子域名或域名,并确保它们可连接至正确的资源。
提示:Google Domains 使用 dyndns2 协议。
示例
DDclient 现已支持 Google Domains。
支持 Google Domains 的 DDclient |
ddclient.conf 条目:
|
常见的客户端配置示例:
DDclient (不支持 Google Domains) |
INADYN |
ddclient.conf 条目示例:
|
将以下内容添加到 inadyn.conf 中
|
使用 API 更新动态 DNS 记录
domains.google.com/nic/update
https://username:password@domains.google.com/nic/update?hostname=subdomain.yourdomain.com&myip=1.2.3.4
设置用户代理
重要提示:您还必须在请求中设置用户代理。
使用上述网址 (domains.google.com/nic/update
) 进行测试时,网络浏览器通常会为您添加用户代理。发送至我们服务器的最终 HTTP 查询应如下所示:
HTTP 查询示例:
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
请求参数:
参数 | 必填或可选 | 说明 |
username:password |
必填 | 生成的用户名和密码,与要更新的主机关联。 |
hostname |
必填 | 要更新的主机名。 |
myip |
|
为主机设置的 IP 地址。如果未提供,我们会使用发送请求的代理的 IP。
重要提示:如果您的代理使用 IPv6 地址,则必须提供 |
offline |
可选 | 将当前主机设置为离线状态。如果在离线主机上执行更新请求,则该主机将不再是离线状态。 允许的值为:
|
处理完请求后,系统会返回以下某个响应。
重要提示:请确保您能够正确解读响应,因为我们的系统可能会屏蔽您的客户端。
响应 | 状态 | 说明 |
good {用户的 IP 地址} |
成功 | 已更新成功。在 IP 地址更改完成之前,请勿尝试再次更新。 |
nochg {用户的 IP 地址} |
成功 | 已为此主机设置了所提供的 IP 地址。在 IP 地址更改完成之前,请勿尝试再次更新。 |
nohost |
错误 | 主机名不存在或未启用动态 DNS。 |
badauth |
错误 | 用户名/密码组合对指定的主机无效。 |
notfqdn |
错误 | 提供的主机名不是有效的完全限定域名。 |
badagent |
错误 | 您的动态 DNS 客户端发送错误请求。请确保请求中设置了用户代理。 |
abuse |
错误 | 由于未能正确解读之前的响应,主机名的动态 DNS 访问权限已被阻止。 |
911 |
错误 | 系统端出现问题。请等待 5 分钟,然后重试。 |
冲突 A |
错误 | 自定义 A 或 AAAA 资源记录与更新冲突。删除 DNS 设置页面中指示的资源记录,然后重新尝试更新。 |