GSS-TSIG (Generic Security Service Algorithm for Secret Key Transaction) is a security mechanism that enables cryptographic authenticated dynamic DNS updates using Kerberos, the same authentication infrastructure used by Microsoft Active Directory (AD).
DDI Central supports the configuration of GSS-TSIG between Microsoft Active Directory and BIND 9, allowing your DNS infrastructure to accept dynamic updates only from verified, domain-joined machines, without the overhead of distributing or rotating shared keys.
GSS-TSIG addresses this by leveraging Kerberos, which is built into Microsoft Active Directory. Authentication is handled centrally by AD, meaning no secrets are distributed between clients and DNS servers. Instead, trust is established through cryptographic signed tickets issued by AD, a model already trusted by your organization's identity infrastructure.
Key benefits:
When a domain-joined computer needs to update its DNS record, the following authentication flow takes place before any update is accepted by BIND 9:
Linux (BIND Server)
Ensure the following packages are installed on the Linux server:
Windows Active Directory
This is a mandatory step and must be performed on the Linux server, whether it is running on console or agent mode.
Edit /etc/krb5.conf with the following configuration:
[libdefaults]
default_realm = EXAMPLE.COM
dns_lookup_realm = false
dns_lookup_kdc = true
default_tgs_enctypes = aes256-cts-hmac-sha1-96 aes128-cts-hmac-sha1-96
default_tkt_enctypes = aes256-cts-hmac-sha1-96 aes128-cts-hmac-sha1-96
permitted_enctypes = aes256-cts-hmac-sha1-96 aes128-cts-hmac-sha1-96
[realms]
EXAMPLE.COM = {
kdc = dc.example.com
padmin_server = dc.example.com
}
[domain_realm]
.example.com = EXAMPLE.COM
example.com = EXAMPLE.COM
To verify Kerberos authentication is working correctly, test using the kinit command with your keytab file after completing Step 3.
This step is performed on the Windows Active Directory side.
A dedicated AD user account must be created and mapped to the DNS Service Principal Name (SPN). Run the following command on the Windows Domain Controller:
ktpass -princ DNS/bindserver.example.com@EXAMPLE.COM `
-mapuser binduser `
-crypto AES256-SHA1 `
-ptype KRB5_NT_PRINCIPAL `
-pass * `
-out C:\bind.keytab
Understanding the command:
| Parameter | Description |
|---|---|
| DNS/bindserver.example.com@EXAMPLE.COM | The Service Principal Name (SPN) — DNS service on the FQDN of the BIND server, scoped to the Kerberos realm |
| -mapuser binduser | The AD user account mapped to this SPN |
| -crypto AES256-SHA1 | Encryption type — AES256-SHA1 or AES128-SHA1 are both supported |
| -ptype KRB5_NT_PRINCIPAL | Principal type — do not modify this value |
| -out C:\bind.keytab | Output path for the generated keytab file |
Once the command runs successfully, the keytab file will be generated at the specified output path.
This step is performed in the DDI Central UI.

Run the following commands on the Windows Domain Controller to refresh AD and allow the AD server to recognize the Linux DNS server for dynamic DNS updates:
ipconfig /registerdns
net stop netlogon
net start netlogon
This forces the Windows client to re-register its DNS records and restarts the Netlogon service, which signals AD to recognize the Linux BIND server as the authoritative DNS target for dynamic updates.
In the Domains page, domains with a key icon indicate that GSS-TSIG configuration has been implemented for them.
