---
name: "tinydyndns-data"
section: "8"
platform: "linux"
package: "tinydyndns"
version: "0.4.2.debian1-2"
release: "Debian 12 (Bookworm)"
platforms: ["linux"]
url: "https://new.carta.tech/tinydyndns-data"
---

# tinydyndns-data(8)

add or remove TYPE A record to or from data.cdb

## NAME

tinydyndns-data - add or remove TYPE A record to or from data.cdb

## SYNOPSIS

**tinydyndns-data** add\|remove *fqdns*

## DESCRIPTION

*fqdns* consists of one or more argument, each specifying a fully qualified domain name (fqdn).

**tinydyndns-data** adds a TYPE A record to or removes it from data.cdb in the current directory. Other than [**tinydns-data**(8)](/tinydns-data/8.md), **tinydyndns-data** does not know about the source file data but changes the binary database data.cdb directly.

**tinydyndns-data** reads data.cdb and copies its data to data.tmp. While reading the records, **tinydyndns-data** checks for each *fqdn* in *fqdns* if this hostname has a TYPE A record in data.cdb, drops the record when called with the option *remove*, or refuses to add the record when called with the option *add*.

When called with the option *add*, **tinydyndns-data** then adds all new *fqdn*s to data.tmp. The data of the newly created records can optionally be controlled through the environment, see below. Finally **tinydyndns-data** renames data.tmp to data.cdb.

## OPTIONS

- add

  For each *fqdn* in *fqdns*, add a TYPE A record for *fqdn* to data.cdb with the default IP address (127.14.14.14).

- remove

  For each *fqdn* in *fqdns*, remove all TYPE A records for *fqdn* from data.cdb.

## ENVIRONMENT

- *IP*

  The environment variable *IP* overrides the default IP address (\`\`127.14.14.14'') for newly created records. *$IP* must be a valid IP address.

- *TTL*

  time-to-live. The environment variable *TTL* overrides the default time-to-live in seconds (0 if *TTD* is set, otherwise 5). *$TTL* must be an integer.

- *TTD*

  time-to-die. *$TTD* must be an integer, specifying a number of seconds. If *TTD* is set, the timestamp of newly created records is set to the current time plus *$TTD* seconds, and *TTL* is set to zero by default, so that [**tinydns**(8)](/tinydns/8.md) interprets the timestamp as time-to-die. Note: you probably want to adjust SOA ttl, or create a wildcard record, to prevent DNS caches from caching nxdomain, when using this feature.

- *LOC*

  location. *$LOC* must be two characters long. If *LOC* is set, it specifies the client location for newly created records.

## EXIT CODES

**tinydyndns-data** exits 111 if anything goes wrong and leaves data.cdb unchanged.

**tinydyndns-data** exits 0 if all *fqdns* were processed and the new data.cdb was written.

For each *fqdn* in *fqdns* that **tinydyndns-data** was not able to remove or add (e.g., not there, or already there), it increases the exit code by one and exits non-zero (maximum is 100).

## FILES

 ./data.cdb\
  ./data.tmp

## SEE ALSO

[tinydyndns-update(8)](/tinydyndns-update/8.md), [tinydyndns-conf(8)](/tinydyndns-conf/8.md)

http://smarden.org/tinydyndns/

## AUTHOR

Gerrit Pape \<pape@smarden.org\>
