本页面介绍如何查看域名系统安全扩展 (DNSSEC) 密钥。
如需 DNSSEC 的概念性概览,请参阅 DNSSEC 概览。
DNSKEY 是包含公开签名密钥的 DNS 记录类型。 如果要将 DNSSEC 签名的可用区迁移到另一个 DNS 运营商,则可能需要查看 DNSKEY 记录。根据 RFC 6781 中的迁移流程,您需要将 Cloud DNS 区域中的地区签名密钥 (ZSK) 和密钥签名密钥 (KSK) 导入其他运营商的可用区。
为某一地区启用 DNSSEC 后,Cloud DNS 会自动管理 DNSSEC 密钥的创建和轮替(DNSKEY 记录)以及包含资源记录数字签名 (RRSIG) 记录的地区数据的签名。Cloud DNS 不支持 KSK 的自动轮替,因为 KSK 轮替目前需要与网域注册商进行手动交互。但是,Cloud DNS 会执行完全自动的 ZSK 轮替。您可以使用 Google Cloud CLI 或 REST API 查看自动管理的 DNSKEY。
准备工作
如需查看 DNSSEC 密钥,您必须已创建一个代管可用区,并且已为该可用区启用 DNSSEC,以便创建 DNSKEY 记录。
显示当前 DNSKEY
如需显示您的可用区的当前 DNSKEY 记录,请按以下步骤操作:
gcloud
对于以下 gcloud
命令行示例,您可以指定 --project
参数以对特定项目执行操作。
如需以 JSON 格式输出所有 DNSKEY,请使用 gcloud dns dns-keys list
命令:
gcloud dns dns-keys list --zone ZONE_NAME
将 ZONE_NAME
替换为代管可用区的名称。
如需以 JSON 格式显示指定 DNSKEY 的详细信息,请使用 gcloud dns dns-keys describe
命令:
gcloud dns dns-keys describe DNSKEY_ID --zone ZONE_NAME
请替换以下内容:
DNSKEY_ID
:您要查看其详细信息的 DNSKEY 的 IDZONE_NAME
:代管可用区的名称
API
要将所有 DNSKEY 输出到 ResourceRecordSet
集合,请使用 dnsKeys.get
方法和空白请求正文:
GET https://dns.googleapis.com/dns/v1/projects/PROJECT/managedZones/ZONE_NAME/dnsKeys
请替换以下内容:
PROJECT
:DNS 项目的名称或 IDZONE_NAME
:代管可用区的名称
您的输出类似于以下内容:
{ "kind": "dns#dnsKeysListResponse", "header": { "operationId": string }, "dnsKeys": [ dnsKeys Resource ], "nextPageToken": string }
如需以 JSON 格式显示指定 DNSKEY 的详细信息,请使用 dnsKeys DNSKEY_ID.get
方法和空白请求正文:
GET https://dns.googleapis.com/dns/v1/projects/PROJECT/managedZones/ZONE_NAME/dnsKeys/DNSKEY_ID
请替换以下内容:
PROJECT
:DNS 项目的名称或 IDZONE_NAME
:代管可用区的名称DNSKEY_ID
:您要查看其详细信息的 DNSKEY 的 ID
Python
from apiclient import errors from apiclient.discovery import build PROJECT_NAME= 'PROJECT_NAME' ZONE_NAME= 'ZONE_NAME' try: service = build('dns', 'v1') response = service.dnskeys().list(project=PROJECT_NAME, managedZone=ZONE_NAME).execute() except errors.HttpError, error: print 'An error occurred: %s' % error try: response = service.dnskeys().list(project=PROJECT_NAME, managedZone=ZONE_NAME, keyId=KEY_ID).execute() except errors.HttpError, error: print 'An error occurred: %s' % error
请替换以下内容:
PROJECT_NAME
:您的 DNS 项目的名称或 IDZONE_NAME
:代管可用区的名称
后续步骤
- 如需获取有关特定 DNSSEC 配置的信息,请参阅使用高级 DNSSEC。
- 如需监控更改,请参阅监控 DNS 传播。
- 如需了解您在使用 Cloud DNS 时可能会遇到的常见问题的解决方案,请参阅问题排查。
- 如需大致了解 Cloud DNS,请参阅 Cloud DNS 概览。