使用 Cloud DNS 设置网域

本教程为您演示如何注册域名,设置示例网络服务器以及使用 Cloud DNS 将网域网址指向服务器的流程。

目标

本教程演示以下几个步骤:

  1. 使用 Google Domains 或 Cloud Domains 注册域名
  2. 创建虚拟机 (VM) 实例
  3. 运行基本 Apache 网络服务器
  4. 使用 Cloud DNS 设置网域
  5. 更新域名服务器
  6. 验证设置

费用

注册域名需要付费。如需了解 Google Domains 价格,请参阅价格和受支持的域名后缀。如需了解 Cloud Domains 价格,请参阅 Cloud Domains 价格

准备工作

  1. 登录您的 Google Cloud 帐号。如果您是 Google Cloud 新手,请创建一个帐号来评估我们的产品在实际场景中的表现。新客户还可获享 $300 赠金,用于运行、测试和部署工作负载。
  2. 在 Google Cloud Console 的项目选择器页面上,选择或创建一个 Google Cloud 项目。

    转到“项目选择器”

  3. 确保您的 Cloud 项目已启用结算功能。 了解如何确认您的项目是否已启用结算功能

  4. 在 Google Cloud Console 的项目选择器页面上,选择或创建一个 Google Cloud 项目。

    转到“项目选择器”

  5. 确保您的 Cloud 项目已启用结算功能。 了解如何确认您的项目是否已启用结算功能

  6. 启用 Compute Engine API。

    启用 API

第 1 步:注册域名

如需使用 Google Domains 注册域名,请按以下步骤操作:

  1. 如需注册网域,请转到 Google Domains。 如果您已有网域,则可以跳过此步骤。
  2. 检查可用的域名,并为您的网域选择一个可用的名称。
  3. 如需购买域名,请点击添加到购物车
  4. 选择隐私权和自动续订设置,然后点击保存并继续
  5. 完成注册。
  6. 如需查看您拥有的域名列表,请点击左侧导航菜单中的我的网域

如需了解详情,请参阅 Google Domains 使用入门

如需使用 Cloud Domains 注册网域,请参阅注册网域

第 2 步:创建虚拟机实例

如需在 Compute Engine 中创建 Linux 虚拟机 (VM) 实例,请按照以下说明操作:

  1. 在 Cloud Console 中,转到创建实例页面。

    转到“创建实例”

  2. 启动磁盘部分中,点击更改开始配置您的启动磁盘。
  3. Public images 标签页上,选择 Debian version 9
  4. 点击选择
  5. 防火墙部分中,选择允许 HTTP 流量
  6. 如需创建虚拟机,请点击创建

实例启动会需要一些时间,请稍等片刻。准备就绪后,实例会列在虚拟机实例页面上,并带有绿色状态图标。

连接到您的实例

  1. 在 Cloud Console 中,转到虚拟机实例页面。

    转到“虚拟机实例”

  2. 在虚拟机实例列表中,点击要连接的实例所在行中的 SSH

    实例名称旁边的 SSH 按钮。

您现在具有一个用来与您的 Linux 实例互动的终端窗口。

如需了解详情,请参阅快速入门:使用 Linux 虚拟机

第 3 步:运行基本 Apache 网络服务器

安装 Apache

  1. 在 SSH 窗口中,使用 Debian 软件包管理器安装 apache2 软件包。

    sudo apt-get update && sudo apt-get install apache2 -y
    

    安装 Apache 后,操作系统会自动启动 Apache 服务器。

  2. 使用以下命令覆盖 Apache 网络服务器的默认网页:

    echo '<!doctype html><html><body><h1>Hello World!</h1></body></html>'\
    | sudo tee /var/www/html/index.html
    

测试服务器

测试您的实例是否正在处理其外部 IP 地址上的流量。

  1. 在 Cloud Console 中,转到虚拟机实例页面。

    转到“虚拟机实例”

  2. 外部 IP 列中,复制您的实例的外部 IP 地址。
  3. 在浏览器中,导航到 http://[EXTERNAL_IP]。请勿使用 https 进行连接,因为服务器会返回 Connection Refused 错误。

现在,您应该会看到 Hello World! 页面。

如需了解详情,请参阅运行基本 Apache 网络服务器

第 4 步:使用 Cloud DNS 设置网域

如果您要从现有提供商迁移,则可以将现有可用区导入 Cloud DNS。如需查看相关说明,请参阅从现有提供商导出 DNS 配置。否则,请按照以下步骤创建新的公开可用区。

  1. 在 Cloud Console 中,转到创建 DNS 可用区页面。

    转到“创建 DNS 可用区”

  2. 对于可用区类型,请选择公开

  3. 对于可用区名称,输入 my-new-zone

  4. 对于 DNS 名称,使用一个您注册的域名输入该地区的 DNS 名称后缀(例如 example.com)。

  5. DNSSEC 部分,确保已选择 Off 设置。

  6. 点击创建以创建填充了 NS 和 SOA 记录的可用区。

  7. 如需将您注册的域名指向托管服务器的 IP 地址,您必须将 A 记录添加到您的可用区。

    1. 可用区详情页面上,点击添加记录集
    2. 资源记录类型菜单中选择 A
    3. IPv4 地址部分,输入您的实例的外部 IP 地址。
    4. 点击创建为您的可用区创建 A 记录。
  8. (可选)添加 CNAME 记录,以将您的前缀添加到域名,例如 www.

    1. 点击添加记录集
    2. DNS 名称字段中,为域名添加前缀 www
    3. 资源记录类型部分,选择 CNAME
    4. 标准名称部分,依次输入域名和一个英文句点(例如 example.com.)。
    5. 点击创建
  9. 可用区详细信息页面上,记下 NS 记录。您需要这些记录才能继续执行第 5 步。

第 5 步:更新域名服务器

如需在 Google Domains 中更新域名服务器,请按以下步骤操作:

  1. 如需为您的网域更新域名服务器,请转到 Google Domains
  2. 点击您在第 1 步中设置的网域。 或者,您也可以点击该网域对应的管理链接。
  3. 在左侧导航菜单中,点击 DNS
  4. 域名服务器部分,选择使用自定义域名服务器
  5. 域名服务器字段中,输入您从可用区详情页面(例如 ns1.googledomains.com)复制的 NS 记录。
  6. 如需添加域名服务器,请点击 添加
  7. 更新 Google Domains DNS 页面上的所有四个域名服务器。
  8. 点击保存

第 6 步:验证设置

如需验证配置是否有效,请在域名服务器更新后,导航至您的域名(例如 example.com)。该域名应解析为您的 IP 地址,并指向显示您在第 3 步中创建的 Hello World! 页面的 Compute Engine 虚拟机。

如需验证您的设置是否正确,您还可以在终端窗口上运行 dig +trace example.com 命令。将 example.com 替换为您注册的域名。

dig +trace example.com

输出的结尾应包含以下内容,其中 IP_ADDRESS 是您的网络服务器的 IP 地址。

example.com.    300 IN  A   IP_ADDRESS
;; Received 62 bytes from 216.239.34.109#53(ns-cloud-d2.googledomains.com) in 62 ms

为了验证更改是否成功,命令输出结果中的以下行显示顶级域名服务器指向您在 Google Domains 中输入的自定义域名服务器,而不是 Google Domains 提供的原始域名服务器:

example.com IN NS <your Cloud DNS name servers>

等待 DNS 传播完成后,您还可以运行 nslookup 命令来验证设置:

nslookup example.com

输出应包含以下内容。IP_ADDRESS 是您的网络服务器的 IP 地址。

Server:     127.0.0.1
Address:    127.0.0.1#53

Non-authoritative answer:
Name:   example.com
Address: IP_ADDRESS

清除数据

  1. 在 Cloud Console 中,转到 Cloud DNS 可用区页面。

    转到 Cloud DNS 可用区

  2. 点击可用区名称(例如 my-new-zone)以进入可用区详细信息页面。

  3. 选择您创建的 A 和 CNAME 记录。

  4. 点击删除记录集

  5. 如需删除可用区,请针对可用区名称 my-new-zone 点击删除可用区

  6. 转到虚拟机实例页面。

    转到“虚拟机实例”

  7. 选择要删除的实例。

  8. 在实例所在行的 菜单上,点击删除

后续步骤