tinydyndns-data(8)
π tinydyndns-data(8) π
okay bestie, welcome to the group chat. this is tinydyndns-data from the System Manager's Manual β section 8, system admin territory, the real ones. she's a little tool with one job and she does it flawlessly β¨
πΈ NAME πΈ
tinydyndns-data β add or remove TYPE A record to or from data.cdb π
β¨ SYNOPSIS β¨
tinydyndns-data add|remove fqdns
π¦ DESCRIPTION π¦
so. fqdns is one or more argument, and each one is a fully qualified domain name (fqdn). plural vibes, singular purpose π
tinydyndns-data adds a TYPE A record to β or removes it from β data.cdb in the current directory. and here's the thing that makes her different: unlike tinydns-data(8), she does not know about the source file data. she edits the binary database data.cdb directly. no middleman, no source file, just main character energy going straight for the real thing π€β¨
here's how the whole ritual goes:
- tinydyndns-data reads
data.cdband copies its data todata.tmpπ - while reading the records, she checks for each
fqdninfqdnswhether this hostname has a TYPE A record indata.cdb - if she's called with the option
removeβ she drops the record π - if she's called with the option
addβ she refuses to add the record (no duplicates bestie, we don't do that here)
when she's called with the option add, tinydyndns-data then adds all new fqdns to data.tmp. the data of the newly created records can optionally be controlled through the environment β see below, i got you π«Ά
finally β and this is the iconic finale β she renames data.tmp to data.cdb. atomic-ish glow-up, periodt. π
π OPTIONS π
addβ for eachfqdninfqdns, add a TYPE A record forfqdntodata.cdbwith the default IP address (127.14.14.14). the classic starter pack πremoveβ for eachfqdninfqdns, remove all TYPE A records forfqdnfromdata.cdb. every single one, no survivors, we're thorough π§Ήβ¨
π ENVIRONMENT π
IPβ the environment variableIPoverrides the default IP address (`127.14.14.14`) for newly created records.$IPmust be a valid IP address. no fake addresses, she will notice π¨TTLβ time-to-live. the environment variableTTLoverrides the default time-to-live in seconds (0ifTTDis set, otherwise5).$TTLmust be an integer. (yes, the manpage says "TTD" here β that's the name of the variable below, and i'm keeping it exactly as written, iykyk π«£)TTDβ time-to-die π$TTDmust be an integer, specifying a number of seconds. ifTTDis set, the timestamp of newly created records is set to the current time plus$TTDseconds, andTTLis set to zero by default, so thattinydns(8)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. fr fr, do not skip this part bestie π
LOCβ location.$LOCmust be two characters long. ifLOCis set, it specifies the client location for newly created records π
π EXIT CODES π
- tinydyndns-data exits
111if anything goes wrong β and she leavesdata.cdbunchanged. no half-finished chaos, she's respectful like that π - tinydyndns-data exits
0if allfqdnswere processed and the newdata.cdbwas written. the slay outcome β¨ - for each
fqdninfqdnsthat tinydyndns-data was not able to remove or add (e.g., not there, or already there), she increases the exit code by one and exits non-zero β maximum is100. so like, if 3 of them flopped, you get 3. she's counting, she always counts π’
π FILES π
./data.cdb
./data.tmp
the whole personality lives in these two files, honestly π
πΈ SEE ALSO πΈ
π AUTHOR π
Gerrit Pape <pape@smarden.org> β the icon who wrote all this down so we could vibe with it π«Ά
okay that's the whole page bestie!! tinydyndns-data(8), from the System Manager's Manual, written by Gerrit Pape, and sourced straight from the tinydyndns project at smarden.org. go forth and edit your data.cdb directly, you absolute legend π
β¨π
π¦ where this page comes from
- debian bookworm: tinydyndns 0.4.2.debian1-2 Β· LicenseRef-public-domain
- ubuntu jammy: tinydyndns 0.4.2.debian1-2 Β· LicenseRef-public-domain
- ubuntu noble: tinydyndns 0.4.2.debian1-2 Β· LicenseRef-public-domain
- ubuntu questing: tinydyndns 0.4.2.debian1-4
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms