管理顶级域名

系统管理员可以使用顶级域名 (TLD) 来限制用户可以创建区域的域名。虽然在域名系统 (DNS) 中,“TLD”一词特指位于根域名直接下方的域名集合,例如 .org,但在 Designate 中,TLD 可以是任何域名。

例如,如果您希望要求用户创建以 .org. 结尾的区域,可以通过创建一个 .org TLD 来实现。

$ openstack tld create --name org
+-------------+--------------------------------------+
| Field       | Value                                |
+-------------+--------------------------------------+
| created_at  | 2021-06-10T05:20:16.000000           |
| description | None                                 |
| id          | 9fd0a12d-511e-4024-bf76-6ec2e3e71edd |
| name        | org                                  |
| updated_at  | None                                 |
+-------------+--------------------------------------+

注意

在使用 openstack tld 命令时,请确保您输入的 FQDN 没有尾随的点 (example.net.)。

如果您现在尝试创建一个不在 .org TLD 下的区域,则会失败。

$ openstack zone create --email admin@test.net test.net.
Invalid TLD

TLD 就像一个允许列表:如果存在多个 TLD,则区域必须存在于其中一个 TLD 中。如果在 Designate 中没有创建任何 TLD,则用户可以创建任何区域。与黑名单功能不同,TLD 没有允许特权用户在允许的 TLD 之外创建区域的策略。

您可以使用 set 命令修改 TLD 的值。您可以使用名称或 ID 来指定要设置的 TLD

$ openstack tld set org --name example.net
+-------------+--------------------------------------+
| Field       | Value                                |
+-------------+--------------------------------------+
| created_at  | 2021-06-10T05:20:16.000000           |
| description |                                      |
| id          | 9fd0a12d-511e-4024-bf76-6ec2e3e71edd |
| name        | example.net                          |
| updated_at  | 2021-06-10T07:09:45.000000           |
+-------------+--------------------------------------+

您可以通过提供 ID 或当前名称来删除 TLD

$ openstack tld delete org

该命令在成功完成时没有输出。