Globally unique domain zone¶
Make sure you understand the basic concepts of NNS.
Globally Unique Domains Zone (GUDZ) is an extension of NNS that ensures unique names across multiple domain zones. When this option is enabled, all newly created domains will automatically receive a corresponding alias in the designated global zone. Deleting a domain will also remove its alias from the global zone.
It's important to note that this feature is not retroactive: domains created before this option is enabled will not receive a global alias. Likewise, if the option is later disabled, domains that already have a GUDZ alias will retain their records. To fully disable GUDZ, all domains must be recreated with the option turned off.
To enable GUDZ, add a cnametgt=$(global domain) TXT record that specifies the global zone.
Example:
Domains:
- poland
- sweden
- animals.org
It is necessary to associate the domain zones .poland and .sweden into the global zone .animals.

Create domains:
frostfs-adm morph nns register --name="poland" --email="email@email.email"
frostfs-adm morph nns register --name="sweden" --email="email@email.email"
frostfs-adm morph nns register --name="org" --email="email@email.email"
frostfs-adm morph nns register --name="animals.org" --email="email@email.email"
Add the cnametgt records:
frostfs-adm morph nns add-record --name="poland" --data="cnametgt=animals.org" --type="txt"
frostfs-adm morph nns add-record --name="sweden" --data="cnametgt=animals.org" --type="txt"
Create a domain with mapping to the global zone:
frostfs-adm morph nns register --name="bober.poland" --email="email@email.email"
Add any TXT record
frostfs-adm morph nns add-record --name="bober.poland" --data="CID" --type="txt"
Verify that the created domain has alias in the global zone
frostfs-adm morph nns tokens -v
balance.frostfs
animals.org
group.frostfs
container
org
container.frostfs
proxy.frostfs
policy.frostfs
alphabet0.frostfs
sweden
frostfsid.frostfs
bober.animals.org (CNAME: bober.poland)
netmap.frostfs
frostfs
poland
bober.poland
Create of a conflicting domain
frostfs-adm morph nns register --name="bober.sweden" --email="email@email.email"
unable to register domain: script failed (FAULT state) due to an error: at instruction 1263 (THROW): unhandled exception: "global domain is already taken: bober.animals.org. Domain: bober.poland
Disable GUDZ
Delete cnametgt records
frostfs-adm morph nns delete-records --type=txt --name=poland
hamster.poland and hamster.sweden
frostfs-adm morph nns register --name="hamster.poland" --email="email@email.email"
frostfs-adm morph nns register --name="hamster.sweden" --email="email@email.email"
hamster.poland and hamster.sweden does not have alias
frostfs-adm morph nns tokens -v
balance.frostfs
animals.org
group.frostfs
container
org
container.frostfs
proxy.frostfs
policy.frostfs
alphabet0.frostfs
sweden
frostfsid.frostfs
bober.animals.org (CNAME: bober.poland)
netmap.frostfs
frostfs
poland
bober.poland
hamster.poland
bober.poland
frostfs-adm morph nns delete-records --name="bober.poland" --type="txt"
frostfs-adm morph nns tokens -v
balance.frostfs
animals.org
group.frostfs
container
org
container.frostfs
proxy.frostfs
policy.frostfs
alphabet0.frostfs
sweden
frostfsid.frostfs
netmap.frostfs
frostfs
poland
bober.poland
hamster.poland
bober.poland
frostfs-adm morph nns delete --name="bober.poland"
frostfs-adm morph nns tokens -v
balance.frostfs
animals.org
group.frostfs
container
org
container.frostfs
proxy.frostfs
policy.frostfs
alphabet0.frostfs
sweden
frostfsid.frostfs
netmap.frostfs
frostfs
poland
hamster.poland